全栈软件工程师必读

Sep 06, 2022 by Zhang in  Blog

尽管经济形势不明朗,仍有很多科技公司在招聘,技术人员可以通过成为全栈软件工程师来增加市场竞争力。这些技术人员负责从前端到后端的整个开发过程,该工作还包括数据结构的完成、架构设计和代码审查。

Grammarly的软件工程师Kendal Cockrel可以分解堆栈的各个部分。Cockrel说:“前端通常包括web或移动等客户端用户界面——把它想象成用户可以看到和交互的东西。”后端由用户无法看到的系统部分组成——服务器、应用程序和数据库。

Codecademy的工程经理Reed Laverack表示,全栈工程还包括“建立数据库存储、开发与数据交互的逻辑、构建API层,并最终以有用的方式将数据呈现给终端用户。”

从小型软件开发开始

Laverack建议,在培训成为全栈工程师时,从学习如何开发一个简单的应用程序开始,然后从哪里开始构建。接下来的步骤可以包括证书程序、示例项目或完整的投资组合网站。Laverack还建议参加本地的聚会,并在在线软件工程社区中讨论全栈工程的目标。

如果是一家初创公司,你将有额外的机会从事软件的多个方面。Laverack表示,像谷歌和Facebook这样的大公司,软件工程师的职位分离度更高。

编码训练营coding Dojo的高级讲师Saurabh Dahal建议开发人员从前端开始学习HTML、CSS和Vanilla JavaScript。在此之后,你可以继续使用Python或JavaScript编写完整的堆栈。

在Scala做了两年后端工程师之后,Cockrel开始了她的全栈开发。她从她的网页开发同事那里学习了React,然后就能够更广泛地从事网站和前端服务的工作。

Cockrel说:“最终,我把时间平均分配给了这两个模块,并定期在这两个模块上工作。”

在软件堆栈中学习什么

Cockrel建议,对于开发移动前端的全栈工程师来说,他们应该学习面向iOS的Objective C和Swift,面向Android的Java和Kotlin。Kotlin是一种跨平台语言,可以作为Java的替代品。

Cockrel还建议全栈开发人员加强对服务器端语言(如Java、Python或Ruby)和数据库技术(如SQL (MySQL)和NoSQL (DynamoDB, Mongo))的学习。

作为全栈工程师构建适应性

全栈工程师以其通用性而闻名,Cockrel说:“与专注于某一专业的开发人员不同,全栈工程师是通才,通常具有充分的后端和前端技术知识。”

Cockrel在Grammarly担任全栈工程师,她描述了自己从事的各种项目:“在一些sprint中,我可能会花大部分时间和设计师一起用React和TypeScript构建前端接口。在其他的冲刺阶段,我可能会用Java重新设计和重构API,或者用Scala编写Spark Job,将数据输出到数据库中。”

此外,Cockrel 还拥有其他一些端到端的项目:“作为一个全栈开发人员,我一直负责创建一个数据库模式,设计CRUD API,然后构建使用这个API的网页,让用户与这些数据进行交互。”

虽然许多大学课程和训练营教授软件开发,包括前端和后端,但如果你选择了一个专注于全栈的程序,那么你应该正在设计一些大项目(并获得可观的薪水)

“全栈开发正变得越来越流行,”Cockrel说。“随着工程师就业市场的增长,对多才多艺的开发人员的需求也在增长。”

作者:Brian T. Horowitz

美国众议院提出增加H-1B申请费用

Nov 04, 2021

根据美国总统拜登提出的重建美好未来计划,众议院提出的协调法案针对许多项目提出建议, 其中隐藏着一些可能会对H-1B和其他工作签证产生根本影响的议案。

疫情下技术人员的心理健康

Oct 18, 2021

由于新冠疫情而转变的远程工作模式影响着各行业员工的心理健康,对于许多技术人员来说,他们其实在这段时期非常孤单——特别是那些在数据中心和其他地方从事“幕后”工作的人,因为他们与许多同事都没有联系。

能帮助数据科学家的软件工程概念

Feb 11, 2022

和许多数据科学家一样,我的专业背景是统计学。当我偶然发现这个领域时,我对预测模型非常感兴趣,鉴于我的背景,预测模型背后的推理是我的第二天性。 

Leave a Comment

Your email address will not be published. Required fields are marked *

Comment *