速来报名!AICon北京站鸿蒙专场~ 了解详情
写点什么

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

  • 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:001880

评论

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

《第一章、HarmonyOS介绍》01-HarmonyOS简介

清风论

华为 前端 HarmonyOS 鸿蒙开发

如何应对团队中的刺头员工

老张

团队管理 管理者 质量保障 绩效考核

适合开发者个人的9大项目管理软件对比

爱吃小舅的鱼

项目管理 项目管理软件 个人项目管理软件

数据为王!深度挖掘天猫商品详情接口,赋能电商运营新策略

tbapi

天猫 天猫商品详情数据接口 天猫API接口 天猫商品数据采集

ITSM流程落地经验之请求管理

嘉为蓝鲸

ITSM 流程管理 请求管理

客户在哪儿AI助力ToB销售精准混圈子

客户在哪儿AI

ToB营销 ToB获客 ToB增长 ToB销售 大客户销售

成功登上主要中心化交易所 (CEX) 的终极指南:从准备到上市的全面策略

区块链软件开发推广运营

dapp开发 区块链开发 链游开发 NFT开发 公链开发

客户在哪儿AI:如何用最少场次的活动覆盖最多的目标客户

客户在哪儿AI

ToB营销 活动营销 ToB增长

公开课 | 利用AI智能体实现自动化公开课

测吧(北京)科技有限公司

测试

嘉为蓝鲸WeOps智能化模块:专属于运维的智能助手正式面世!

嘉为蓝鲸

运维 大模型 weops

中国标网正式公布BizDevSecOps能力成熟度模型标准,嘉为科技参编

嘉为蓝鲸

DevOps BizDevOps

【论文速读】| 用于安全漏洞防范的人工智能技术

云起无垠

优画质低功耗,空域GPU超分技术引领图像渲染新体验

HarmonyOS SDK

HarmonyOS

自媒体时代ToB企业该选哪些媒体做传播?

客户在哪儿AI

内容营销 ToB营销 ToB增长

Sentieon快速入门指南

INSVAST

软件 基因数据分析 生信服务

开通GPT4.0、GPT-4o的方法,门槛超低,三分钟学会

蓉蓉

GPT-4 gpt4o

客户在哪儿AI:新媒体时代ToB企业做传播该如何选择媒体

客户在哪儿AI

内容营销 ToB营销 ToB获客 ToB增长

企业的分层运维对象监控指标体系建设

嘉为蓝鲸

可观测 指标管理 指标建设

客户在哪儿AI告诉你,与什么样的平台合作才是ToB企业的最优选

客户在哪儿AI

ToB营销 ToB获客 ToB增长 ToB企业

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