程序员可能是第一批亲手制造“数字同事”,又最先被数字同事追上的人。
近日,马斯克在接受《经济学人》采访时抛出一个极具冲击力的判断:
AI在编写软件方面,已经超过至少90%的专业软件工程师;很快,它会超过99%,最终进入人类无法竞争的“Stockfish级别”。
所谓Stockfish,是当今最强大的国际象棋引擎之一。它甚至可以运行在普通电脑或手机上,却足以轻松击败世界顶尖棋手。
马斯克想表达的是:
未来的人类程序员与AI比写代码,就像今天的棋手与顶级象棋引擎比赛。不是输赢比例的问题,而是这场竞争本身已经失去意义。
这句话很容易被翻译成一句更加耸动的结论:
“99%的程序员要失业了。”
但这并不是马斯克原话,也不是软件工程正在发生的全部真相。
AI真正淘汰的,未必是99%的程序员。
它首先要淘汰的,是软件行业过去几十年里,对“程序员”这个职业的旧定义。
AI最先击穿的,不是软件工程,而是“写代码”这层外壳
过去很长时间,一名程序员的专业价值,往往通过代码体现。
会不会写循环,熟不熟悉框架,记不记得API,能不能迅速搭建页面,能不能根据需求完成增删改查。
公司招人时,也习惯用这些能力筛选候选人:
现场写算法。
背诵语言特性。
手写数据结构。
解释框架原理。
但AI正在让这套评价体系迅速贬值。
今天的编程代理已经不再只是补全下一行代码。
它可以读取整个代码仓库,搜索调用关系,修改多个文件,运行编译命令,查看报错,补充测试,修复问题,生成提交记录。
当任务失败时,它还可以根据测试结果继续迭代。
过去,一个程序员需要在编辑器、终端、浏览器、文档和代码仓库之间不断切换。
现在,这些操作正在被整合成一句话:
“把这个问题修好,确保测试全部通过。”
变化的关键,不是AI写代码更快了。
而是AI开始拥有了一个初级软件工程师完整的工作闭环:
理解任务、阅读代码、实施修改、执行验证、提交结果。
一旦闭环形成,传统程序员最稳定的护城河——“只有我能把需求翻译成代码”——就开始崩塌。
但“超过99%程序员”,不等于“替代99%程序员”
这里有一个非常重要的概念偷换。
马斯克讨论的是AI在“编写软件”这项能力上超过多少人。
而现实中的软件工程师,并不只是一个写代码的人。
一个真正的软件项目,需要回答的远不止“代码怎么写”。
客户真正想要什么?
两个互相冲突的需求应该保留哪一个?
系统允许多大延迟?
发生故障时应该优先保护数据,还是优先维持服务?
一项功能上线后,会不会破坏原有用户习惯?
为了三个月后的扩展,现在是否值得增加复杂度?
出现安全事故,由谁承担责任?
这些问题通常没有标准答案,也没有完整输入。
这正是软件工程与国际象棋最大的区别。
国际象棋是一个封闭世界。
棋盘大小确定,规则确定,目标确定,每一个局面都可以被精确描述,胜负也可以明确判断。
软件工程则是一个开放世界。
需求会改变,用户会撒谎,文档会过期,系统会留下历史包袱,接口会突然失效,管理者可能在项目做到一半时推翻原有方向。
Stockfish知道什么叫“将死”。
但AI未必知道,老板说的“简单优化一下”,究竟意味着改两个按钮,还是重构整个业务系统。
因此,软件工程真正的“Stockfish时刻”,不会同时降临在所有领域。
它会首先出现在规则明确、结果可验证、反馈自动化的任务中。
例如:
修复测试已经明确覆盖的Bug。
完成标准接口。
迁移框架版本。
生成重复性业务代码。
补充单元测试。
执行代码重构。
处理格式和静态检查问题。
这些任务越接近“给定局面,寻找最优行动”,AI就越接近Stockfish。
但任务越涉及模糊需求、现实责任、跨部门协调和长期架构,AI距离完全接管就越远。
一个反常现象:AI更强了,软件工程师却未必立刻更快
AI编程最容易制造一种错觉:
代码出现得很快,所以项目一定完成得更快。
但代码生成速度,从来不等于软件交付速度。
一项针对资深开源开发者的随机对照研究曾发现,在开发者维护自己非常熟悉的代码库时,使用当时的AI工具反而让完成任务的时间增加了约19%。
有趣的是,这些开发者主观上仍然认为自己变快了。
原因并不神秘。
AI生成代码很快,但阅读、检查、纠错和验证同样需要时间。
当AI输出一段“看起来很对”的代码时,人类往往需要付出更多注意力,确认它是否真的理解了项目约束。
熟悉代码库的资深开发者,有时自己修改只需要十分钟;向AI解释背景、等待生成、检查改动,可能反而需要更久。
另一项覆盖近5000名技术从业者的研究,则把AI称为“放大器”。
工程体系成熟、测试完善、文档清晰的团队,AI会放大优势。
需求混乱、架构腐化、测试缺失的团队,AI则会更快地产生更多混乱。
这揭示了AI编程时代最反直觉的规律:
当写代码变得极其便宜,判断代码是否应该被写出来,反而变得更加昂贵。
未来最稀缺的,不是代码,而是“验证能力”
过去,软件团队的瓶颈通常是生产代码。
需求排队,开发人员排期,一个功能可能要等待几周才能开始。
AI把这个瓶颈迅速推向下游。
代码可以一夜之间生成几十万行。
真正的问题变成了:
谁来确认这些代码是正确的?
谁来检查它没有破坏旧功能?
谁来判断它是否引入安全漏洞?
谁来保证半年后仍然能够维护?
谁敢在生产事故发生后,对这段代码负责?
未来的软件团队,很可能不是“人写代码,AI辅助”。
而是:
AI负责大规模生产,人类负责定义、约束、验证和承担责任。
程序员的日常工作也会从“怎么实现”,转向另外四个问题:
我们到底应该实现什么?
怎样证明它实现正确?
它在什么情况下会失败?
失败以后,系统应该怎样恢复?
真正优秀的工程师,将越来越像一名主治医生。
他未必亲手完成每一项检查和操作,但必须能够综合信息、判断风险、制定方案,并对最终结果负责。
初级程序员,可能最先遭遇职业危机
过去,软件行业有一条相对清晰的成长路径。
新人先完成简单页面、接口开发和Bug修复。
在处理大量基础任务的过程中,逐渐理解项目结构、业务逻辑和工程规范。
工作几年后,再承担架构设计和复杂决策。
但AI正在吞掉这条成长路径的最底层。
企业会发现,与其招聘五名新人完成重复开发,不如让一名资深工程师调度多个AI代理。
资深工程师知道如何拆分任务、审查代码、识别风险。
AI则承担过去交给初级工程师的执行工作。
这会带来一个行业级难题:
如果新人不再有机会处理简单任务,他们靠什么成长为高级工程师?
未来企业可能减少传统初级岗位,却增加一种新的“AI时代学徒岗位”。
新人不再从手写增删改查开始,而是从以下任务开始:
检查AI生成的代码。
补充自动化测试。
复现线上故障。
分析错误日志。
验证边界条件。
理解业务规则。
在真实系统中,人类犯错会留下经验,AI犯错也同样可以成为训练材料。
未来新人最重要的能力,不是比AI多记住几个函数,而是能够解释:
为什么这段看起来正确的代码,实际上不能上线。
软件团队会缩小,但软件需求可能爆炸
AI会不会让大量程序员失业?
答案很可能是:会淘汰一部分岗位,同时创造更多软件。
过去,一家公司想开发内部管理系统,可能需要几十万元预算和半年时间。
因为成本太高,许多需求只能继续依赖Excel、微信群和人工流程。
当AI把开发成本降低到原来的十分之一,过去“不值得开发”的需求都会变得值得开发。
一家小餐馆可以拥有自己的库存系统。
一支三人团队可以维护过去需要三十人的产品。
每一家公司都可以根据自己的业务,生成高度定制的软件。
这会产生两股相反的力量。
一方面,完成同样的软件,需要的人更少了。
另一方面,社会想要开发的软件,比过去多得多。
因此,未来不一定是“软件工程师全部消失”。
更可能是软件行业发生严重分化:
普通编码工作的价格迅速下降。
能够独立交付完整产品的人,价值迅速上升。
大型团队减少,中小型团队爆发。
固定岗位减少,一人公司和超级个体增加。
程序员数量未必立刻暴跌,但每个人被要求完成的工作范围会大幅扩大。
过去公司招聘的是一名后端开发。
未来公司可能希望一个人加几个AI代理,同时完成需求分析、前后端、测试、部署和运维。
AI没有单纯减少工作,它重新定义了一个人应该完成多少工作。
软件工程师的价值,将从“产量”转向“决策质量”
未来几年,软件行业很可能出现三类人。
第一类,是传统代码执行者。
别人给出明确需求,他负责翻译成代码。
这一层工作最容易被AI覆盖,竞争也会最激烈。
第二类,是AI调度者。
他能够把复杂任务拆解给多个代理,提供上下文,设计验收标准,组织代码审查和自动测试。
他本人写的代码可能越来越少,但交付能力越来越强。
第三类,是系统责任人。
他理解技术,也理解业务;能够在成本、性能、安全、体验和进度之间作出取舍。
他知道哪些功能不应该做,哪些风险不能交给AI,哪些架构决定一旦错误就会付出巨大代价。
未来真正拉开程序员差距的,不是谁的打字速度更快。
而是谁能在AI给出的十种方案中,迅速判断哪一种可以活过未来三年。
接下来三年,软件行业可能发生什么?
第一阶段:AI成为默认开发环境
不会使用AI编程工具,将像今天不会使用搜索引擎和版本控制一样,逐渐变成明显劣势。
企业不再讨论“是否允许使用AI”,而是建立自己的模型权限、代码隔离和审查制度。
招聘面试也会开始允许使用AI。
企业真正想观察的,不再是候选人能否默写代码,而是他能否发现AI的错误。
第二阶段:人类从编码者变成代理管理者
一个工程师同时运行多个代理,将成为常见工作方式。
一个代理分析需求,一个代理修改代码,一个代理生成测试,另一个代理负责安全审查。
人类不再逐行驱动开发,而是管理并行的软件生产流水线。
2026年的一项Codex使用研究已经显示,一部分用户每周会同时管理三个或更多代理,提交给代理的任务复杂度也在快速增长。
第三阶段:部分软件领域进入Stockfish状态
在测试完备、规则稳定、结果可以自动验证的领域,AI将比绝大多数人类工程师更快、更便宜,也更稳定。
人类继续亲自编写这些代码,就像职业棋手坚持与Stockfish比计算深度一样,逐渐失去商业意义。
但在医疗、汽车、金融、工业控制、航空航天等高责任领域,人类仍会长期保留最终决策权。
不是因为人类一定写得更好。
而是出了问题以后,法律和社会不能接受一句:
“这是模型生成的。”
程序员现在最应该学习什么?
未来最危险的能力,是只会某一种语言、某一个框架或某一套固定写法。
因为这些知识规则明确、资料丰富,恰好是AI最擅长的部分。
更值得投入的能力,是AI难以单独完成的五件事。
理解真实业务,而不是只理解需求文档。
设计测试和验收标准,让正确与错误可以被机器判断。
掌握系统架构,理解一个局部改动对整体造成的影响。
处理线上故障,因为真实世界永远会出现训练数据之外的问题。
承担结果,对性能、安全、成本和用户负责。
未来,代码能力仍然重要。
但它会像计算器时代的心算一样,从核心竞争力变成基础素养。
你需要理解代码,才能审查AI。
你需要具备工程经验,才能判断AI。
但你未必还需要亲手写出每一行代码。
写在最后
马斯克的“99%”可能过于激进。
他的时间判断也未必准确。
国际象棋拥有固定规则,软件工程却充满模糊、变化和责任。AI距离真正理解整个现实世界,仍有很长的路。
但方向已经非常清楚。
AI不需要立刻取代99%的软件工程师,才能彻底改变这个行业。
它只需要把写代码的成本降低90%,企业的招聘标准、团队规模、薪酬结构和人才培养方式,就会全部重写。
过去,程序员最大的优势,是能够把想法变成代码。
未来,这种能力将变得极其普遍。
真正稀缺的是另一种能力:
在人人都能制造软件的时代,知道应该制造什么,知道怎样证明它没有错,并愿意为最终结果负责。
软件工程的Stockfish时刻,也许还没有完全到来。
但发令枪已经响了。
下一代程序员的核心竞争力,不再是比AI写得更快。
而是站在AI之上,决定它应该写什么、为什么写,以及写完之后能不能真正改变世界。
夜雨聆风