
Kent Beck:我们不是雇你来完成任务的——优秀工程师的价值在于学习而非产出
Kent Beck 在最新 newsletter 中尖锐指出:高级工程师的未来价值不在于完成多少任务,而在于他们从每个任务中学到了什么、影响了他人的能力。决定薪资的不是当前产出,而是你对未来的期权价值。
原文来源:Kent Beck - Software Design: Tidy First? — Kent Beck 谈工程师的真正价值不在于任务完成数量,而在于学习和影响力
2026年5月,Kent Beck 在他的 Newsletter "Software Design: Tidy First?" 上发表了一篇题为 "Hey, N00b, We Didn't Hire You to Complete Tasks" 的文章,在 Hacker News 上迅速引发热议。作为 Extreme Programming 创始人、软件设计模式的先驱,Beck 的观察直击当今软件开发文化的痛点。
核心洞察:你被雇来不是为了完成任务
Beck 开篇就提出了一个充满挑衅的观点:
"没人在乎你完成了多少任务。"
这不是对勤奋工作的否定,而是对价值衡量标准的重新定义。在他看来,高级工程师(seniors)真正关注的是'未来'——他们付给你的工资,本质上是对你未来价值的"期权溢价"。 你当前的生产力是低是高都在预期之内,真正重要的是你的生产力的导数(一阶变化率)——你在以多快的速度变成更好的工程师。
这个视角非常深刻:当公司雇佣一个有潜力的工程师时,招聘的不是"当前的劳动力",而是"经过学习曲线加速后的未来人才"。
—— 广告 ——
分层:B vs C,A vs B
Beck 将工程师分为三类,但他的分类标准与传统绩效评估截然不同:
| 层级 | 界定 | 核心信号 |
|---|---|---|
| A | 改变游戏规则的人 | 让周围所有人变得更高效 |
| B | 可靠的实干者 | 稳定交付,队友愿意合作 |
| C | 一年后不会留下的人 | 系统性输出低于预期 |
如何不被划入C类
Beck 明确列出了底线信号:
- ✅ 你的代码能工作
- ✅ 你告诉了别人你在做什么
- ✅ 在合理时间内完成(估算的3倍以内)
- ✅ 没有给队友带来不合理的工作(如过度审查、频繁线上事故)
- ❌ 任何试图欺骗系统的行为(声称虚假完成)→ 直接划入C
"永远不要两次发出同样的C类信号。"
如何成为A类
A类与B类之间的区分,不取决于你关掉了多少个工单,而取决于你从每个任务中学到了多少。
Beck 列出了10个"A类信号":
- 说服团队某个任务根本不需要做——价值最高的工作通常不是"做",而是"决定不做"
- 通过数据分析,找到10%的任务产生90%价值的那个核心——这是洞察力的标志
- 用多种方式实现同一个任务——探索不同方案,而不是满足于第一个可行解
- 发现更好的设计,提交一串不仅完成任务还简化了其他代码的diff——最理想的是在动手之前做"让困难的变更变得容易"
- 提交一串小diff而非一个大diff——增量变更有利于review,每日提交是加分项
- 编写简化类似任务的内置工具——但如果不存在类似任务,则扣分
- 在不忽视自己任务的前提下,在无关领域提交有价值的diff
- 将学到的内容写成一篇文章,有趣、有用、有说服力
- 做一个有洞察力且响应迅速的代码审查者
- 包含可靠的单元测试——Beck 自嘲说"我多希望这属于B类信号,但一步一个脚印吧……"
"所有A类信号都有一个共同特征——它们都比仅仅完成任务所需的时间更长。"
时间管理:把省下来的时间投资给自己
Beck 指出,如果已经够忙了,额外的时间从哪来?答案是他在另一篇尚未写出的文章 "Everything You Need To Know About Programming But Didn't Know To Ask" 中将要阐述的原则。核心就一句话:
把省下来的时间投资在自己身上,并以惠及他人的方式使用。这就是我们在寻找的。
这让我想起了另一句经典:"Take time to sharpen the saw"(花时间磨锯子)。每天看上去少干了活,但锯子快了的你明天能干更多。在软件开发中,这体现为花时间重构、写测试、学习新工具、改进流程——这些"看起来没有产出"的事情,恰恰是长期效率的源泉。
对独立开发者的启示
作为一个独立开发者,Beck 这篇文章让我反复回味。一个人的时候,没有经理告诉你A类信号是什么,很容易陷入"有事就干"的被动模式——工单来了就做,做完了就下一个,日复一日。
但真正能让你从"副项目一堆却没收入"走向"产品有质量有收入"的,恰恰是这些A类信号:
- 第1条和第2条:学会拒绝和聚焦——绝大多数独立开发者失败不是因为做得太少,而是因为做得太杂
- 第4条和5条:代码质量不是奢侈,是生存成本——代码库无法维护时,迭代速度会骤降到零
- 第8条:写文章分享——这正是这个网站做的事情。分享不仅建立个人品牌,更重要的是它强迫你组织思路、发现盲点
结语
Kent Beck 的这篇文章是一面镜子。它照出了一个朴素的真理:在软件行业,长期价值从来不来自于短期效率。 你的工资是期权,你的学习曲线是回报。那些愿意花时间"看起来没产出"的事情——反思、重构、学习、教学——的人,最终会走出最大的成长曲线。
"没人雇佣你是为了完成任务的。"——看懂这句话的人,前途无量。
© 2026 四月
原文链接:https://www.aprilzz.com/ramble/kent-beck-not-hired-to-complete-tasks
相关文章
「The Coming Loop」—— Armin Ronacher 谈 AI 编程的循环时代
Flask 作者 Armin Ronacher 发表了一篇令人深思的博文,探讨 AI 编程从「交互式提示」向「循环化自动运行」的转变。当你的工作不再是写代码,而是写一个不断调用 AI 的循环时,软件开发的核心逻辑正在被重写。
再见,自行车棚:Poul-Henning Kamp 对开源软件未来的最后预言
开源运动元老 Poul-Henning Kamp 在他最后一篇 Bikeshed 专栏中,深入剖析了 AI 代码审查、年龄验证、欧盟数字主权等因素将如何重塑 FOSS 的未来
2026 年,为什么还要自己写代码?
当 AI Agent 能写大部分代码时,一个资深工程师给出了出人意料的答案——写代码不是为了产出,而是为了思考。