在IT领域,不乏有很多领导喜欢用代码行数来衡量技术人的工作量,但这种方式往往掩盖了一些实际情况。
斯坦福大学不久前做过一项研究,揭示了一个令人震惊的现象:在大型科技公司里,有一部分工程师的工作量极低,每周实际工作时长仅约5小时,每月甚至只提交两次代码更改,年薪却高达20万到30万美元。这类人被称为“”。该研究数据显示,这类几乎没有实质性贡献的工程师占比约9.5%,导致科技行业每年损失高达900亿美元。
但事实是否真的如此?程序员不写代码等于没产出?他们每天中到底有多少是用来写代码的?
中国开发者平均薪资位居全球第14位,中位数为23万元
在中国开发者群体中,18-29岁的年轻开发者占比63%。
放眼全球程序员薪酬,美国程序员以高达144K美元(约105万元)的中位数年薪遥遥领先。中国程序员的薪酬排名第14位,中位数薪酬为31.2K美元(约23万元)。这表明尽管中国在科技和互联网领域迅速发展,并且对于编程人才的需求持续增长,但与全球顶尖市场相比,中国的薪酬待遇仍有较大的提升空间。
值得注意的是,这里的薪酬数据是中位数,具体薪资会根据个人的经验、技能、公司规模和地区等因素有所不同。
15%受访者的薪酬主要集中在24k-36k美元范围内。
Scala语言薪酬最高、全球一半的程序员在用Python
在工具维度,JavaScript是开发者最常用的编程语言,占比61%,和去年持平。对此,JetBrains官方分析道,“一旦开发人员选择了一个生态系统,他们往往就不会计划采用任何其他技术或工具集。通常情况下,开发者倾向于选择他们喜欢的东西并坚持他们所了解的东西”。
此外,其他最受开发者欢迎的编程语言Top5分别为Python、HTML/CSS、SQL、Java。
与JavaScript相比,TypeScript在开发体验上提供了显著的改进。它不仅能在编译阶段捕捉错误,提前发现潜在问题,从而提高代码质量,还简化了长期维护的工作。TypeScript增强了重构的安全性和效率,减少了出错的可能性,并且原生支持ES6模块系统,使得代码组织更加清晰。
那么,TypeScript会取代JavaScript吗?
答案是“不”!
JetBrains官方认为,JavaScript是软件开发行业中最流行和最基本的技术之一,可以肯定地说,它不会很快消失。虽然TypeScript因其增强的功能和优势而越来越受欢迎,但JavaScript的广泛采用、简单性和强大的生态系统确保它仍然是Web开发的重要组成部分。TypeScript不会取代JavaScript,而是更有可能继续与JavaScript共存,为开发人员提供基于其项目需求和偏好的选择。
对此,JetBrains分析道,“七年前,我们第一次进行调查时,Python的份额为32%(几乎与PHP的30%持平),而现在,全球超过一半的程序员都在使用Python。”
对于过去几年间,美国政府呼吁开发者应该在新程序开发时放弃使用C/C++语言而选用内存安全语言的争议,JetBrains结合开发者的选择,分析了当前Rust的最新进展。整体来看,美国政府的呼吁一定程度上促进了业界对Rust的采用。
数据显示,在今年最受欢迎的语言中,唯一创下使用率新高的语言便是Rust。Rust立志以其严格的安全性和内存所有权机制取代C++,其用户群在过去五年中稳步增长。根据JetBrains的数据,六分之一的Go用户正在考虑采用Rust。
最后,再来看看薪水最高的编程语言究竟都有谁?
调查显示,它们分别是Scala、Go、Kotlin、C++、Rust、C、Shell、Java和Python。但是,薪水并不仅仅由语言决定。工作角色很重要!例如,Shell脚本属于薪水最高的类别,因为它被DevOps工程师大量使用,而他们的薪水通常更高。
ChatGPT是最受欢迎的AI辅助编码工具
通过JetBrains提供的原始数据(未加权)来看,AnthropicClaude虽然只有2.7%的受访者使用,但采用率却高达52.4%,显示出良好的满意度。按采用率排名,接下来是Codeium,采用率为48.3%,然后是GoogleGemini/Bard,采用率为37.6%,JetBrainsAIAssistant的采用率为37.2%。
这些数字不仅反映出AI工具在编程领域的普及程度,也揭示了它们对提高生产力和简化复杂任务的重要作用。
整体来看,大多数公司(近80%)要么不同程度地允许使用第三方AI工具,要么没有制定政策,只有11%的公司完全禁止在所有项目中使用,这意味着很多人对“AI威胁论”的恐惧正在逐渐消退。
多数受访者觉得,AI工具在提高效率、减少重复劳动和提升开发体验方面表现尤为突出。
在这次调查中,JetBrains还特别设置了“您是否使用虚拟现实(VR)设备进行编码?”一问,要知道在今年之后,有不少开发者尝试在这类设备里面编码。当时,有开发者反馈,“某种程度上来说,我感觉就像站在一个大机房里,这与传统的桌面体验完全不同”,但是因为设备太重,也有不少人吐槽称,这样看代码太累了。
无论如何,这都是一种新型的编码方式。
时下,这一方式是否已经普及?数据显示,并没有。
49%的受访者虽然想要尝试,但是还没有开始使用。
桌面开发比移动开发更为普遍
根据调查,58%的开发人员在浏览器平台上运行代码。桌面紧随其后,占比53%,这表明尤其是对于需要更多功能或专用工具的任务而言,桌面更为重要。移动设备占30%,也呈现增长趋势,但尚未赶上桌面的使用率。
开源数据库占主流
近年来,数据库的受欢迎程度一直保持相当稳定。开源数据库(MySQL、PostgreSQL、MongoDB、SQLite和Redis)占据了开发人员使用的存储选项的主导地位。
在云服务方面,AmazonWebService排名第一,占比46%。阿里云并列第三,有11%的受访者使用,相较去年有所提升。
同时,49%的开发者表示在本地使用Docker,这表明Docker已成为开发环境中的主流工具。此外,25%的开发者表示不使用任何虚拟化或容器技术,这意味着仍有一部分开发者依赖传统的开发方式。
软件开发者的就业市场趋势
过去两年间,随着国际市场经济环境的变化,「裁员」、「降本增效」、「开源节流」成为科技行业热议的话题。对于身处在这一领域的开发者而言,究竟受到了怎样的影响?
调查数据显示,一半的受访者称所在的公司没有裁员,这表明目前整个行业似乎相对稳定。然而,14%的企业经历了大规模裁员,三分之一的企业面临小规模裁员。
对于个人而言,超过50%的受访者没有直接受到裁员的影响,但有30%的人受到了间接影响。16%的人失去了工作。
在这一趋势下,大多数开发人员觉得自己的工作安全可靠。只有11%的人声称自己在某种程度上感到不安全。
日常工作中,近一半的员工觉得自己的工作量与期望值相比有些多。41%的人称和自己预期一样。
根据这份报告,技术人员在工作中面临的最大挑战主要集中在三个方面:38%的受访者认为了解用户需求最具挑战性,这反映了在快速变化的市场需求中,准确捕捉用户需求的难度;34%的人认为与其他工作角色的沟通是主要挑战,这表明跨部门协作和有效沟通在项目成功中的重要性。32%的人表示理解他人的代码也很具挑战性,这凸显了代码可读性和团队协作的重要性。
这些数据表明,除了技术技能外,软技能如沟通能力和理解用户需求的能力在现代软件开发中同样至关重要。