大模型时代,一个普通程序员的“失业”前夜
大模型时代,一个普通程序员的“失业”前夜
这是一篇写在2026年春天的博客,记录我——一个写了快十年代码的“老”程序员——最近半年的真实感受。不贩卖焦虑,也不盲目乐观,就是随便聊聊。
序:那天早上,我差点被AI抢了饭碗
事情是这样的。
上个月我们组接了个需求,要把一个老掉牙的Java项目从Spring Boot 1.5升级到2.7。这种活儿以前怎么干?人工一个个文件改依赖、改API、改配置,保守估计两个星期。
我那天突发奇想,把整个代码库丢给了Claude Code,说了一句:“帮我升级到Spring Boot 2.7,兼容所有现有功能。”
然后我去泡了杯咖啡。
等我回来,它已经改了47个文件,跑了测试,还贴心地列了一个“人工需要复核的清单”——大概有8处它拿不准的逻辑。我花了半天时间过了一遍,提交。整个活儿一天搞定。
组长在群里发了个大拇指。我盯着屏幕,手心有点出汗。
不是兴奋,是害怕。
我想起刚入行的时候,带我师傅说:“这行好,越老越吃香,经验是硬通货。” 现在我不确定了。一个刚毕业的毛头小子,只要会用AI,是不是就能干我三年的活儿?
一、我的工位,从“写代码”变成了“审代码”
以前写代码的状态:打开IDE,脑子过逻辑,手指噼里啪啦敲,调试,跑通,长舒一口气。
现在的状态:打开IDE,打开AI助手(我用的是Cursor + Copilot + 偶尔Claude Code),对着屏幕发呆两分钟,想好怎么描述需求,然后——把描述敲进去,等AI生成代码,读一遍,改几个变量名,删掉多余的注释,跑测试,提交。
我现在的产出速度大概是以前的3到5倍。听起来很爽对吧?但我每天下班后反而更累了。
因为以前我只对自己的代码负责,现在我要对AI的代码负责。AI写的每一行,我都得在心里过一遍:这里有没有潜在的null指针?这个循环会不会死?那个并发处理对不对?我变成了一个“代码审核员”,而且审核的对象是一个不知疲倦但偶尔犯傻的实习生。
最讽刺的是,上个月我发现自己已经两个月没有从零开始写过一个函数了。所有代码都是AI生成、我修修补补。我甚至开始担心:如果有一天AI工具全没了,我还会写代码吗?
二、“10倍程序员”真的来了,但可能不是你想的那样
行业里一直有个传说叫“10倍程序员”——一个人顶十个人。以前我觉得那是夸张,现在我信了,只不过那个“10倍”不是人类,是AI。
我们组最近来了个校招生,叫他小K吧。这小子上班第一天就装了各种AI插件,写代码的速度比我们组的高级工程师还快。有一次我review他的代码,发现一个模块的实现方式极其老练,我问他是怎么想到的。他说:“我没想啊,我把需求喂给Claude,它给了三个方案,我挑了一个最顺眼的。”
我当时的心情很复杂。
后来我慢慢观察,发现小K虽然写得快,但出问题的概率也高。他经常看不出来AI生成的代码里有逻辑漏洞——比如一个本该用long的地方用了int,高并发下必炸。有一次他让AI写一个缓存,结果AI用了一个本地HashMap,完全没考虑分布式环境,上线后直接导致数据不一致。
所以现在的局面是:会用AI的程序员,产出确实高;但只有真正懂代码的程序员,才能用好AI。
换句话说,AI放大了你的能力,也放大了你的无知。
三、焦虑是真的,但失业可能没那么快
这段时间我刷了无数篇“AI取代程序员”的文章。有的说三年内50%的编码工作会被AI替代,有的说程序员这个职业会消失,只剩产品经理和AI。
我不信。但我承认,底层码农的日子会越来越难过。
什么叫底层码农?就是只会写CRUD、只会照着文档调API、只会复制粘贴Stack Overflow的那群人。这些活儿AI现在就能干,而且干得更好。
但有一些东西,AI目前还不太行:
-
理解真正的业务痛点。产品经理说的需求往往是错的,或者不完整的。真正的需求藏在老板的只言片语里、用户的抱怨里、数据的异常里。AI不会主动去问“你为什么要这个功能?”——至少现在的AI不会。
-
在混乱中做取舍。有一次我们要在两个方案之间选择:A方案快但难维护,B方案慢但容易改。我们讨论了整整一个下午,涉及成本、团队能力、上线时间、未来扩展。AI可以给你列出优缺点,但它不会替你拍板,因为它不用背锅。
-
修别人留下的屎山。我们公司有一个核心服务,原作者早就离职了,没有任何文档,代码风格随心所欲。我上个月花了三天时间才搞明白一个bug的根因。AI面对这种毫无规律的“熵增”系统,表现比人类还差——因为它默认代码是合理的,而现实是很多代码不合理。
所以我觉得,未来程序员的价值不是“写代码”,而是在混乱的业务和技术之间架桥。代码本身会越来越不值钱,值钱的是你对业务的理解、对系统的判断、以及在关键时刻的决策能力。
四、我现在的生存策略(可能对你有用)
说了一堆,分享几个我现在正在做的事情,不一定对,但至少让我晚上睡得着觉。
第一,刻意练习“无AI编程”。
每周至少抽出一个下午,关掉所有AI工具,纯手写代码。不是为了效率,是为了保持手感。就像运动员即使有高科技训练设备,也得练基本功一样。我不想变成一个离开AI就不会写代码的人。
第二,多读AI生成的代码,而不是只跑通就行。
以前我让AI写个排序,看一眼能用就过了。现在我会问自己:它为什么用快排而不是归并?这个边界条件它怎么处理的?如果数据量大一倍,还会不会崩?把AI当老师,而不是当工具。
第三,往“上游”走。
我最近在刻意锻炼自己“提需求”的能力。以前是别人说什么我做什么,现在我会主动问:为什么要做这个?有没有更简单的办法?能不能不做?这些问题是AI回答不了的,因为它们需要业务理解和人性的判断。
第四,接受一个现实:以后不会有“稳定”这回事了。
这个行业的技术栈三年一变,现在AI又加速了这个过程。我做好了一年换一次工作的心理准备,同时也开始攒钱、学习理财,给自己留条后路。不把所有的安全感都压在一份工作上。
五、最后聊点轻松的:AI让我重新喜欢上了编程
说来奇怪,虽然上面写了那么多焦虑,但我最近对编程的热情反而回来了。
以前写代码有很多“脏活累活”——写单元测试、改配置文件、调CSS对齐、修一些低级的语法错误。这些事耗费精力,但没有成就感。现在AI帮我干了大部分脏活,我可以把时间花在真正有意思的事情上:设计架构、优化性能、研究算法。
上周我用AI帮忙搭了一个小型的数据管道,从Kafka消费到ClickHouse,中间做了一些清洗和聚合。整个过程我只写了核心的转换逻辑,大概50行代码,其他的全是AI生成的。跑通的那一刻,我盯着监控面板上的数字,心里想的不是“AI好强”,而是“我终于可以做那些我一直想做但没时间做的事了”。
也许这就是答案:AI不会取代程序员,但会用AI的程序员会取代不用AI的程序员。这不是一句废话,而是一个提醒——拥抱变化,但别丢掉自己最核心的能力。
好了,写了快三千字,手都酸了。我得去开会了,产品经理又在群里催进度了。
哦对了,文章里提到的Claude Code升级Spring Boot的例子,真实耗时其实是一天半(不是我吹的一天),因为AI改完后测试挂了几个,我调试了很久。但说出来就没那么震撼了,你懂的,写博客嘛,稍微夸张一点才有人看。
就这样,下次聊。
2026.04.10 写于一个加完班的深夜
更多推荐



所有评论(0)