疫情放缓后,全球软件开发人员的数量或将回升,这意味着人才的竞争也会越来越激烈。据 Evans 数据公司分析,2018 年软件开发人员的数量为 2300 万名,在针对大流行进行调整之前,预计到 2023 年这个数字将达到 2770 万。为了帮助求职者更好地在充满挑战的就业市场中脱颖而出,InfoWorld 整理了一些软件开发人员可以关注的热门领域供参考。

图片来源:pixabay

大致包括如下六个方向:

不要把鸡蛋放在同一个篮子里

开发人员经常根据他们对某些编程语言和框架的熟练程度进行判断和评估,但重要的是要记住,这些都是可转移的技能。Stack Overflow 在 2020 年开发者调查中询问了数千名开发者学习新语言或框架的频率,约 75% 的受访者表示,他们每年至少学习一次新技术。

招聘技术专家 Applied 的工程负责人 Hew Ingram 表示,语言和框架非常相似,因此编程语言之间的差异远小于口头表达。从 PHP 到 Python 的迁移并不像学习一门新语言(如:法语)一样困难。

Ingram 称,如果他正在招聘一个 React 开发人员,他不会真的介意他们之前是否曾经做过 React,如果他们曾经做过 Angular、J Query 甚至是 vanilla Javascript 都可以,因为这些经验都能够使得他们可以更快的上手 React。

HackerRank 数据数显示,在软件开发领域,可证明的可转移技能比一连串的熟练程度更有价值。更何况,现在很多招聘经理根本就不懂语言。

有些技能比其他技能更热门

相比 Javascript 或 C++,掌握了 Rust 和 Dart 这种类型技能的求职者可能更受欢迎。Rust 和 Dart 都是在开发者中迅速流行起来的轻量级编程语言,在编程语言的增长榜单中名列前茅。

同样,科技招聘市场 Hired 数据表明,谷歌自家的 Go 编程语言也在蓬勃发展,Go 技能工程师平均每个求职者均可获得 9 个以上的面试请求。Scala 和 Ruby 紧随其后,2019 年平均每个求职者的面试请求也超过了 8 个。

不过,对于刚入门的人来说,Java 和 Javascript 可能是最靠谱的编程语言。实际上,根据热门招聘网站 Indeed 分析,Java 仍然是雇主需求量第二大的技能,仅次于 SQL。

还有 Python,它在过去十年中迅速增长。根据 2014 年至 2019 年期间 Indeed.com 上数百万条美国招聘信息显示,该语言在数据科学家中很受欢迎,现在已成为第三大需求技术。在去年的 TIOBE 语言流行指数中,它还被评为 2020 年 TIOBE 年度最佳编程语言,跃升了 2.01 个百分点,超过了上升 1.99 个百分点的 C++。

同时,Python 也很好赚钱。PayScale 数据显示,精通 Python 的开发人员的平均工资为 91000 美元。作为对比,Java 开发人员的平均工资为 74,000 美元

后端技能的变化

从技能的角度出发,着眼于后端,有一个明确的发展方向:容器和云原生

一般的云计算技能通常与主要供应商保持一致:Amazon Web Services(AWS)、Microsoft Azure 和 Google Cloud Platform。招聘经理倾向于根据这些特定技能来进行聘用,以便开发人员可以迅速加入团队。

目前,由于许多公司已经在 AWS stack 上构建了服务,因此 AWS 仍然是最受欢迎的。Indeed 的分析显示,从 2014 年到 2019 年,AWS 专业开发人员的职位发布量增长了五倍,远远超过了 Azure 和 GCP 的需求。

在容器方面,Indeed 的研究表明,对 Docker 技能的需求持续激增,自 2014 年以来增长了 4,162%,并且在 2019 年占美国所有技术工作的 5% 以上。与此同时,对容器编排工具 Kubernetes 和服务网格 Istio 的熟练需求自然而然地随之而来,因为两者都已成为管理容器化环境的行业标准方法。

GitHub 2020 年度 Octoverse 报告显示  Kubernetes 仍然是贡献者最受欢迎的十大开源项目之一。同样,Istio 是贡献者增长最快的项目之一,2019 年的贡献增长了 194%。

全栈

在过去的几年中,软件开发人员的一项重大发展便是所谓的“全栈”开发人员的兴起。这是一个“万能”的角色设定,可以处理构建和运行应用程序所需的前端和后端编码。

HackerRank 的 2020 年开发人员技能报告指出,各种规模的公司招聘经理都同意“全职开发人员是重中之重”,其中 38% 的人说,这是他们在 2020 年要填补的第一大职位。

关于全职开发人员实际上是否是独角兽存在一些争议,但是如果您想满足招聘经理的标准,则需要精通HTML / CSS和JavaScript等前端语言,并结合使用终端语言和框架(例如Node.js,Python,Ruby和Java)以及一些Git,数据库以及Web或移动应用程序技能,这些都是很好的衡量标准。

目前,关于全栈开发人员确实仍存在一些争论。但如果你想满足招聘经理的标准,你将需要同时精通 HTML/CSS 和 JavaScript 等前端语言,结合 Node.js、Python、Ruby 和 Java 等后端语言和框架,再加上一些 Git、数据库和 Web 或移动应用的技能。

数据

数据科学及数据工程师的兴起,也让几种语言和技能的受欢迎程度稳步上升。

像 Kafka 这样的流式数据工具,Redshift 和 Snowflake 这样的现代数据仓库,以及流行的机器学习库 Tensorflow,在过去的几年里需求量都在激增。Python、R 和 Spark 都是快速崛起的技能,这些技能也都指向了当今组织对数据科学技能的渴求。目前,就已有了像 Pytorch 这样真正具有针对性的 ML 工具的兴起。

当然,并不是每个人都可以成为数据科学家,许多开发人员不会具备这种技能,但是拥有互补技能也不会损害你的就业能力。

正规教育不是万能的

最后但重要的一点,获得 2021 年的软件开发人员职位并不一定是需要正式的计算机科学学位。

Hired 首席执行官 Mehul Patel 在科技招聘公司的《2020 年软件工程师状况》报告中表明,"对于招聘经理来说,关键是要注重评估应聘者的技能,而不是过度指数化的教育。虽然 50% 的软件工程师拥有计算机科学学位,但另外 32% 的人要么自学编程,要么通过编码训练营学习--他们也很可能拥有同样的一套编程技能。"

事实上,谷歌和微软都推出了标准大学学位的替代方案。即,谷歌的职业证书计划和微软的全球技能计划。

HackerRank 的 2020 年开发人员技能报告指出,Z 世代比以往任何一代人都更有可能利用训练营。调查结果显示,有近六分之一的人透露,他们已经利用训练营学习了新的技能。此外,有 32% 的招聘经理正在引进新兵营毕业生,其中 72% 的人表示这些员工"与其他人一样或比其他人更适合这份工作"。