AI 时代,软件工程管理真正变了什么?

AI 进入软件工程之后,很多人第一反应是:写代码变快了。
这当然没错。
过去一个功能可能要几天,现在一句提示词就能生成一版;
过去要查文档、配环境、写样板代码,现在 AI 可以直接补齐。开发的速度被明显拉快了。
但如果只看到“写代码变快了”,就会错过更重要的变化。
AI 真正改变的,不只是生产速度,而是软件工程里的稀缺资源。
过去,最稀缺的是“手”。
谁能写代码,谁写得快,谁能把需求落地,谁就是关键资源。
开发、测试、返工都很贵,所以 Eval 循环,也就是开发、测试、部署、验证这一圈,是主要成本。

但 AI 时代,情况开始变了。
对于一般 SaaS、App 或内部工具来说,AI 和自动化正在降低 Eval 循环的边际成本。
东西更容易被做出来,也更容易被改出来。
真正昂贵的东西前移了。
它变成了:
我们有没有理解对问题?
有没有判断对方向?
这个方案值不值得做?
需求是否被清楚表达?
验收标准是否足够明确?
也就是说,SPEC 循环变得更重要了。
理解、判断、创意、设计,这些过去看起来“偏前期”的工作,现在成了最大的风险源。
一旦 SPEC 错了,AI 会很快、很勤奋、很自信地把错误放大。
AI 降低了“把东西做出来”的成本,但没有自动降低“做对东西”的成本。
这就是 AI 时代软件工程最核心的变化。
AI 吃掉的是“怎么做”,凸显的是“做什么”
软件开发里有两类复杂度。
一类是偶然复杂度。
比如语法、样板代码、环境配置、胶水逻辑、重复劳动。这些复杂度不是问题本身带来的,而是实现方式带来的。
AI 很擅长消灭这部分复杂度。
它能帮你写代码、补测试、生成脚手架、解释报错、改接口、搬逻辑。这些过去耗费大量人力的事情,现在正在被快速压缩。
但还有另一类复杂度,叫本质复杂度。
它来自问题本身。
用户到底要什么?业务规则为什么这么绕?哪些边界情况不能漏?什么叫正确?什么叫可接受?不同目标之间如何取舍?
这些问题 AI 不能替我们消灭。
它可以帮我们表达、整理、推演,但最终判断仍然要靠人。
这也是 Brooks 在《没有银弹》里讲过的核心观点:
软件开发没有一种单一技术,可以神奇地消灭所有复杂度。
AI 是非常强的工具,但它不是银弹。
它让偶然复杂度快速下降,也让本质复杂度变得更加显眼。
过去我们可能被“写不出来”“做太慢”挡住。现在这些阻碍变少了,真正的问题浮出水面:我们是否真的想清楚了?
验证没有消失,只是位置变了
有人会说,既然 AI 让开发、测试、部署都变快了,那 Eval 循环是不是就不重要了?
不是。
更准确地说,Eval 循环仍然重要,只是它的相对成本在很多场景里降低了。
对于普通软件产品,自动化测试、CI/CD、AI 辅助修复会让验证变得更快。
在机器人、医疗、金融、安全这些场景里,Eval 仍然很贵。
因为真实世界不会因为 AI 变得更宽容。
机器人摔倒了就是摔倒了。医疗判断错了就是风险。金融系统出错会带来真实损失。安全系统不能靠“看起来差不多”上线。
AI 时代不是“不需要 Eval”,而是更需要高质量的 Eval。
因为 AI 会生成大量看似合理的东西,我们更需要证据来判断它是否真的正确。
以后软件工程里的状态,不应该再靠人手工填。
不是谁在群里说“我做完了”,状态就变成完成。
真正的状态应该来自证据。
测试有没有过?部署有没有成功?用户有没有反馈?指标有没有变化?日志有没有异常?这些证据应该自动流动,自动形成状态。
进度不应该靠追问长出来,而应该从证据里长出来。
协作也变了:不只是人与人,还有人与 Agent
过去的软件协作,主要是人与人的协作。
产品、设计、研发、测试、运维,需要互相沟通、对齐、交接。
AI 时代,协作结构里多了新的角色:Agent。
Agent 不只是工具按钮,而越来越像一个参与者。它会读文档、写代码、改测试、生成方案、执行任务。
这带来一个新问题:上下文必须显式化。
过去很多上下文藏在人脑里,散在聊天记录里,埋在会议纪要里。人和人之间还能靠默契补齐。
但 Agent 不懂默契。
它需要可读的上下文,需要清楚的约束,需要明确的 Definition of Done,需要知道哪些事情能做,哪些事情不能碰。
所以文档的意义也变了。
过去文档常常是给人看的说明,写完就慢慢过期。
现在,好的文档应该变成活契约。它不仅给人读,也给 Agent 执行。它应该能交接、能复用、能约束行为。
在 AI 时代,管理上下文,比管理人更重要。
康威定律仍然有效,而且更复杂了
还有一条老定律没有失效:康威定律。
它说,系统的结构往往会长成组织沟通结构的样子。
简单说,就是谁和谁沟通,系统边界就会在哪里出现。
过去,如果团队沟通混乱,软件架构往往也会混乱。AI 出现以后,这件事没有消失,反而更复杂。
因为沟通结构里不只有人,还有 Agent。
人和人要对齐,人和 Agent 要对齐,Agent 和 Agent 之间也要通过共享上下文间接对齐。
如果组织本身不清楚,需求不清楚,责任不清楚,边界不清楚,那么 AI 只会更快地把混乱生产出来。
AI 不会自动带来好架构。
好的架构,仍然来自清楚的意图、合理的组织结构和持续的反馈。
软件工程,工具变得复杂,而软件管理有四件事变得尤为重要
AI 时代,我们很容易陷入一种错觉:只要找到更好的工具,就能解决管理问题。
但真正重要的管理,很多时候并不在工具里。
代码仓库可以管理代码,文档系统可以管理资料,项目工具可以管理任务,AI 可以生成产物。
可有些东西,工具装不下。
第一,是团队文化。
团队是否鼓励学习?是否允许探索?是否能容忍失败?是否愿意面对真实问题?这些决定了 AI 会被用来创造更好的东西,还是用来更快地产出平庸内容。
第二,是靠谱的人。
AI 时代,角色边界会越来越模糊。工程师会更懂产品,产品会更懂实现。真正重要的不再只是某个固定技能,而是学习能力、判断力和闭环能力。
靠谱的人,不是永远不犯错的人,而是能把事情从意图带到结果,并且知道什么时候不该盲信 AI 的人。
第三,是真实用户反馈。
当建造变便宜,最危险的事情就是更快地做错东西。
没有真实反馈,团队很容易沉浸在自我感觉良好的指标里。真正的用户反馈,是判断价值是否成立的唯一诚实来源。
第四,是 SDD 方法论。
这里的 SDD,可以理解为 spec 驱动、设计先行、Eval 验证。
AI 时代,spec 变成了关键杠杆。
Agent 执行的不是你的愿望,而是你表达出来的 spec。
你说得越清楚,它越可能做对。你说得含糊,它就会用自己的方式补全,而补全出来的东西未必是你真正想要的。
懂的部分,要先写清楚 spec。
不懂的部分,要通过探索发现 spec。
最后再通过 Eval 证明它没有塌掉。
最后的结论
AI 时代,软件工程当然变了。
写代码变快了,交付节奏变快了,工具能力变强了,Agent 成了新的协作者。
软件工程的底层并没有完全改变。
复杂度仍然存在,验证仍然必要,责任仍然在人,协作结构仍然会影响系统结构。
真正的变化是:
稀缺资源从执行力,转向判断力。
协作重点从管人,转向管上下文和证据流。
价值判断从“有没有做出来”,转向“有没有做对”。
AI 吃掉的是“怎么做”的一大部分成本。
但“做什么”和“做对没有”,仍然是人的核心责任。
一个工具最大的价值,是让你意识不到它的存在。
而 AI 时代真正值得守护和训练的,也许不是某个工具技巧,而是更清楚地理解问题,更诚实地面对反馈,更有判断力地做选择。

AI 真正改变的是:从有没有->到好不好
深度好文