一、概述
Stack Overflow近期发布了《2019年开发者年度调查报告》,近90,000名开发者接受了本次调查。Stack Overflow对本次调查给出的关键结论是:
Python成为2018年年度增长最快的语言。
超过一半的受访者在16岁就写下了人生第一行代码(因地域、性别而异)。
DevOps工程师与可靠性工程师的薪资最高。越是资深的工程师,对当前的工作越满意,越不容易寻找新的工作。
中国开发者的乐观情绪占比最高,而法国、德国等西欧国家的开发者则垫底。
男性开发者认为非开发工作是影响效率的根因,而女性开发者则认为糟糕的环境是罪魁祸首。
Stack Overflow能为开发者每周节约30~90分钟。
本次被调查开发者以美国、印度、西欧国家为主,中国的受访比例只占0.75%。所以,本次报告对现今中国开发者状态的参考价值不大。但是,我们可以从世界的潮流中学习并预测中国的软件开发的发展趋势。
笔者对Stack Overflow的关键结论颇有微词,故重新整理出关键结论:
全球范围内都存在中年危机,但欧美国家的中年危机出现在40岁之后,稍比国内普遍担忧的35岁略有增长。
全栈工程师的趋势越发明显。
成为开发角色的年龄进一步下探,同时越来越多的学生、独立开发者加入进来。
越是资深的开发者,对当前的工作越满意(或更容易满足),寻找下家的欲望更多(或者是更加不敢换工作)。
开发者接受过高等教育的比例提升,同时专业背景为计算机相关课程受到更多的青睐。
开发者中,男女比例约 12: 1。
开发者普遍对管理的工作或角色不感冒。
开发者的加班现象并不严重,平均每周约40~44小时为主流。
开发者的迷之自信,接近70%的受访者认为自己的能力超过平均水平,且仅不到10%的人认为自己处于平均水平以下。
管理者、可靠性工程师及DevOps专家收入最高,Clojure、Go、Scala等语言则成为收入领先的编程语言。
全球的开发都在吐槽:嘈杂的工作环境、会议多、与开发无关的任务。
二、开发者
2.1、分布
受访者中的50%是全栈工程师,他们中的17%同时还是移动开发工程师。平均每个受访者约3个角色,其中全栈工程师与前端开发、后台开发是最常见的配对,数据库管理员与系统管理员、DevOps专家与可靠性工程师、设计师与前端开发 也是高度关联的配对组合。
其中QA Or Test的占比约7.8%,此比例将会受到质疑,因为在开发者网站上的调查,其对测试领域的调查渗透是不足的。这就好如在TesterHome等网站上调查软件从业者角色一样,得出的结论可能是超过50%的受访者会从事测试工作。
2.2、猿龄
受访者中,以15年以下(超过82.4%)工作经验为主。每个年龄间隔的程序猿占比会逐步降低,说明随着工作年限的推移,开发者逐步被淘汰。不仅在中国,全球趋势都是类似的,中年危机无处不在,社会讲究的是优胜劣汰。
猿龄 表示 成为全职程序猿的年限。
2.3、平均猿龄
2.4、年龄分布
开发者的年龄集中在20~35岁之间,随着年纪的增长,被淘汰的开发者越来越多。
2.5、受教育程度
受访者大多接受本科及研究生学历教育(及部分辍学生),低于该学历的占比约6%
2.6、大学专业
2.7、性别
2.8、胜任力
接近70%的受访者认为自己的能力超过平均水平,且仅不到10%的人认为自己处于平均水平以下
三、技术
3.1、编程语言受欢迎程度
被誉为世界上最好的语言并不是最欢迎的语言,排名设置有点靠后。
占据前面位置的HTML/CSS及SQL是不是语言值得商榷。
3.2、Web框架
jQuery是不是web框架值得讨论,起码与ASP.NET或Django不是一个级别的
3.3、数据库使用
3.4、开发平台
3.5、开发环境
VS Code 威武!
3.6、常用操作系统
3.7、区块链应用
3.8、收入排行
四、工作
4.1、工作状态
4.2、公司领域
4.3、公司规模
4.4、对管理的预期
4.5、上次换工作的时间
4.6、影响工作效率
4.7、代码评审比例
4.8、每周代码评审时长
4.9、单元测试
4.10、收入状况
4.11、工作时长
五、小结
本次的调查结果有值得我们参考的价值,值得我们学习。另外,从调查结果中,我们可以进一步梳理出开发技术的关系链,指引测试的进一步深入了解与实践。