询问任何工程副总裁 AI 编码工具是否能提高生产力,他们都会给出肯定的回答。但如果你询问一名在一套拥有十年历史的代码库中工作的资深工程师(Staff Engineer),这套代码库里有六个没有文档记录的数据模型,部署流程全靠 Shell 脚本维系,你得到的答案将会截然不同。
AI 编码工具带来的生产力提升呈现出一种大多数组织尚未完全消化的分化态势。初级工程师在每周完成的任务量上看到了 27%–39% 的提升。而在一项针对真实世界问题的受控研究中,资深开发者在使用 AI 辅助时,完成任务所需的时间反而比不使用时增加了 19%。这两个结果都与这些工具的工作原理相一致 —— 并且它们正导向一个目前正在工程团队中悄然上演的管理陷阱。
METR 对 16 位资深开源开发者的研究发现了一个令人不安的事实:尽管开发者“预期” AI 能将速度提升 24%,但实际开启 AI 后,任务完成时间比不开启时增加了 19%。这并非抽样误差。这些都是在真实代码库上工作的资深工程师,使用的是主流工具。主观上,他们还认为 AI 帮助了他们 20% —— 这种认知偏差使得这一结果更难被重视和应对。
与之形成鲜明对比的是针对初级和新晋开发者的研究,在这些群体中, AI 工具确实能显著提高效率。这种生产力差异是真实存在的,并且直观地反映了每个群体面临的不同瓶颈。
初级工程师的瓶颈在于执行速度。他们大致知道需要构建什么,但会将时间耗费在语法、标准模式、样板代码以及繁琐的调试搜索上。 AI 几乎消除了所有这些摩擦。瓶颈消失了,产出随之跃升。
资深工程师的瓶颈在于决策能力 —— 即每周能做出的困难决策数量、对系统后果的思考深度,以及能同时保持在工作记忆中的组织上下文。 AI 无法触及这些瓶颈。它生成代码,但这意味着现在有更多的代码需要评审、验证和思考,而资深工程师同样要承担这部分工作。
应对组织复杂性。 资深工程师知道为什么某个特定模块要设计成那样:背后可能有一位负责该领域的副总裁,一次在招聘冻结期间只完成了一半的迁移,或者是原始设计出炉六个月后才提出的合规要求。 AI 完全没有这些背景信息。它可能会生成一个技术上正确的重构,但却破坏了不成文的组织约束,而资深工程师的工作就是发现并阻止这种情况。
调试晦涩系统。 成熟系统中的生产问题往往涉及遗留行为、基础设施特性和未记录假设的交织。 AI 可以快速总结写得烂的代码,但根据实际系统行为验证这些总结仍需要人类专家。思考系统“实际做了什么”—— 而非它的代码“说了什么”—— 的专业能力,仍然是最难被自动化的。
架构后果推理。 AI 擅长局部解决方案。资深工程师则擅长全局一致性 —— 理解一个看似微小的接口改动可能会向上游波及三个服务,向下游波及到一个两年没动过的客户端库。这种判断力来自于对系统规模的把握,而非对训练数据的模式匹配。
识别哪些东西不该构建。 初级工程师会问“我该如何实现这个?”资深工程师则会问“我们到底应不应该实现这个?”决定砍掉某个功能、简化某个设计或回绝某个产品需求,需要权威、背景信息和判断力,而这些是 AI 无法生成的。
那些在 AI 普及浪潮中没有陷入瓶颈的工程师都有一个共同点:他们已经从“编写代码”转向了“大规模编排产出”。杠杆点并没有消失——它们只是转移了。
并行委派(Parallel delegation)。 资深工程师可以同时排队处理五个 AI 辅助任务——例如范围明确的问题、文档缺失、测试覆盖——同时将自己的精力集中在那个需要深度推理的任务上。Formation 的研究发现,高效的资深工程师将 AI 视为一个并行工作队列,在 AI 处理执行任务的同时,他们处理 PR 审查和架构决策。串行交付会限制吞吐量;并行队列则能产生复利效应。
提示词框架设计(Prompt framework design)。 为特定代码库生成正确、地道、安全的代码的提示词并不是显而易见的。它编码了架构决策、安全约束、测试模式以及代码库本身并不存在的组织惯例。投资于设计和维护这些框架的资深工程师创造了一个惠及团队每个人的力量倍增器——而这项工作恰恰需要 AI 所缺乏的上下文深度。
遗留知识显性化(Legacy knowledge externalization)。 AI 加速了将未记录的系统知识转化为显性产物(如 API 规范、架构决策记录、运行手册)的过程。承担这项工作的资深工程师正在将他们的隐性知识转化为一种形式,这种形式在他们最终离职后依然存在,并让 AI 对团队其他成员更有用。这是随时间产生复利的高杠杆工作。
AI 产出的治理与防护栏(AI output curation and guardrails)。 设计 Lint 规则、架构约束和审查清单,使 AI 生成的代码在团队规模上值得信赖,这本身就是一种资深级别的能力。它需要理解在特定代码库上下文中(而不仅仅是抽象概念中)AI 生成的失效模式。