2019开发者调查结果和总结
翻译自开发者调查结果2019。
概要
今年,将近90,000名开发人员告诉我们他们如何学习和升级,他们正在使用哪些工具以及他们想要什么。
Stack Overflow的年度开发者调查是对世界各地代码人员进行的规模最大,最全面的调查。每年,我们都会进行一项调查,涵盖从开发人员最喜欢的技术到工作偏好的所有内容。今年是我们发布年度开发者调查结果的第九年,今年早些时候有近90,000名开发人员参加了20分钟的调查。
尽管我们的调查具有广泛的影响力和能够为有价值的结论提供信息,但我们承认,我们的结果并不能代表开发者社区中的每个人。我们还有进一步的工作要做,使Stack Overflow成为我们想要的热情,包容和多样化的平台,这反映在我们的调查样本中。我们致力于建立我们在2018年采取的步骤,并在今年及以后的这一领域进行改进。其中一些调查结果直接指导了这些努力。
为了解决我们数据的特征,请务必查看我们按国家/地区或性别汇总结果的位置,突出显示代表性不足的种族/族群的结果,或使用调查权重来纠正人口偏差。
我们在整个分析过程中按人口统计数据查看了细分,在大多数情况下,它没有产生显着影响。查找图标以查看我们突出显示结果的位置,它确实产生了有趣的影响。另外,请务必查看今年的一些新主题,从每周工作时间到最佳音乐,以便在编码时收听!
重要指标
Python是增长最快的编程语言,主要近年来的大数据、人工智能等,处于一个风口时期,还有一个原因就是Python简单容易上手。
- Python是增长最快的主要编程语言,在我们的调查中再次出现在编程语言的行列中,今年逐渐淘汰了Java,并成为第二个最受欢迎的语言(仅次于Rust)。
- 超过一半的受访者在他们十六岁时编写了第一行代码,尽管这种经历因国家和性别而异。
- DevOps专家和现场可靠性工程师是薪酬最高,经验最丰富的开发人员,他们对工作最满意,并且正在寻找最低水平的新工作。
- 在我们调查的最重要国家中,中国有最乐观的开发商,他们相信今天出生的人将比父母拥有更好的生活。法国和德国等西欧国家的开发商对未来最不乐观。
- 在考虑阻碍生产力时,不同类型的开发人员会报告不同的挑战。男性更有可能说负责非开发工作对他们来说是一个问题,而性别少数受访者更有可能说有毒工作环境是一个问题。
- 我们要求受访者考虑他们最后一次使用和不使用我们的网站解决编码问题。数据表明Stack Overflow每周为开发人员节省30到90分钟的时间!
开发者比例
其中全栈的和后端开发的超过 50%,对于全栈来说,主要技术人员的技术知识普遍提升了,举个例子,之前一个开发估计只会后端的开发,前端的CSS从来不过问,而今天的一个公司的开发人员,从运维、开发、前端、后端、设计等都会。但是全栈对我们来说是一件好事,但是还是需要自己慢慢的沉淀下来,在自己的擅长的领域继续耕耘,在一个行业、领域有深度。
大约50%的受访者认为是全栈开发者,约17 %的受访者认为自己是移动开发者。今年每位受访者的开发者类型标识的中位数为3,最常见的对是后端,前端和全栈开发人员的组合。高度相关的对包括数据库管理员和系统管理员,DevOps专家和站点可靠性工程师,学术研究员和科学家,以及设计者和前端开发人员。
调查加权是一种用于在调查样本与基础人口不匹配时分析调查数据的方法。例如,在我们今年的调查中,11%的美国受访者认为是女性,但美国劳工统计局的数据估计,女性参与软件开发人员的人数大约是女性的两倍,更像是20%。我们可以使用调查权重来调整我们的调查样本与开发人员之间的不匹配。我们知道按性别划分的开发者类型表示存在差异,让我们比较美国原始结果与加权比例的总体比例,假设我们按照BLS报告指出的比率对性别少数群体进行欠采样。当我们使用加权时,我们看到开发者角色的代表性略有增加,这些角色最能代表女性,如设计师,而女性代表性较低的其他角色则减少,如DevOps。
我们知道,我们的调查样本有多种方式与开发人员的基本人口不匹配,而不仅仅是性别(包括Stack Overflow的使用频率),而美国并不是我们期望这种不匹配的唯一国家。我们在这里使用这个加权的具体例子的原因是,我们知道我们有一个系统的抽样问题,我们估计了预期的人口比例。我们可以在方向和幅度上证明我们的调查样本对我们的结果的影响。
贡献开源
在工作中的时候,经常遇到awesome的技巧,不是一蹴而就的,养成一个阅读源码的习惯,多为开源做贡献,到时候coding起来简直就是信手拈来。
Stack Overflow上大约65%的专业开发人员每年为一年或更长时间的开源项目做出贡献。参与开源因语言而异。使用Rust,WebAssembly和Elixir的开发人员以最高的速率为开源做贡献,而使用VBA,C#和SQL的开发人员以大约一半的速率开发。
业余编程
许多开发人员在工作之外处理代码。大约80%的受访者表示他们将自己编码为业余爱好。软件以外的其他职责可以减少开发人员对编码的参与度; 那些说他们有孩子或其他照顾责任的开发人员不太可能将编码作为一种爱好。女性受访者也不太可能将自己的代码视为业余爱好。
码龄
开发人员拥有广泛的经验水平,Stack Overflow上45%的专业开发人员在不到10年前学会了编码。详细了解体验与性别的关系。
超过40%的受访者拥有不到五年的专业编码经验。使用VBA,F#和Clojure等语言的开发人员拥有最多年的专业编码经验,而使用Python,PHP和Kotlin等语言开发人员的开发人员最少。
在不同软件开发领域工作的开发人员具有不同的平均经验。除了技术主管和经理之外,为嵌入式设备构建的SRE和开发人员拥有最丰富的经验,而学术研究人员和数据科学家拥有最少的经验。站点可靠性工程和DevOps的相关角色和规则有些新,但在该领域工作的人员经验丰富。
语言、框架、操作系统
连续第七年,JavaScript是最常用的编程语言,但Python 再次上升。今年,Python在整体排名中略微超出了Java,就像去年超过C#和前一年的PHP一样。Python是当今增长最快的主要编程语言。
今年,我们与其他框架和库分别询问了Web框架。jQuery是这些Web框架中使用最广泛的,今年更多的开发人员说他们使用React.js而不是Angular,这是去年的转换。
这是我们第一年询问此类别中的许多技术,而Node.js是最常用的。越来越多的开发人员说他们使用.NET而不是.NET Core,深度学习框架TensorFlow比深度学习框架Torch / PyTorch更受欢迎。
Linux和Windows是我们的受访者表示他们今年已完成开发工作的最常见平台。我们今年第一次询问了像Docker这样的容器技术,Docker是第三个使用最广泛的平台。
公司相关
软件开发人员在技术领域内外的各种行业中工作。在我们今年使用的行业选项中,更多的专业开发人员表示,他们为从事通用软件开发(未另行规定),IT和金融/银行业务的公司工作。在咨询,政府和非营利组织等行业工作的开发人员拥有多年的专业编码经验,而从事Web开发或SaaS工作的开发人员整体编码经验的中位数年数约为其中数的一半。
开发人员在各种规模的公司工作,从小型企业到大型企业组织。与包括欧洲在内的世界其他地区相比,美国更多的软件开发人员在大公司工作。开发人员越有经验,他们就越有可能在一家大公司工作。平均而言,每增加一年的专业编码经验与开发人员组织规模增加30人相关。
我们今年向专业开发人员询问了他们上次成功的面试过程,这些过程导致了工作机会,以及他们经历过的任务类型或面试。最常见的经历是接受高级人员和经理的采访,只有不到40%的受访者表示要求编写任何代码。女性更有可能报告完成一个带回家的项目,并且不太可能说他们被要求解决脑筋急转弯难题而不是男性,这与他们申请的角色类型有关(更多的前端和数据科学)带回家项目盛行的角色)。
其他
当被问及音乐艺术家或类型是什么帮助他们集中注意力时,受访者回答了各种各样的音乐,包括古典音乐,电子游戏或电影配乐,比我们知道的更多种类的金属,以及没有歌词或人声的音乐。百分之几的受访者表示他们更喜欢沉默以进行集中注意力。
使用Clojure,Scala,Go,Rust和R中出现在该图表上方的语言的开发人员,即使他们拥有多少经验,也会获得更多报酬。然而,使用低于该行的语言的开发人员,如PHP,汇编和VBA,即使有多年的经验,也会得到较少的报酬。此图表中圆圈的大小表示与其他开发人员相比,使用该语言的开发人员数量。
小结
从个人来看,一些看法和瞎扯淡。可以从语言增长曲线和收入曲线中找到,比较热门的岗位和高收入岗位。还有一个从程序员爱好角度出发,说不定做一个小众的听歌软件,推荐一些非常nice、而且适合程序员听的歌曲。趋势非常重要,不知道像5G、VR、自动驾驶、IOT等会给我们带来什么,期待您的留言与分享。
作者:叉叉敌
博客:https://chasays.github.io/
微信公众号:Chasays, 欢迎关注一起吹牛逼,也可以加个人微信号「xxd_0225」互吹。
本博客大多为学习笔记或读书笔记,本文如对您有帮助,还请多推荐下此文,如有错误欢迎指正,相互学习,共同进步。