全栈软件工程师必读

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

北美求职指北-E周报(2月第2周)

Feb 19, 2022
  • 亚马逊大幅上调基本工资上限以吸引人才
  • 2022全美最佳职业排名TOP100出炉
  • 众议院通过《2022美国竞争法》

北美求职指北-E周报(12月第2周)

Dec 16, 2021
  • 美单周失业人数创52年新低
  • Microsoft涉嫌歧视非公民应聘者诉讼达成和解
  • 美国新法案要求社交媒体共享数据

解析网络开发员与软件开发员的岗位差异

Oct 31, 2022

近年来,基于网络的软件和内部部署软件之间的界限已经相当模糊。几乎每个应用程序似乎都需要网络连接。这是否消除了网络开发员和软件开发员之间的大部分差异?

Leave a Comment

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

Comment *