2025上半年,最新 AI实践都在这!20+ 应用案例,任听一场议题就值回票价 了解详情
写点什么

为什么顶级软件工程师得不到应得的薪水?

  • 2020-09-03
  • 本文字数:1684 字

    阅读完需:约 6 分钟

为什么顶级软件工程师得不到应得的薪水?

史蒂夫·乔布斯说过,在软件开发行业,软件开发者的最好水平与平均水平之间的差别是 50:1;甚至可能是 100:1。如果你是一名软件工程师,可能会同意乔布斯所说的。


软件工程师的最好水平与平均水平之间的差距真的非常大,比大部分职业都大得多。


然而,也有一些行业的人才分布跟软件行业类似,最常见的就是职业运动员。1%的运动员表现比平均水平好得多,而这种天分差距也反映在运动员的工资上,这是完全有道理的。例如,美国职业棒球大联盟的顶级投手之一斯蒂芬·斯特拉斯堡(Stephen Strasburg),在 2019 年拿到了 3800 万美元,而美国职业棒球大联盟的平均工资是 430 万美元。


如果说工资反映了运动员的贡献,那么,为什么软件开发者的工资分配跟职业运动员的工资分配不一样?

为什么评价一个软件工程师那么难?

我认为,这主要是因为企业不能像体育俱乐部评价他们的球员那样评价软件工程师。


大部分职业体育项目都有非常完整且客观的运动员统计数据,管理人员可以相当准确地评价运动员。因此,俱乐部会为那些优秀的球员支付更高的工资,因为每个人都知道他们是优秀的。如果一家俱乐部不想付那么多钱,其它俱乐部会愿意付。尽管有时候一个运动员的价值和价格会有一些差异,但两者之间的差距永远不会太大。这正是信息非常透明时,市场的运作方式。


而软件开发市场就是一个完全不同的世界。你不可能知道某人是否是一个好的软件工程师,除非你曾经与他们密切合作过很长一段时间。


如果你是一个程序员,你可能会有一个能够贡献 10 倍、50 倍平均产出的同事。如果现在你是这个人上级的上级,你会知道他/她是一个“10 倍工程师”吗?如果你的 CTO 或 CEO 知道他/她是一位如此出色的工程师,会愿意支付比平均水平高 10 倍的工资来留住他们吗?


很可能不会。


事实上,那些“10 倍工程师”们只得到 10%的加薪,仅此而已。根本原因是人们不知道他们有多好,除了直接接触的同事。

编程面试结果作为评价依据是否可行?

事实上,从大型科技公司的招聘流程中就可以看出评价一个软件工程师是多么的困难。


对于程序员来说,最常见的技术面试流程是要求他们解决非常具有挑战性的编程问题。如果面试者之前从未见过这些问题,那么大部分这些问题都非常难解决。这也是为什么许多人选择集中练习(或记忆)可能的面试习题集(这也称为 leetcoding)。


同时,在短时间内解决复杂算法问题的能力与一个人在工作中的表现并不高度相关。一个软件工程师在工作中所做的事情与解决那些预先定义好的编程面试问题是完全不同的。这并不是评价软件工程师能力的一个理想方式。


软件工程师在工作中需要解决的许多问题是非常模糊的。知道如何将一个模糊的问题分解为几个定义好的编程子问题,以及如何将一个业务问题框定为一个已经深入研究的学术问题,对于成为一个高效工程师来说是非常重要的。


尽管大部分公司已经意识到招聘过程中的这个问题,他们仍然倾向这么做。为什么?因为没有更好的方法来评价一个软件工程师的能力。也许这种传统的面试流程只能衡量一个软件工程师工作能力的 20%,但总比什么都没有强。


所以,你知道这有多么难了。

考核并不能使工资分配更平均

我之所以提出上面的面试例子,是为了说明几乎不可能用一种弹性的方法来评价一个软件工程师。现在,我想做一个思维实验来进一步阐述这一观点。


假设程序员的能力与职业运动员的能力一样容易衡量。如果这个假设是真的,你的工程师同事应该有些人拿年薪 200 万美元,而有些人拿年薪 10 万美元。即使他们都知道彼此的薪水和分配有多极端,他们仍然会感到公平。因为他们知道那些拿 20 倍薪水的人比其他人优秀 20 倍。他们值那么多薪水。


但试想一下,如果一个公司真的这样分配薪水,人们会不会感到不公平甚至愤怒?我想他们肯定会的,除了那些优秀工程师的亲密同事(那些每天和他们一起工作的人)。


由于几乎不可能大规模且客观地评价软件工程师能力,公司会更倾向用一种比较安全的方式来分配软件工程师的报酬,尽管这可能不会真实地反映出他们的能力。


原文链接:


Why Aren’t Companies Paying 50X Software Engineers 50X More? Why The Programming Job Market Is Not Like Professional Sport’s Free Agency?


2020-09-03 07:001992

评论

发布
暂无评论
发现更多内容

叮!你有一份夏日福利待签收

KaiwuDB

时序数据库 大促 KaiwuDB

英特尔携钉钉及新华三以创新解决方案变革未来远程协作体验

E科讯

AI绘图:艺术与科技的交融 | 社区征文

IT蜗壳-Tango

年中技术盘点

AI与HPC融合,未来会朝什么方向发展 | 社区征文

瓜瓜猪

年中技术盘点

敏捷产品经理企业培训内容要点

顿顿顿

Scrum 敏捷 Scrum Master 敏捷开发管理工具

PaddleSlim +​OpenVINO助力开发者实现Al模型量化与部署

飞桨PaddlePaddle

人工智能 百度 paddle 百度飞桨

AITO问界,先经沧海而后造船

脑极体

智能汽车

Spring高手之路1——深入理解与实现IOC依赖查找与依赖注入

砖业洋__

ioc 依赖注入 spring框架 依赖查找 IOC面试题

第四届“先导杯”全国挑战赛正式开赛 百万奖金等你来拿

科技热闻

【7.14-7.21】写作社区优秀技术博文一览

InfoQ写作社区官方

热门活动 优质创作周报

6位字节跳动资深技术人,给校招生的10个成长建议

字节跳动技术范儿

字节跳动 校园招聘

Docker 镜像的导出与导入

陈皮

Docker save load

Nautilus Chain 主网上线,创世 ZBC 质押即将开启

股市老人

工具产业推广级!腾讯云 CODING 度量平台获得业内权威机构高度认可

CODING DevOps

Unity 发布《2023 移动游戏增长与变现报告》,聚焦游戏行业高效增长策略

极客天地

[Huggingface]系列文章(1)-认识Transformers

alexgaoyh

文本分类 文本生成 huggingface sentiment-analysis text-generation

掌控MySQL并发:深度解析锁机制与并发控制

砖业洋__

表锁 MySQL并发控制 隐式锁 插入意向锁 行锁

AI 改变我们的工作方式 | 社区征文

宇宙之一粟

年中技术盘点

前、后端通用的可视化逻辑编排

悠闲的水

低代码 逻辑编排 低代码平台 可视化编排 可视化开发

喜报| 无限极入选信通院 2023 XOps“领新杯”业技融合攻坚先锋案例

CODING DevOps

HTTP接口性能压力测试

javalover123

性能测试 压测 API 压力测试 HTTP API

新兴技术对中药学的革命|社区征文

爱技术的药学生

AI AIGC 年中技术盘点

2023-07-20:假设一共有M个车库,编号1~M,时间点从早到晚是从1~T, 一共有N个记录,每一条记录如下{a, b, c}, 表示一辆车在b时间点进入a车库,在c时间点从a车库出去, 一共有K

福大大架构师每日一题

福大大架构师每日一题

Spring高手之路2——深入理解注解驱动配置与XML配置的融合与区别

砖业洋__

XML配置 spring框架 注解驱动配置 组件注册 组件扫描

Filter for GO

数由科技

单线程 Redis 如此快的 4 个原因

越长大越悲伤

redis redis为什么如此快

C语言 typedef的用法示例讲解

芯动大师

为什么顶级软件工程师得不到应得的薪水?_语言 & 开发_Tech Things Around_InfoQ精选文章