我用 Codex 重写了同事维护三年的代码,他没说谢谢——而是找了领导
我以为我在帮忙他以为我在打脸。AI 让重构变得太容易了但它解决不了的恰恰是最难的那个部分——人。事情是这样开始的我们组有一个内部管理后台核心模块是一个表单引擎。这个模块是同事小张三年前搭的从几十个字段的简单表单慢慢迭代到支持上百个字段、动态联动、多级嵌套的复杂表单系统。三年下来这个模块膨胀到了大几千行代码——一个文件。没有拆分没有类型定义变量命名从data1到tempArr2应有尽有。我不是在黑小张。三年前的代码放到三年后看谁的都一样。何况他当时赶工期能跑就是胜利。问题是最近产品要加一批新的联动规则我负责这个需求改了两天——每次改完一个地方另一个地方就莫名其妙地坏掉。一个周末我手贱了周五下班前我有点烦躁打开 Codex把这个文件丢了进去“帮我把这个文件重构一下拆成合理的模块结构加上 TypeScript 类型。”大约二十分钟Codex 给出了一个完整的重构方案把一个大文件拆成了 6 个模块每个模块职责清晰加上了完整的类型定义连测试用例的框架都搭好了。我又花了大半个周末做了以下事情逐行审查了 AI 生成的代码确保逻辑和原来一致补了一些 AI 遗漏的边界情况跑通了所有现有的测试用例在新结构上实现了产品要的新联动规则——比原来轻松太多了周一早上我信心满满地提了一个大 PR。小张的反应完全出乎我的意料我以为小张会说这下好维护多了。他看完 PR 后沉默了大概十分钟然后走到我工位旁边说了一句“你是不是觉得我写的代码很烂”我当时愣了一下赶紧解释说不是是因为新需求加不进去才做的重构。但他的表情告诉我解释是苍白的。下午领导把我叫去聊了一下。不是批评但语气很明确“重构是好事但你事先应该和小张对齐一下。”后来我才知道小张跟领导说了几个点没有提前沟通他完全不知道有人要重构他的模块周一早上突然收到一个改了几千行的 PR感觉被否定三年的工作被 AI 用二十分钟替换了心里不是滋味维护成本转嫁重构后的代码他没参与设计但以后还是他在维护每一点都说得有道理。我做错了什么冷静下来之后复盘发现自己犯了三个错误第一把技术上正确等同于做法正确。重构后的代码确实更好结构清晰、类型完善、可测试。但代码更好不等于做这件事的方式正确。在团队里代码不只是技术产物还是人的产物。每一行代码背后都有人的时间、精力和判断。你优化它的方式暗示着你对这些时间和判断的评价。第二低估了 AI 带来的效率暴力的冲击。如果我自己手动重构可能需要两周。两周的工作量同事不会觉得被替代——因为你付出了对等的时间。但 AI 让这件事变成了一个周末这个速度本身就带着一种隐含的否定“你三年写的东西AI 用二十分钟就能写得更好。”即使我没有这个意思但观感就是这样。第三跳过了最重要的步骤——达成共识。重构这种影响范围大的事情在动手之前至少应该做到和原作者讨论重构的必要性和方案让他参与设计甚至一起结对分阶段提交而不是一个巨型 PR这些都是基本的团队协作规范。我因为AI 让重构太容易了就全部跳过了。AI 时代的协作陷阱这件事让我意识到一个更深层的问题AI 正在改变团队协作中一个不成文的契约。过去重构的成本是人人平等的。花两周重构一个模块意味着你确实投入了时间和精力这本身就是一种尊重。别人看到你的 PR 会想这个人花了两周认真做的我也应该认真 Review。但 AI 把重构的成本降到了接近零。当改变别人代码的成本趋近于零时要不要改和动手改之间的那道心理门槛消失了。人们更容易冲动行事更容易跳过沟通更容易无意中伤害团队关系。我总结了一份AI 时代团队协作备忘录场景正确做法常见错误想重构别人的模块先和原作者讨论方案直接让 AI 改完提 PRAI 生成了大量改动拆成多个小 PR 逐步合入一次性提一个巨型 PR发现别人代码有问题Code Review 中指出自己 fork 过来用 AI 重写用 AI 加速开发分享方法帮团队一起提效一个人偷偷用制造效率差AI 方案和同事方案冲突作为另一种思路讨论拿 AI 方案否定同事后来怎么样了我后来找小张单独聊了一次把本意解释清楚——确实不是觉得他代码烂是新需求实在加不进去。同时也承认自己做法不对应该事先沟通。小张也表示理解。他说那个模块确实该重构了只是被 AI 二十分钟替掉三年代码这件事需要消化一下。最后我们达成了一个方案我关掉那个大 PR重新开了几个小 PR每个只改一个模块小张全程参与 Review。整个过程花了一周多——比AI 二十分钟慢了很多但团队关系没有受损小张也在 Review 过程中熟悉了新的代码结构。有时候慢一点才是真的快。写在最后AI 让很多事情变得容易了写代码容易了重构容易了写测试容易了。但 AI 解决不了的事情恰恰是最难的那些——沟通、共识、尊重、信任。技术能力再强如果搞不定人的部分在团队里就是一颗定时炸弹。这个道理以前就有只是在 AI 时代变得更加尖锐了——因为 AI 放大了个体的执行力也放大了不沟通的后果。你有没有在团队里遇到过类似的情况——用 AI 做了一件自以为是好事的事结果引发了意想不到的反应