薪资涨幅最高!竟然是这门快“入土”的编程语言

原创 精选
开发
数一数那些“钱”景光明的编程语言

      不久前,StackOverflow发布了2022年度开发者调查报告。在这份覆盖了180个国家 / 地区的73000多名开发人员的报告中,在编程语言领域,出现了一些很有意思的数据。

      首先,在最常用的编程语言中,JavaScript再次占据主导地位。Python屈居第四,SQL则仅次于第二名的HTML /CSS。而TypeScript则将Java挤出了前五。

图片

最常用的编程语言排行榜前十截图@StackOverflow

  再者,在最受开发者喜爱的编程语言调查中,Rust仍旧蝉联最受欢迎的语言。Elixir则从2021年的第四位跃升至第二位,而TypeScript从去年的第三位滑落到第四位。

图片

  最受开发者喜爱的编程语言排行榜前十@StackOverflow

      然后,在薪资相关的统计中,Clojure仍然是已知最高收入的语言。另外相较去年,收入增幅较多的语言COBOL、Couchbase 、Flow和IBM Cloud/Watson。

图片

编程语言的薪资排行榜前十@StackOverflow

  其中以COBOL的提升最多,年薪中位数从52340美元跃升至75592美元。虽然在所有语言的排行中不算顶尖,但44%的涨幅确实惊人。

图片

  COBOL算得上是一门古董级的语言,年轻一点的朋友可能都没见过。事实上,会这门语言的程序员确实很少,而且基本属于程序员群体中的“高龄”之列。为何在近年来又开始有了“奇货可居”之兆呢?

程序员越老越值钱的语言

  COBOL于20世纪60年代面世,主要应用于财会工作、统计报表、计划编制、情报检索、人事管理等数据管理和商业数据处理领域。因此,COBOL在银行、金融、会计等行业都有广泛应用。

  基于这门语言的开发时间较早,且功能强大稳定,在各种编程语言兴起的当下也没有退出历史舞台。根据路透社2017年的调查发现,全球目前仍有2200亿行COBOL代码,占据活跃代码的80%,大约95%的ATM交易处理用的都是COBOL语言。

  另外,COBOL还有一大特点,那就是语法与英文很接近,换言之,敲代码犹如写作文。固然很多人觉得这样简单易懂,但对程序员来说就很不友好了。

图片

COBOL编程@互联网

  特别是对于学着Java、C语言长大的程序员来说,COBOL实在过于艰涩了。如今,无论是在课本还是在常用的编程语言排行榜中,COBOL基本已经难觅踪迹,学习COBOL的人自然也越来越少。

  在相关机构的调查中,精通COBOL语言的程序员年龄普遍在50岁以上。随着老一辈程序员退休,很多机构会发现已经招不到人了。

图片

COBOL开发人员的年龄分布@Computerworld

  两年前疫情爆发时,美国失业人数暴增,申请失业补助的人蜂拥而至。新泽西州长在电视直播中召唤Cobol程序员,因为该州政府处理失业登记的系统是四十多年前使用的Cobol编写的,急需维护。但因为实在找不到人,只能公开喊话,请求COBOL开发人员支援。

  当然此前也有很多人考虑过重写系统,用更现代化、更便于维护的编程语言替代COBOL。2012年,澳洲联邦银行就请了两家公司帮忙重新编写平台,结果耗时5年,花费7.5亿美金,才最终把7500万行COBOL代码转换过来。由此可见,对大部分公司来说,重写系统的代价令人望而生畏。而且从某种程度上说,只要大型机存在,COBOL就不会消失。

  仅就美国而言,在其政府和金融系统中,COBOL语言分量“极重”,但翻新成本又难以承受,这也导致了对COBOL开发人员的需求上升。就这门语言来说,程序员时常处于稀缺状态,年龄越大,经验越丰富,其薪酬也越高。此次在StackOverflow的调查报告中COBOL的薪资涨幅也证明了这一点。

  不过StackOverflow的调查人群多数是美国和印度裔的程序员,中国的情况又如何呢?

“钱”景向好的那些语言

  在COBOL相关新闻的报道下面,有中国网友笑言:“中国程序员35岁以后就不干了,根本等不到退休后……”但也有人认为不能以偏概全,对于不在互联网行业的程序员来说,干到50岁的职业发展空间也是有的。

图片

  那么,在中国的国情下,一些快要“入土”的语言可能像COBOL一样“起死回生”吗?语言真的会和薪资直接挂钩吗?当前,哪些语言的“钱”景比较好?51CTO技术社群中,来自各行各业的程序员们也围绕这些议题展开了讨论。

  1、一些快要“入土”的语言,诸如Delphi之流可能像COBOL一样“起死回生”吗?

  对此,大多数人持否定态度。首先,物以稀为贵,不排除某些语言因为冷门或者小众而薪资很高;然后,COBOL的所谓“起死回生”更多是基于时代遗留的“红利”,被选择只是它当时恰好被用来做了很多系统,而更新的成本又过于高昂;最后,语言和应用场景关联较大,一些“过时”的语言要再次火起来需要有更适应的场景出现。

  2、从长期职业发展来看,选择哪门语言,真的会和薪资直接挂钩吗?

  认为“语言和薪资挂钩”的一派认为,从目前的市场需求来看,有的岗位待遇普遍就高,对应的语言薪资自然就高。比如,目前云原生很火,Go语言就相应地水涨船高。

  认为“语言和薪资关联不大”的一派认为,从长远发展来看,学哪门语言不重要,做什么、在哪里做很重要。比如,即使是同一岗位,身处传统行业还是风口行业,收入肯定有差别。

  不过在更多人看来,应该辩证看待。

  第一,每种语言的诞生都是为了解决特定领域的需求,都有其优缺点。没有一种语言能解决所有问题。所以,选择什么语言和业务场景相关、和公司的技术栈相关。

  第二,在短期内来看,选择的语言和薪资是有关联的。毕竟每门语言的学习曲线不同,入门的时候选择当下比较火的、相对简单的语言无可厚非。但要真正站住脚,还是要变成多面手,让自己更适应业务。

  第三,语言和薪资的关系主要还是受应用领域的影响。比如,机器学习的发展带火了Python。对于某个领域的求职,精通特定的编程语言确实有增益。

  第四,就长期职业发展而言,薪资和语言并没有直接关联关系。当资历达到一定高度,例如资深架构师,显然就不能单纯从编程语言来看,而要从更多角度来衡量。

  3、当前,哪些语言的“钱”景比较好?

  讨论中出现比较多的三种语言分别是Java、Go、Solidity。

  Java

  理由:应用范围广,且进入高级水平门槛高;上限虽不好说,但无论在大城市还是小城市都能找到工作。但有一点也需考量,正因为需求多,所以Java人数也多,竞争压力较大。

  Go

  理由:背靠谷歌好乘凉,后劲更足;云服务的发展会为Go带来更多的使用者;前景相对广阔,目前已经有很多中大厂在招Go的开发人员,薪资待遇比一般公司更有竞争力。

  Solidity

  理由:随着Web3应用的发展,掌握Solidity会占据一定先发优势。而且从发布的岗位薪资来看,和Web3挂钩的技术岗位薪资比其他的语言薪资普遍略胜一筹。

影响前途的远不止语言

  固然编程语言的选择和岗位薪资、职业发展路径有一定的关联,但更多人还是认为,学习语言不能太功利。语言的重要性不言而喻,但要想前途光明,提升发展上限,掌握一门语言远远不够。

  要明确语言的工具属性。语言是武器,思维是内功。磨利武器,炼好内功才是王道。

  【陈先生. ლ】编程语言只是一种工具,为了方便人与机器之间的沟通。更重要的还是编程思想,怎么做才会更好更便捷地达到目的。

  【Signx】从长远来看,语言都是工具,思维才是王道,比如遇到逻辑分叉就知道用判断,遇到重复的事情知道用循环,这跟语言没关系。从短期看,需要一门语言来进行编程思维的锻炼,真正的高手玩的是内功心法,而不是执着于哪一件兵器。

  编程语言的学习过程中,可以往“一专多能”的方向发展,但关键是要锻炼自身的思维体系,在专精基础上再追求“一通百通”。

  【sifone】我觉得学语言既要看前/钱景,又不能太功利,大部分时候对语言的学习,也是启发个人思维的过程。另外,静态语言、动态语言,每样至少学一门吧,这样会对编程有更好的理解。

  【🧐临城谦🐾】语言与语言之间的区别还是很大的,数据结构之间的差别也很大。只有你在某一门编程语言(技术)中进行了深耕并充分理解之后,才可能触类旁通。别一个语言都没精通就去学另一种语言,这完全就是耽误时间。

参考链接:

https://news.mydrivers.com/1/852/852426.htm

https://survey.stackoverflow.co/2022/

https://blog.csdn.net/Fristm/article/details/125654054

责任编辑:张洁 来源: 51CTO技术栈
相关推荐

2021-04-08 22:31:20

编程语言PythonC语言

2020-10-13 18:14:05

IT编程语言编码

2020-11-03 09:14:30

编程语言Go技术

2020-09-29 06:45:49

JDK

2015-06-18 11:04:58

2021-07-28 06:51:08

Nacos代理模式

2020-12-15 08:05:40

路由器服务器网络层

2021-01-12 15:57:18

编程语言RustPython

2021-10-18 13:42:52

加密货币金融工具

2018-07-06 00:09:47

2023-03-13 08:09:03

Protobuffeature分割

2020-10-19 11:41:32

技术资讯

2020-10-20 17:18:00

戴尔

2022-07-07 19:44:22

Python 3.1

2021-08-28 10:15:26

项目结构Flask

2019-12-24 11:00:51

NVMeSSDSATA

2020-08-19 09:23:10

传输网络WDM网络技术

2018-11-28 09:14:41

交换机网络安防

2023-10-25 15:11:15

Java
点赞
收藏

51CTO技术栈公众号