AI负责生成,人类负责判断:软件工程核心是意图工程

AI让代码生产变得廉价 ,执行不再是瓶颈,工程价值从写代码转向明确意图和管理判断,组织竞争力取决于将隐性经验转化为可扩展的明确约束的能力。

软件丰裕时代:当代码变成白菜价,判断力就成了硬通货

以前写代码是门手搓活,现在AI写代码成了流水线作业。当代码变得跟自来水一样便宜又充足的时候,真正值钱的C位早就偷偷换了位置。

代码曾经是个稀缺品,现在成了满大街都是的大路货

咱们先回忆一下软件行业的上古时期。那时候写代码是啥场景?程序员们坐在昏暗的机房里,对着绿色的屏幕一行一行地敲,敲错一个字符整个程序就崩了。写代码慢得像蜗牛爬,贵得像黄金,而且受限于人类的手速和脑力。那时候最难的事儿根本不是代码写得好不好,而是能不能把软件给造出来。就像你饿得前胸贴后背的时候,根本不在乎饭菜精不精致,先吃饱再说。

所以那时候的执行能力是稀缺资源,谁能把代码写出来谁就是大爷。公司招工程师看的是打字快不快,懂不懂底层原理,能不能熬夜肝代码。整个行业的价值都堆在"执行"这个环节上,因为执行本身就是最大的瓶颈。

但是AI编程助手彻底把这个逻辑给掀翻了。现在代码可以哗哗地生产,速度快得离谱,成本低得可怜,产量大得惊人。执行能力不再是限制因素了,特别是对于那些站在技术前沿的团队来说,决定成败的早就不是敲键盘的速度了,而是协调能力和判断力。这就像是从手工作坊进化到了全自动工厂,工人不再需要亲手制作每一个零件,而是需要监控整个生产线的运转,决定生产什么、怎么生产、生产多少。

十个人能不能做出DocuSign?这个问题本身就暴露了时代的变迁

DocuSign 是全球最大的电子签名和电子合同管理平台,成立于2003年,2018年在纳斯达克上市。简单说,它让你不用打印、不用扫描、不用传真,直接在手机或电脑上完成签字画押,法律效力跟纸质签名一模一样。这家公司市值最高时超过600亿美元,是"软件即服务"(SaaS)领域的标杆企业。DocuSign 代表了传统软件开发的典型成果——需要几百名工程师、十几年时间、数亿美元投入才能建成的复杂系统。

现在有个特别有意思的现象,人们经常半开玩笑地问:今天用十个人能不能做出DocuSign?从纯代码量的角度来看,答案很可能是肯定的。现在的AI工具能在几周内生成过去需要几百人年才能写出来的代码量。但是真正有趣的问题在于:这十个人会怎么花他们的时间?

答案绝对不是在键盘上敲代码。他们会把时间花在辩论各种边缘情况上,讨论合规性怎么保证,思考如何建立信任机制,设计审计流程,定义错误语义,打磨用户体验,以及搞清楚在法律语境下"签名"到底意味着什么。这些工作全都指向一个核心——意图。

当软件变得丰裕的时候,把意图表达清楚的能力反而变得稀缺了。后续发生的一切都是这个转变的后果。有人把这描述为"想法战胜了执行",这种理解完全跑偏了。因为在真实的系统里,真正重要的意图往往深埋在技术细节中:积累下来的上下文知识、对系统的深刻理解、对各种权衡的判断。工作没有消失,只是转移了阵地。

工程卓越的定义正在经历一场静悄悄的革命

这个转变特别反直觉,因为它跟长期以来工程卓越的定义背道而驰。历史上最受尊敬的优秀工程师都是那些最贴近代码的人——他们深入阅读代码,精心编写代码,通过直接接触来理解系统。这种能力依然重要,但是随着软件变得丰裕,它不再是瓶颈所在,也不再是杠杆持续积累的地方。

想象一下,以前一个工程师的价值体现在能写出多么优雅的算法,能优化多么复杂的性能瓶颈。

现在呢?一个工程师的价值 体现在能不能说清楚"我要什么",能不能预判各种边界情况,能不能在代码还没写出来之前就发现潜在的问题。

这就像是从"动手能力强"变成了"思考能力强",从"技术宅"变成了"战略家"。

从意图到代码:那个看不见的鸿沟

当你告诉一个经验丰富的工程师"把这个弄快点",他听到的绝对不是字面意思。他会自动推断上下文:到底是延迟重要还是吞吐量重要,在这个场景下"足够快"是什么标准,哪些权衡是可以接受的,以及什么时候应该直接挑战这个需求本身的前提。

但是AI编程助手没有这种背景知识。你要么描述得太简略,得到的结果看起来靠谱但实际上错了;要么描述得太过详细,花在写指令上的时间比直接写代码还多。软件丰裕让这种差距变得肉眼可见。执行错误意图的成本变得很低,所以不对齐的情况会迅速暴露出来。

我自己就踩过这个坑:花在引导或纠正AI上的时间跟我直接写代码的时间差不多。有时候我会觉得自己很蠢,好像在犯一些不该犯的错误。但这种反应本身就很有信息量。它指向了那些我 tacitly 理解但从未明确表达过的系统部分。工作从打字转移到了澄清判断上。

这就是那个情感爆点:当你第一次意识到,你花了三个小时跟AI斗智斗勇,最后发现如果自己动手写可能只需要三十分钟的时候,那种挫败感简直让人怀疑人生。你会问自己:我到底在干什么?我是不是在浪费时间?但正是这种痛苦的经历,逼着你去反思那些你以为是本能但实际上从未清晰表达过的技术直觉。

什么是"不可接受的代码"?这个问题比"错误的代码"更致命

随着AI助手越来越强大,主要的失败模式也在改变。问题很少是代码跑不起来。不可接受的代码能够运行,通过测试,看起来也合理,但违反了系统的隐性契约。在实践中,这通常意味着破坏了不可见的不变量:关于幂等性、顺序、失败语义、数据完整性或遗留耦合的假设,这些从未被写下来,因为它们是通过经验学到的。

这种代码可能会跨越不该跨越的边界,在错误的维度上做优化,引入脆弱的抽象, mishandle 边缘情况,或者悄悄关闭未来的选项。人类工程师拒绝它不是因为它是错的,而是因为不想拥有它。正确性和可接受性之间的差距,正是工程意图变得至关重要的地方。

这很大程度上取决于品味:知道什么时候技术上正确但形状仍然不适合正在构建的系统。就像一道菜,食材都是新鲜的,烹饪步骤也都对,但吃起来就是不对味儿。你说不出哪里错了,但你知道这不是你想要的那道菜。

路径依赖被强行曝光:那些早年欠下的技术债终于找上门了

我们在快速增长的公司里见过这种情况,这些公司有成百上千的工程师,早期系统是由那些还在培养高级判断力的团队快速搭建的。代码能跑,规模足够支撑上线,然后成了后续一切的基础。

随着AI编程工具变得越来越能干、越来越普及,它们忠实地复制了那些早期模式。临时决定变成了默认值,在整个代码库中被重复。随着时间的推移,哪些架构选择是偶然的、哪些假设未经审查、哪些决定承载了远超预期的重量,都变得清晰可见。

在某些情况下,这导致了对高I/O系统的重新架构。这项工作主要由清晰度驱动,而不是失败。一旦假设变得可见,团队就能决定哪些要正式化,哪些要修正,哪些要丢弃。自动化会放大任何已存在的结构。当那个结构是隐性的时,放大过程会让它变得可读。

这就是另一个情感爆点:当你看着AI生成的代码,突然发现它复制了三年前那个临时工写的烂代码的模式,而那个临时工早就离职了,你突然意识到,你们公司整个技术栈的地基可能都是建立在沙子上的。那种寒意从脊椎骨窜上来的感觉,就是技术债到期还款的时刻。

不是所有代码都能被同等程度地规格化

AI助手在意图明确且稳定的地方表现最好,在意图隐晦且需要重度判断的地方挣扎:

  • 非常明确规格化的:数据库、编译器、协议。意图是形式化且可检查的。
  • 操作层面规格化的:CI、ETL、CRUD服务。范围控制占主导。
  • 以测试为锚点的:业务逻辑、bug修复。部分意图捕获。
  • 品味导向的:重构、API、抽象。依赖规范和判断。
  • 以人为中心的:产品逻辑、UX、命名。意图会演变。
  • 难以规格化的:架构、战略。意图存在于代码之外。

随着你沿着这个光谱往下走,失败不再像bug,而开始像是你不信任的代码。这就像自动驾驶汽车,在高速公路上开得好好的,一进老城区就抓瞎,因为老城区的规则不是写在交通法规里的,是写在本地人的默契里的。

从个人技能到组织能力: judgment engineering 的崛起

我们现在看到年收入超过一亿美元、增长迅速的公司,计划保持在大约一百名工程师以内——每个人都在并行表达意图的极限上操作。

最强的用户不写更好的提示词。他们更好地管理意图
他们指定结果而不是步骤,尽早暴露假设,保持diff小而可审查,推动更简单的解决方案,并把AI输出当作不受信任的PR。

我把这称为 判断力工程(judgment engineering):将积累的经验转化为系统和团队可以操作的明确约束、测试和边界的工作。
做得好,它能让高质量决策在人、时间和系统之间更容易重复。

这就像是从个人英雄主义转向了制度建设。以前一个天才工程师可以撑起一家小公司,现在需要的是一套机制,让普通工程师也能持续做出高质量的决策。价值不再集中在个别技术大牛身上,而是集中在那些能够建立这种机制的人身上。

从软件团队到软件密集的世界:代码正在吞噬一切

当编写和维护代码的成本下降时,组织不再问某件事能不能自动化,而是开始决定它应不应该自动化。软件蔓延到内部工作流、边缘情况和特定领域的流程中,这些过去因为太贵或太脆弱而无法编码。

像CRM或HRIS这样的系统从外面看很简单,但它们代表了数千工程师年将业务逻辑、例外和约束编码进去的努力,这些都是通过艰难的方式学到的。软件丰裕没有抹除这些工作——它改变了类似判断现在能被表达的速度和广度。

在一个软件密集的世界里,价值更少地积累给单个工具,更多地积累给决定哪些决策被自动化以及在什么约束下进行的人。随着更多东西变成软件,另一个瓶颈变得更清晰:首先形成正确意图的能力。足够了解一个领域以从客户那里提取期望行为——理解他们的意思,而不只是他们说什么——变得越来越有价值。

模型可能会越来越多地帮助这项工作:暴露不一致性,测试解释,使假设明确。这能走多远还是个开放问题。但下游的一切都取决于这里形成的意图。这就是那个终极的情感爆点:当你终于意识到,技术问题归根结底是人的问题,代码问题归根结底是沟通问题。所有的工具、所有的自动化、所有的AI,最后都卡在"人到底想要什么"这个看似简单实际上无比复杂的问题上。

瓶颈现在在哪里:意图的可表达性成为核心竞争力

现在变得有价值的是使判断明确化的能力——这样它就能被检查、分享、改进,最终由系统而不仅仅是人来承载。当意图能够被明确化并由系统承载时,影响远远超出了工程团队。更多经济活动变成软件中介的。现有的、围绕执行或协调的稀缺性建立的市场开始转移。每个人可用的软件工具的基线质量上升,因为曾经只存在于少数地方的判断现在被广泛表达。

杠杆来自决定什么被编码。少数人可以塑造大量工程努力的表达方式,不是通过审查每一个变更,而是通过塑造系统运行的意图。我预计很快就会看到这种情况:团队通过使意图可读、持久和可扩展来实现软件丰裕,而不是通过写更多代码。

软件丰裕的真正承诺不是更多代码,而是一个意图能够扩展的世界——一次性做出的决策能够塑造远超其直接参与的结果。这就像是从雇佣兵模式转向了宪法模式。以前你是靠人多势众,靠堆工程师的数量来堆代码量;现在你是靠制定好的规则,靠清晰的意图表达,让系统自己运转,产生复利效应。

总结:我们正站在一个时代的拐点上

以前拼的是执行力,现在拼的是判断力;
以前比的是谁能写出更多代码,现在比的是谁能说清楚自己要什么;
以前的技术债可以藏在代码的角落里慢慢发霉,现在AI会把这些债连本带利地曝光在阳光下。

这不是说代码不重要了,而是说代码已经从稀缺品变成了基础设施。就像电一样,以前有电是竞争优势,现在没电是生存危机,但有电也只是基础门槛。真正的竞争已经转移到了更高层次:你能不能想清楚,能不能说清楚,能不能建立机制让系统持续做出正确决策。

这就是软件丰裕时代的真相:代码成了白菜价,判断力成了硬通货。那些还在埋头苦写代码的人,可能会发现自己越努力越边缘化;而那些学会管理意图、建立判断机制的人,会在新的秩序中占据制高点。