AI 把编程这件事接管之后,作为程序员的我该何去何从?
AI 把编程这件事接管之后,作为程序员的我该何去何从?
作者: 周云龙 | 编辑: 蔡芳芳 | 来源: InfoQ
核心判断
工程师的工作正在从「写代码」转向「系统性地把高成本验证的任务转化为低成本验证的任务」——前者交给 AI,后者是人不可替代的部分。
01 真的有人在被替代
数据说话
| 指标 | 数据 |
|---|---|
| 22-25岁开发者就业率下降 | 自2022年底高峰下降近20% |
| 全球初级开发岗位缩水 | 过去一年减少20-30% |
| 英国科技行业应届岗位 | 2024年缩减近一半 |
| AI替代归因裁员占比 | 从不到10%跳到20% |
被替代的岗位特征
- 纯切图的前端
- 写增删改查的初级后端
- 套模板做后台管理系统的工程师
- 刚毕业还在练手的新人
共同点:任务清晰、变种不多、出错容易看出来——AI 最擅长接管的类型。
02 但替代论的另一半是夸大的
三个反例
反例1:vibe coding 发明者的手写回归
Andrej Karpathy(前 OpenAI,vibe coding 一词创造者)开源 Nanochat 项目时写道:
尝试过让 Claude 和 Codex 帮忙,但它们做得不够好——大概是因为这个仓库离它们见过的数据分布太远了。
vibe coding 的发明者,做严肃技术项目时回到了手写。
反例2:模型厂家自曝失败模式
Anthropic 官方博客承认:
最严重的失败模式之一是 Claude 倾向于把一个功能标记为完成、但实际上没有经过真正的测试。
反例3:AI 生成测试的质量数据
| 测试类型 | 得分 |
|---|---|
| 变异测试(AI生成) | 40% |
| 变异测试(专业工程师) | 70%+ |
| AI 生成测试准确率 | 仅 6.3% |
结论:AI 不是不能写代码,是不能可靠地验证自己写的代码。它能造,但没法判断造得对不对。
03 真正的分界线是「可验证性」
判断标准
一段代码写出来之后,确认它做对了的成本有多低?
| 验证成本 | 处理方式 | 示例 |
|---|---|---|
| 低 | AI 全包,验证自动化 | 小工具函数,跑一下输入输出就知道 |
| 高 | 人不可替代 | 并发逻辑、支付链路、老代码兼容、跨服务接口 |
高验证成本的特征:
- 错了可能要在生产环境跑几天才显现
- 错了直接是钱的损失
- 错了破坏的是十年前的兼容
- 错了影响其他团队的代码
04 一个翻车的实例
作者用 Claude Code 完成「元素检查器升级」Sprint(9个包的中型仓库):
- 13个子任务,前12个「通过」
- 第13个(手工测试)一上手就翻车
三个坑:
- 客户端插件版本是旧的,新功能没打进去
- 端到端测试进入非选中模式,「通过」全是假象
- 测试夹具状态没清干净,加载到错的项目地址
根本问题:AI 写的实现「通过」了 AI 写的测试,不是从需求层面对代码的真正验证。
05 工程师的工作正在变成另一种活
新核心工作
从「写代码」转向:
「系统性地把高成本验证的任务转化为低成本验证的任务」
具体变化
| 过去 | 现在 |
|---|---|
| 测试为了「抓 bug」 | 测试从「用户怎么用、会踩哪些边界、错了怎么恢复」出发 |
| 类型定义「做文档」 | 类型是给 AI 划定工作边界,让它越界时你能立刻发现 |
| 日志/监控/告警 = 「运维相关」 | 变成核心工程能力——只能靠这些机制在它出错时第一时间知道 |
| 代码评审看「写得对不对、漂亮不漂亮」 | 审验证机制本身:需求级测试、可观测性、回滚开关 |
关键认知
Simon Willison:
我不会把任何我无法向另一个人解释清楚的代码合并到我的仓库。
Redis 作者 antirez:
人是用来帮代码跳出局部最优解和错误的。
Anthropic 工程博客:
模型再强,给它高层提示让它自己跑,做不出生产级产品。让它能跑稳的,是套在模型外面的「harness(挽具)」。
06 一个被悬置的问题
如果 AI 快速接管入门级工作,5-10年经验的工程师从哪里来?
没有今天的入门级新人,就没有五年后的中级、十年后的资深。
一个职业的「育苗床」如果被抽掉:
- 是只剩有经验的人和 AI、再没有新人?
- 是新人的入口从「写代码起步」变成「第一天就做需求拆解和验证机制」?
- 是中级和资深的成长曲线整个变形?
我们在一艘自己脚下正在下沉一层的甲板上讨论「如何用 AI」。
结语
当「编程被解决了」成为热词,真正值得追问的不是「程序员会不会消失」,而是:
当代码生成越来越廉价之后,软件工程中真正稀缺、也真正不可替代的能力,究竟会转移到哪里。
作者给出的答案是:验证能力——把不可验证的变成可验证的,把高成本验证的变成低成本验证的。
这个活,AI 干不了,或者说,干不好。