机器之心报道
参与:魔王、杜伟
Stack Overflow 2020 年度全球开发者调查报告出炉。报告显示,JavaScript 连续八年成为最常用的编程语言,而在最受开发者喜爱的编程语言榜单中,Python 排名第三,较去年下降一位,被 TypeScript 超越。另一值得关注的结果是,Java 语言的薪酬收入不再是最低了。
近日,Stack Overflow 发布了 2020 年度全球开发者报告。这是 Stack Overflow 发布的第十次年度开发者调查结果,在今年 2 月份有将近 65000 名开发者参与了此次调查。
与 2018 年的 10 万参与者和 2019 年的 9 万参与者相比,这次调查的参与者数量出现下降。Stack Overflow 表示「今年,我们不打算成为规模最大的调查,而是想使此次调查更具代表性,能够代表全球各地程序员的多样性。」
这次调查涉及开发者基本情况、技术、工作和社区多个方面。机器之心选取了该调查报告的核心内容进行介绍,完整报告参见以下链接:
报告地址:
https://insights.stackoverflow.com/survey/2020#community
调查结果概览
在过去五年的最受开发者喜爱的技术榜单中,Python 语言的排名持续上升。但今年 Python 被 TypeScript 击败,从去年的第二名掉到了第三。Rust 连续五年位列该榜单第一名;
网站可靠性工程师和运维专家薪资仍然最高。80% 的受访者认为运维很重要,44% 的受访者任职公司拥有至少一名专职运维人员;
澳大利亚受访者的平均编程经验最丰富,约为 16.9 年,其次是英国和美国的开发者。而美国和英国受访者的平均工作年限最高,分别是 33.7 和 33.1 年;
超过 75% 的开发者偶尔加班(每个季度加班一至两天),25% 的开发者每周加班一至两天甚至更多;
在专业开发者中,有色人种仍然占少数。但在全部开发者中,其数量有所增加。
开发者基本情况
职业
我们首先来看受访者主要从事哪些职业。
从下图可以看到:受访者从事职业前五位分别是:后端、全栈、前端、桌面或企业应用、移动端。另外,运维专家、数据库管理工程师、设计师和系统管理工程师的比例也都在 10% 以上。
工作年限
受访者的工作年限情况如下:工作年限为 5-9 年的开发者占比最高,其次是 10-14 年、少于 5 年、15-19 年以及 20-24 年。
值得注意的是,工作年限在 25 年以上的开发者占比仅为 12.9%。
教育背景
受访者的学历情况如下:69% 的受访者是本科和硕士学位,博士学位的开发者占比仅为 2.9%。
最常用的技术
编程、脚本和 Markdown 语言
首先是最常用的编程、脚本和 Markdown 语言排名。JavaScript 连续八年荣登最常用编程语言榜首,其次是 HTML/CSS、SQL、Python、Java 等。
其中,JavaScript 的使用者比例与去年基本持平,Python 的使用者比例相比去年增长了 2.4%,发展势头迅猛。
Web 框架
最常用的 Web 框架中,排名前五的是 jQuery、React.js、Angular、ASP.NET 和 Express。
数据库
最常用的数据库排名中,位列前五的是 MySQL、PostgreSQL、Microsoft SQL Server、SQLite 和 MongoDB。
平台
在最常用的平台中,Linux 和 Windows 名列前茅,超过一半受访者表示在过去一年中使用过这两个平台做开发工作。
此外,容器技术的流行度也在逐年增长,如 Docker 和 Kubernetes。
开发者最喜爱、最头疼和最想使用的技术
最受开发者喜爱和最令人头疼的编程语言
最受开发者喜爱的编程语言排名中,Rust 连续五年成为最受开发者喜爱的编程语言,然后依次是 TypeScript、Python、Kotlin 和 Go。去年排名第二的 Python 被 TypeScript 击落,位列第三。
那么哪种语言最令开发者感到头疼呢,80.4% 的开发者选择了 VBA。
最受开发者喜爱和最令人头疼的 Web 框架
在最受开发者喜爱的 Web 框架排名中,前五依次是 ASP.NET Core、React.js、Vue.js、Express 和 Gatsby。
而开发者最头疼的 Web 框架是 Angular.js,有 75.9% 的开发者选择了该选项。
最受开发者喜爱和最令人头疼的数据库
最受开发者喜爱的数据库排名,Redis 连续四年位居榜首,然后依次是 PostgreSQL、Elasticsearch、MongoDB 和 Firebase。
而最令开发者头疼的数据库是 IBM DB2,有 76.7% 的开发者选择了该选项。
最受开发者喜爱和最令人头疼的平台
在所有平台中,Linux 依旧最受开发者喜爱,Docker 和 Kubernetes 分列二、三名。
67.0% 的开发者将 WordPress 视作最令他们头疼的平台。
开发者主要使用的操作系统
近一半的开发者选择 Windows 作为主要操作系统,选择 MacOS 和 Linux 的开发者占比相当,约为 27%。
协作工具
80% 以上的开发者选择了 GitHub 作为首选协作工具,一半以上的开发者选择了 Slack。
薪酬最高的编程语言
就全球范围来看,使用 Perl、Scala 和 Go 语言的开发者往往获得最高的薪酬,薪酬中位数约为 75k 美元。值得一提的是,Perl 语言在最令开发者头疼的编程语言中排名第三,所以高薪酬可能是为了弥补该语言开发者的短缺吧。此外,Java 也不再是薪酬最低的编程语言了。
而在美国,薪酬最高的语言是 Scala、Go 和 Objective-C。
技术的关联性
技术聚合在一起形成相关联的生态系统,供开发者使用。下图展示了关联性最高的技术:
与去年的情况类似,web 开发技术簇通过 SQL 与微软技术产生联系,运维技术簇通过 Linux 与 Python 生态网络产生关联。
不同类型开发者的薪资
工程经理、网站可靠性工程师(SRE)、运维专家和数据工程师的薪资水平最高。
薪资与不同类型开发者经验之间的关联
总体上,开发者的薪资与工作经验成正相关。但是具体到特定职位则有一些区别,例如网站可靠性工程师、运维专家和数据工程师的薪资与具备同等工作经验的其他职位开发者相比尤其地高,这与整体薪资趋势保持一致。
而设计师、移动开发者和教育者的薪资尤其地低。
以上是该调查报告中与开发者技术、薪资等较为相关的内容,更全内容请阅读原报告。