查看原文
其他

调查全球 98,000 名程序员发现,PHP 遭厌弃,前端岗已饱和!

屠敏 CSDN 2019-03-31

「有人的地方就有江湖,有江湖的地方必然有纷争。」

在昨日发布的《Android 告急》一文中,曾于 Google 工作了 13 年技术人 Steve Yegge 揭露,在 Google 内部不为外人所熟知的技术圈中,存在一种难以想象的“鄙视链”,即高高在上的是用着 C++ 写搜索引擎的工程师,而他们自认为要 Java 工程师酷,再者 Java 要比 Python 酷,Python 又比 JavaScript 程序员厉害。同时,写搜索的比写广告系统的酷,写广告的比写 App 的酷,写 App 的比工具酷,工具又比做前端的更酷。

在互联网的江湖中,Google 尚且如此,那么在全球范围内,技术圈的纷争又是什么样的状况?

作者 | 屠敏

出品 | CSDN(ID:CSDNnews)

近日,位于美国旧金山的知名招聘公司 Hired(专门为 Facebook、Uber 等顶级公司招聘人才)在走访全球 10,000 多家企业、邀请 98,000 名求职者参与其中之后正式发布了《2019 年软件开发者现状》调查报告,在以人工智能、机器学习、区块链、物联网等为首新技术打开互联网新纪元之际,与全球的开发者共同探讨技术圈最为流行的开发技能,编程语言以及市场最前沿趋势。

接下来,我们就来一探究竟。


前端需求量垫底,区块链工程师最抢手


正如文章伊始所述,随着大型企业纷纷寻求数字化转型、初创公司引入最新的技术方法,技术更新迭代的速度变得越来越快,市场中对着不同种类的开发者需求也发生了巨大改变,这意味着在当前的竞争愈演愈烈的大环境中,并非各种类的程序员都能收获同等薪酬及待遇,这就在无形之中形成了技术的“鄙视链”,而这究竟呈现出怎样的局面?

根据 Hired 发布的《2019 年软件开发者现状》报告结果显示,全球对于区块链工程师的需求迅猛增长,同比增长了 517%。不过在此需要提醒对区块链感兴趣的开发者们,也不要对当前的需求数据过于乐观而盲目投身于该行业。单从技术层面来看,想要成为一名专业的区块链高级工程师,首先需要具备后端工程师、系统工程师或解决方案架构师等职位技能,因此做好基础的技能储备才是王道。

对于区块链的前景,其实从过去一年中,无论是国内还是国外的从业者,都可以明显看出市场对于具有区块链技能的开发人员需求一直在激增,而未来随着企业开始落地无数区块链应用,譬如数字身份、智能合约、劳动力管理、分布式数据存储等等,预估需求将会继续增长。

市场对于技术工程师需求量

从上图中,我们也可以看出,具有安全专业知识的工程师也非常抢手。在此分析其原因,可能是由于数据泄露事件不断增加以及消费者隐私问题日益严重而导致。在过去的一年中,各大公司对安全工程师的需求累计增加了 132%。

此外,在当前互联网市场不太景气的环境下,许多公司开始节衣缩食减少对外投资,转而专注于自有的业务,同时希望借助于个性化推荐等算法来提升用户体验,增强用户黏性,这就导致市场对于数据分析和机器学习相关的技术人才需求上涨。整体而言,市场对具有这些技能的工程师的需求分别增加了 38% 和 27%。

除了以上,我们还可以看出,在移动互联网时代较火的移动开发、前后端职位如今已经趋于饱和,因而招聘需求也在逐渐减少。


搜索引擎工程师位居“鄙视链”顶端不无道理


随着不同职位的需求增加,人才变得抢手,薪酬自然也水涨船高。在 Hired 分析大型技术中心工程师职位之后,得出无论是在哪个地区,区块链工程师均位列最高薪的 Top 3。

其中,在旧金山湾区,区块链工程师平均薪酬排第三名,为 15.5 万美元。而位列第一的是如 Google 内部“鄙视链”顶端的搜索引擎工程师,薪酬 15.7 万美元,其次是安全工程师。

旧金山湾区技术工程师薪酬排名

在伦敦,区块链工程师的平均收入为 89,000 美元。

伦敦技术工程师薪酬排名

值得注意的是,由于不同的薪酬标准和竞争格局,美国以外的技术工资可能要相对低得多,但从中我们看到了积极的趋势是,如在伦敦,在对比 2018 年薪酬状况报告(https://hired.com/state-of-salaries-2018)发现,整个科技从业者的工资正在上升。

此外,根据报告结果对比,同种技术的软件工程师在不同的城市薪酬会有很大的不同,如游戏工程师是纽约收入最高的群体,平均收入为 14.7 万美元,而在其他地区可能属于薪酬榜的底端。

纽约技术工程师薪酬排名


最抢手的编程语言技能并非 Java,而是 Go


一直以来,程序员对着自己的开发利器之编程语言有着的属于自己独特的看法,并基于此划分出最喜欢和最讨厌的编程语言。

根据此次报告的数据显示,让不少开发者颇为惊讶的是,最受雇主喜欢的编程语言竟然不是 Java ,而是普及度没有那么高的 Go 语言。对于其中原因,Hired 官方猜测可能是因为 Go 语言是由 Google 设计的,而这增加了掌握 Go 语言的程序员在 Google 工作的机会。

全球最受雇主欢迎的编程语言排行榜

不过,在调查开发者日常工作中最常用的编程语言时,Hired 的数据显示,Go 语言并没有达到预期的欢迎度,在受访者中,只有 7% 的程序员表示经常使用它。此外,最受欢迎编程语言排行榜 Top 5 的另外四种 Scala、Ruby、Typescript 和 Kotlin 语言在市场中应用现状也遵循类似的趋势,开发者对其熟悉程度均比较低。同时,令人惊讶的是,和 Python 应用领域有着极大相似性 R 语言,无论是在需求量还是在使用量上均为垫底语言。

全球常用编程语言排行榜

从上图中,我们可以看出,JavaScript 是开发者常用的高级语言,占比 62%。其实 JavaScript 的排名可谓实至名归,其曾在多个排行榜中均列第一。不过,它第一名的位置显得另外一种 TypeScript 语言颇为尴尬。众所周知,TypeScript 是 JavaScript 的超集,按理来说,JavaScript 程序员学习起来会更简单,但根据数据显示,只有 12% 的受访者正在使用 TypeScript(尽管它在全球编程语言技能需求量中排名第四)。但从另一个角度来看,这也为熟练掌握 JavaScript 的开发者提供了学习 TypeScript 的机会,毕竟整个市场对掌握 TypeScript 的技术人才需求在逐渐增长。


Ruby 工程师越老越吃香


为了进一步分析市场对编程语言的需求,Hired 基于使用编程语言的年限来划分市场的需求量变化。根据结果显示,在具有多年经验的开发者中,Ruby 技术工程师的需求量特别高。其中拥有 6 年以上工作经验的 Ruby 工程师在当前招聘需求中成功的几率高达 11.7%。

此外,在 4-5 年工作经验的技术工程师中,那些了解 Typescript 和 Go 的人才需求也高。


开发者最爱 Python,最讨厌 PHP


显然,雇主对于编程语言技能的需求量并不代表开发者自身对于编程语言的态度。根据调查显示,51% 的开发者将 Python 视为自己最喜欢的编程语言之一,JavaScript 紧随其后,占比 49%。其次,对于 Java,很多开发者给出了“爱与恨”的双重态度,它既是最受欢迎的编程语言第三名,又是最令人讨厌的编程语言排行榜的第二名。

此外,素有“世界上最好编程语言”之称的 PHP 在这一次竟然成为众多开发者讨厌的对象,占比 19%。

来源于网络


培训机构对于开发者而言,真的没有用吗?


通过上面了解了互联网行业最热门的领域以及编程语言的最新趋势后,对于开发者而言,要做的就是加强自己的专业知识。如今入门程序员行业,部分新手是直接毕业于科班,但也有一部分人直接进入培训机构学习。

在国内的大环境下,无可否认的是,一些大厂在招聘时直接设置了学历门槛,导致一部分人哀怨 IT 行业看不起培训机构出身的程序员。而一些企业也会无奈的表示,培训机构出身的程序员底子真的比较弱。那么事实究竟如此?

根据报告结果显示,76% 的受访者表示通过在培训机构里的学习对自己工作有所帮助。

同时,虽然有一些雇主对聘请具有仅限培训机构经验的开发者犹豫不决,但57% 的软件工程师表示他们可以接受一名培训机构出来的毕业生担任软件工程师角色。

其中,36% 不确定以及 7% 不会的雇用培训机构出来的开发者的雇主,主要是担心培训机构的毕业生太过缺乏经验。


你是如何入门的?


在获得各大公司面试机会之前,开发者自身就应开始做好充分的准备,譬如进行一系列编码考试、白板考试和言行举止学习。

在此次报告中,54% 的开发者认同编码考试可以有效测试自身的能力,但有 63% 的受访者觉得这与他们实际工作无关。

事实上,学习如何编码并不是一件容易的事,通常需要从业者花费数年的时间来掌握它,这也是为何开发者能获得高薪的原因。根据报告显示,虽然大多数软件工程师采用获得计算机科学学位的预期途径(46%)来入门,但也有五分之一的受访者表示他们是自学成才。


那么对于开发者而言,最感兴趣学习的是什么类型的技术?根据调查显示,各大公司需求和开发者的兴趣并不总是相符。例如,区块链技术是市场上最需要的技能,但只有 12% 的受访者认为区块链是他们想要了解的顶级技术。对于机器学习,兴趣和需求倒是同步,有 61% 受访者表示机器学习是他们有兴趣了解的第一或第二技术。


揭秘开发者的工作风格


依照开发者自己的说法,团队合作才能使梦想成真。根据调查数据显示,软件工程师对结对编程感兴趣,这是一种开发方法,简而言之,两个程序员在一个计算机上一起工作。事实上,48% 的人表示,如果公司提供结对编程,就会增加他们在公司工作的兴趣。

其中主要缘由是开发者认为结对编程效率更高,因为它有助于捕捉 Bug。同时,42% 的人认为结对编程对初级工程师有好处,但对于经验丰富的人来说没有意义。


对开源的看法


现在很多公司都在拥抱开源,但是对个人开发者而言,频繁贡献的群体要比期望值要少得多。根据调查数据显示,只有 9% 的受访者经常参与开源,53% 的受访者以前从未参与过开源。

而 30% 的开发者表示他们为开源做贡献,因为它很有趣。但是对于大多数人而言,因为平时的空闲时间以及精力有限,所以无法深度拥抱开源。


总结


以上的趋势仅供大家参考,但更具体的技能需求还是需要因地方而异。对于身处日益月异技术圈的开发者来说,顺应潮流、不断地学习才能保证自己不被淹没于淘汰的长河之中。最后,以西汉经学家刘向的经典警句,「少而好学,如日出之阳;壮而好学,如日中之光;老而好学,如炳烛之明。」与君共勉。

完整报告可参考:https://hired.com/page/state-of-software-engineers/

【完】

 热 文 推 荐 

☞ 聊天宝解散罗永浩退出;三大运营商回应提速降费;天猫 iPhone XS 最高降 2000 | 极客头条

☞ 腾讯的“半条命”究竟给了谁? | 畅言

☞ 为什么我们需要数据预处理?

☞ 女神节该送程序媛什么礼物?保命指南来了!| 程序员有话说

☞ 小学生手写 Python 程序解魔方!这是高手,这绝对是高手!

☞ 小团队的微服务之路

☞ 首发 | 旷视14篇CVPR 2019论文,都有哪些亮点?

☞两会第一天, 大佬们关于区块链的探讨, 你要了解的都在这了

☞ 神操作!这段代码让程序员躺赚200万?给力!

print_r('点个好看吧!');
var_dump('点个好看吧!');
NSLog(@"点个好看吧!");
System.out.println("点个好看吧!");
console.log("点个好看吧!");
print("点个好看吧!");
printf("点个好看吧!\n");
cout << "点个好看吧!" << endl;
Console.WriteLine("点个好看吧!");
fmt.Println("点个好看吧!");
Response.Write("点个好看吧!");
alert("点个好看吧!")
echo "点个好看吧!"

点击阅读原文,输入关键词,即可搜索您想要的 CSDN 文章。

喜欢就点击“好看”吧!

    您可能也对以下帖子感兴趣

    文章有问题?点此查看未经处理的缓存