冲击百万年薪:11大编程语言薪资排行榜,再不学Python就晚了!

编程语言有很多,但并非每一种的需求或工资都相同。人工智能和机器学习走热,让 Python 从众多编程语言中脱颖而出。本文将综合各种信源,比较不同编程语言在美国市场的相关薪资水平、人气和前景,为你提供一些参考。大量统计数据袭来,你准备好了吗?

有这样一个问题,使用空格和使用 Tab 的程序员谁挣得更多?

你别说,还真有人做了统计:

图1:根据 2017 年 Developer Survey 调查 12,426 名全职开发人员的结果,使用空格(红线)的人薪资比使用 Tab 的更多。来源:stackoverflow.blog

由上图可知,使用空格的开发人员,工资中位数为 59,140 美元,而使用Tab的开发人员的工资中位数为 43,750 美元。

使用空格的程序员比使用 Tab 的挣更多!

上面这个调查 Developer Survey [1]是面向全球进行的,而且不同的国家之间开发人员对空格和 Tab 的偏好差距并没那么大——实际上,根据这份调查,不同国家和地区的程序员使用两者的情况差不太多。

图2:不同国家和地区开发人员对空格、Tab 的偏好差距并不太大。2017 年 Developer Survey 调查了 12,426 名全职开发人员,来自美国、印度、英国、德国、加拿大和其他地区。红条、绿条和蓝条分别表示更爱用空格、Tab 和两者差不多。来源:stackoverflow.blog

那么,收入之间的差距可能来自于这些开发人员所使用的编程语言,比如说,移动端开发人员更喜欢使用 Tab,而 DevOps 开发人员更常使用空格。

于是,Developer Survey 调查又统计了开发人员的工作种类(比如是前端开发还是图形设计)和他们使用的语言,薪资情况如下:

图3:使用 Tab 的开发人员的薪资中位水平。来源:stackoverflow.blog

这是个有趣的结果,但并不是决定性的。但是,有一个不可否认的事实——编程语言的种类有很多,并非每一种的需求或工资都相同。本文将综合各种信源,比较与不同编程语言在美国市场的相关薪资水平、人气和前景,为你提供一些参考。

在本文中,你将看到几种主要编程语言的:

  • 工作机会
  • Github 流程程度及变化
  • 编程语言介绍(为想要学习编程的读者准备)

薪资排行 & 工作机会:Python 既有实力亦有潜力

在美国,软件工作岗位在线招聘数量从 2007 年到 2012 年增长了 31%,比总体工作岗位增速快了 3 倍。美国劳工统计局估计,软件开发人员的工作从 2012 年到 2022 年将以 22% 的增幅继续增长。这里有个数字,2016 年 5 月,软件应用程序开发员薪资的中位数为 100,080 美元。

使用国外招聘网站 Indeed.com 上招聘广告的数据,我们可以将编程语言的薪资水平划分为 9 档:

基于这个结果,Ruby/Ruby on Rails 看起来会让你挣得最多,而 Python,C++,iOS 和 JavaScript 也是体面的选择。如果薪资是你的主要关注点,那么也许 C,PHP 和 SQL 不是最理想的选择……

平均薪资水平可能会受诸如需求(有多少招聘职位)、供应(有多少开发人员了解语言)和经验(资深开发人员自然挣得比初级开发人员多)等许多因素的影响,我们有必要深入了解这些因素,然后才下定论。

1. 工作需求

根据你熟悉的编程语言找到工作的可能性有多大?以下是来自 Indeed.com 的工作趋势:

可以看到,C,SQL,Java 和 JavaScript 在招聘启事中经常被提到,而 C#,C++ 和 Python 也是表现不错的语言。

另一方面,如果你的目标是在创业公司工作,那么可能 Indeed.com 的工作趋势不是你应该参考的最佳指标。我们找到了 AngelList 网站,这里有更多美国初创公司发布的职位,来看看基于 AngelList 的软件开发人员需要的编程技巧:

再一次地,JavaScript 高居榜首。但是,美国创业公司似乎更喜欢 Python 和 Java,对这两者的需求超过了 Ruby(两年前 Ruby 最受欢迎),PHP,C 或 C#。

2. 供应情况

我们再来看开发人员这边,根据网站 Codementor 的数据(Codementor 是一个比较大的程序员交流网站,用户在注册时会填写自己使用的语言,因此数据在一定程度上可以反映开发人员掌握的编程语言):

当然,这个结果并不能准确反映实际市场的情况,但可以作为参考。例如,虽然移动应用业务已经蓬勃发展了一段时间,但 Objective-C 专家仍然很少。由于 Objective-C 开发人员供应不足,他们的薪资自然相对更高。

另一方面,PHP 在劳动力中的供应量很大,因此雇主有更多的选择,在薪资方面议价能力更强。同时,市场对 PHP 开发人员的需求也不如 Java,SQL 或 JavaScript 那么多。 因此,PHP 开发人员普遍收入较少。这个情况也体现在了我们文章一开始的那张图里面(参见图2)。

JavaScript 是个很特殊的例子。尽管供应量最大,但 JavaScript 开发人员并不处于薪水层的底线。

3. 薪资范围

现在,了解每种语言的需求和供应情况,我们再来看看根据招聘广告的薪资信息,你能得到的潜在工资。下面的数据来自 gooroo.io,根据每条招聘启事给出的薪酬范围取了平均数:

懂 Ruby,C++ 或 Java 的开发人员看上去起始工资更高。Python 和 Ruby 开发人员的薪资潜力最大,这可能意味着好的 Ruby/Python 开发人员市场缺口相对较大。

看各大语言前景,以及 Github 过去 16 年编程语言迁徙:更多人转而使用 Python

接下来我们可以看看各种编程语言的前景。

一种编程语言将来的发展前景如何?首先,这在很大程度上取决于其社区的发展,因为新鲜血液/采用率是使语言受欢迎的保障。因此,让我们来看看人们最感兴趣的语言是什么:

图4:根据谷歌搜索,2016 年使用 Python 的兴趣大增。

其次,Github 的项目数量能够从一定程度上体现出语言的流行程度。

其中,星级超过 1000 的项目排行如下:

同时,我们还需要注意——开发人员或许有过这样的体验,在挣扎完成第 N 个艰难晦涩的项目后,心想:“我可以用这种语言做这件事,但为什么不换种语言更加愉快地工作呢?”

分析了 4500 万 GitHub 用户、393 种不同的语言以及 10 TB 的源代码后,Waren Long 在博客 source{d} 发表博文,用详尽的数据和科学的方法展现了过去 16 年 Github 用户编程语言的大变迁(也就是从一种语言换到另一种语言的情况)。

使用 5 种最流行的语言(Java,C,C ++,PHP,Ruby)其中一种的开发人员,最有可能用切换到 Python,平均 24% 的机率。

再来看一个更直观的图:

过去 16 年,Python 和 Java 逐渐取代了 C 语言。

篇幅有限,我们这里就直接看结果了。要知道更详细的信息,可以访问参考资料 3。

编程语言介绍:Python 在 2014 年成为美国高校入门课程最受欢迎语言

最后,为了想要学习编程语言的读者,我们简要介绍一下各种编程语言。

1. 动态语言(Dynamic Languages)

动态语言通常更容易让初学者学习,因为它们灵活而有趣。你可以从头开始快速构建一个应用程序,需要的代码数量较少,并且没有硬性规则。由于动态语言通常是非常高级(high level)的语言,所以你会花更少的时间纠结细节,更多的时间学习编程概念,这也是动态类型的语言受初学者欢迎的一个原因,初学者一般都会因能够构建事物和快速看到结果得到反馈而鼓舞。

  • JavaScript

不要与 Java 混淆了,JavaScript 是主要用于前端开发的客户端脚本语言。JavaScript 在所有浏览器中都兼容,用于创建交互式 Web 应用程序,通常是通过诸如 jQuery 和前端框架(比如 AngularJS,Ember.js,React 等)的库来创建。JavaScript 也可以通过 Node.js 平台用作服务器端语言。过去两年来,Node.js 开发社区已经有了很大的发展,现在你可以在这里找到很多资源。你还可以通过使用诸如 phonegap 这样的框架,用 JavaScript 构建混合移动应用程序。Facebook 的 React Native 能让你使用 JavaScript 构建本地移动应用程序。不过,JavaScript 的难度很高,因为它是无类型的语言,因此很难调试。也有静态类型的版本,比如 Microsoft的 TypeScript 或 JSX,在 React 上使用。

  • Ruby

有了 Ruby,开发人员可以很开心地工作。Ruby 的流行得益于 Ruby on Rails 框架,Ruby 与英语很类似,而 Rails 框架(是全栈 Web 框架)有“开箱即用”的工具,让开发工作变得简单。因此,很多人会建议你首先学习 Ruby。Ruby 主要用于后端开发,一些常用大网站,比如 Airbnb,Shopify,Bloomberg,Hulu,Slideshare 都是使用 Ruby on Rails 构建的。

  • Python

Python 是另一种强烈推荐初学者学习的语言,Python 也是美国顶尖大学最受欢迎的入门级介绍语言。开发人员使用 Python 构建桌面应用程序和网络应用程序,Python 也是数据挖掘的好工具。此外,Python 在科学计算,数据分析和生物信息学的学术界尤其受欢迎。Google,Dropbox,Pinterest,Instagram,Reddit,BitTorrent,Civilization IV 等都是用 Python 构建的。

不仅如此,Python 从 2014 年起就成为美国顶级高校入门级课程教学语言(Introductory Teaching Language):

下面是部分美国顶级高校计算机相关课程使用编程语言列表:

图4:美国顶级高校入门级课程使用编程语言的情况。在这里仅列出了部分高校,更完整的表单参见参考资料 4 的网页。

  • PHP

PHP 是一种服务器端脚本语言,通常被认为是初学者友好的。要理解 PHP 代码要做什么比较容易,因此 PHP 很容易学。大多数网站都是用 PHP 构建的,因为这种语言是专门针对网络的。Facebook,维基百科,Yahoo!, Tumblr,Wordpress 等都是用 PHP 构建的。

2. 静态语言

使用静态类型的语言构建的应用程序有更高的可扩展性、稳定性和可维护性。静态语言在通过类型检查查找错误时一般更严格,并且需要更多的代码来构建一个原型。游戏引擎、移动应用和企业级后端通常使用静态类型的语言构建。

  • Java

作为通用语言,Java 用于构建 Android 应用程序、桌面应用程序和游戏。Java也常用作企业级后端开发的服务器端语言——90% 的财富 500 强公司使用 Java。此外,用于存储和处理大数据的 Hadoop 是基于 Java 的流行框架,Yahoo,Facebook 和 Amazon Web Services 等企业都在用 Hadoop。

  • C

C 常用于编程系统软件,是操作系统的通用语言(lingua franca)。C 几乎影响了本文中提到的所有编程语言,尤其是 Objective-C 和 C++。所以,如果你知道 C 语言的话,你可能更容易学习其他流行的语言。由于 C 语言需要用更复杂的代码来执行简单的任务,所以初学者如果把 C 语言作为第一语言往往很难保持动力。但是,从长远看,C 语言的知识肯定对你程序员的工作有所帮助。

  • Objective-C

Objective-C 是建立在 C 语言之上的一层,因此是静态的。话虽这么说,Objective-C 也可以用于动态打字。Apple 的 Swift 是一种静态语言,与 Objective-C 兼容,但它的静态类型使其更有弹性。Swift 受 Python 启发而来,旨在为新手轻松编写和修复 Objective-C 的一些问题。

  • C++

C++ 是基于 C 语言的一种强大的语言,专为编程系统软件而设计,但也被用于构建游戏/游戏引擎,桌面应用程序,移动应用程序和网络应用程序。C++ 功能强大且速度很快,Facebook 用 C++ 已经开发出了好几个高性能、高可靠性的组件。许多软件都用 C++ 构建,包括 Adobe Systems,Amazon,Paypal,Chrome 等。与 C 语言类似,C++ 通常被认为不太好让初学者自己学习。所以,如果你决定学习 C++ 作为你的第一个编程语言,建议与人讨论或找一个导师。

  • C#

C# 用于微软的 .NET 框架,主要在Microsoft Windows 上运行。C# 用于 Web 开发、游戏开发和一般 Microsoft 开发。此外,Xamarin 一直在开发一个名为 Mono 的开源项目,该项目旨在将 C# 移植到其他平台,为 Linux 开发人员带来更好的开发工具。最近,你还可以使用 C# 通过 Xamarin 为 iOS 和 Android构 建原生手机应用。

3. 其他

  • SQL

SQL(“Sequel”)或结构化查询语言,是用于与数据库通信的查询语言。虽然 SQL 不能用于构建应用程序,但它用于管理使用关系数据库管理系统(RDMS)的应用程序中的数据。

参考资料:

1. https://stackoverflow.blog/2017/06/15/developers-use-spaces-make-money-use-tabs/

2. https://www.codementor.io/codementorteam/beginner-programming-language-job-salary-community-7s26wmbm6

3. https://blog.sourced.tech/post/language_migrations/

4. https://cacm.acm.org/blogs/blog-cacm/176450-python-is-now-the-most-popular-introductory-teaching-language-at-top-u-s-universities/fulltext   

本文作者:佚名

来源:51CTO

时间: 2024-09-19 08:17:42

冲击百万年薪:11大编程语言薪资排行榜,再不学Python就晚了!的相关文章

2011年11月编程语言排行榜:Objective-C能成为年度编程语言?

Tiobe公布了2011年11月编程语言排行榜,前二十排名无多大变化.从下图的排行榜可以看到,依然是C阵营的天下. 距Tiobe发布2011年年度编程语言只有两个月的时间了,这个奖项是颁给这一年里评级增长率最高编程语言的(图1中Delta这列).相比C# (普通青年?)的+1.61%和JavaScript (文艺青年?)的+0.90%,貌似2B青年Objective-C将凭借目前2.79%的增长率成为了最佳候选人. 但是有一件非常扯蛋的事,就是Objective-C在2009年和2010年曾出现

TIOBE 11月编程语言排行榜:R语言强势前排

TIOBE发布了11月份编程语言排行榜,三甲地位依然无法被撼动(C.Java.Objective-C),不过此次引人注目的便是R语言,上升至12位,10月份排名为15位,强势前排的背后究竟是何原因在推动呢? 由于大数据的炒作,计算统计数据受到时下的关注,这也让R语言的排名收到了很大影响,下个月依然有望保持在前排.接下来让我们看看 10 月份刚发布的 Tiobe index . 前十名编程语言走势图:  后50名的编程语言排行: 4th Dimension/4D, ABC, Alice, APL,

TIOBE 11月编程语言排行榜: Haskell 要进前20了?

有人说 Haskell 是目前最成熟的纯函数式编程语言,因其具有很长一段发展史,最早可追溯到1990年,如今,它的社区正处于逐渐发展阶段. 本月,Haskell仅差0.25%就能进入排名前20位.其他排名动向:MQL4(从#52前进到#41),Hack(从#76前进到#63),Elixir(从#86前进到#64).接下来几个月又会发生什么呢?让我们一起来看下. 11月编程语言排行榜 TOP20 榜单 Top 10编程语言 TIOBE 指数走势(2002-2016) 其他编程语言排名 第21-50

毕业三年可开出百万年薪

从2008年以来,互联网公司就陷入剧情越来越狗血的人才争夺大战.人才大战中,有人抢到金子,也有人只是推高了泡沫. 可以想象,一个行业发展有多快,就有多缺人.从2008年以来,互联网公司就陷入剧情越来越狗血的抢人大战难以自拔.尤其是2010年后,移动时代到来,电商.团购.社交.手游等等蓬勃发展,人真的不够用了,极品挖人手段层出不穷. 虽然一直有专家苦口婆心:互联网人才泡沫终将破灭.但市场上"百万年薪"."三倍工资"的传闻从来有增无减.今年,手游和O2O兴起,上点儿规模

2013年全球最具影响力大数据企业排行榜

       目前全球大数据企业主要分为两大阵营.一部分属于单纯以大数据技术为核心的新兴企业,希望为市场带来创新方案并推动技术发展.另有一些原本打理数据库/数据仓储业务的老牌厂商,他们打算利用自身优势地位冲击大数据领域,将现有安装基础及产品线口碑推广到新一轮技术浪潮当中.下面我们就一起来看今天的十五家大数据企业名单,其中十家早已名满天下.另外五家则属初来乍到. 1.IBM 根据Wikibon发布的报告,作为2012年大数据业务营收成绩最好的公司,IBM过去一年从大数据相关产品及服务中获得了13亿

全球最具影响力的大数据企业排行榜

文章讲的是全球最具影响力的大数据企业排行榜,目前全球大数据企业主要分为两大阵营.一部分属于单纯以大数据技术为核心的新兴企业,希望为市场带来创新方案并推动技术发展.另有一些原本打理数据库/数据仓储业务的老牌厂商,他们打算利用自身优势地位冲击大数据领域,将现有安装基础及产品线口碑推广到新一轮技术浪潮当中.下面我们就一起来看今天的十五家大数据企业名单,其中十家早已名满天下.另外五家则属初来乍到. 1.IBM 根据Wikibon发布的报告,作为2012年大数据业务营收成绩最好的公司,IBM过去一年从大数

网络作家百万年薪背后的生存现状

硅谷网讯 昨天传来噩耗, 起点中文网签约作者"十年雪落"因为过劳猝死.网络写手的生存现状再次进入我们的视野. 1个月难以出门一次,1年只拜访过一两次朋友,每天从早上9时到夜晚10时,每天都在不停码字,这或许是大多数网络写手的写照.但支撑他们如此付出的,是行业里内越来越多的"大神"成名故事. 过去十年,以起点.纵横中文等平台为聚集地,网络文学作者群已初步形成了规模.而随着行业商业模式的成熟和移动阅读近两年的爆发,这一市场正快速催生一批高收入作者.2012年网络作家富豪

网游行业“赏金奇兵”百万年薪只是开始?

如果将网络游戏的发展从2000年开始算起,时至今日已走过将近12个年头.遥想当年那批还在以56k小猫奋战<石器时代>的玩家,如今,很多人已经成为了互联网行业的领袖级人物.12年一个轮回,而当再次被问起国产网游质量如何等问题时,答案依旧是创新不足,设计缺失等旧话. 传统的客户端http://www.aliyun.com/zixun/aggregation/13162.html">网游市场几乎被国外厂商占领,而当国外网游制造公司早已转型网页游戏市 场,并且制作出完全可以媲美客户端游

网游行业“赏金奇兵” 百万年薪只是开始?

如果将网络游戏的发展从2000年开始算起,时至今日已走过将近12个年头.遥想当年那批还在以56k小猫奋战<石器时代>的玩家,如今,很多人已经成为了互联网行业的领袖级人物.12年一个轮回,而当再次被问起国产网游质量如何等问题时,答案依旧是创新不足,设计缺失等旧话. 传 统的客户端网游市场几乎被国外厂商占领,而当国外网游制造公司早已转型网页游戏市 场,并且制作出完全可以媲美客户端游戏的时候,我们国内的网游依然停留在山寨.或是以频繁道具更新来吸金的阶段.国产网游的发展之路不禁令人担忧,而令我 们奇怪