一、我曾经的"黄金时代"
作为一个写了二十多年代码的传统程序员,我至今怀念以前的工作模式。
那时候,一个性能问题、一个 bug、甚至一个莫名其妙的坑,常常让我在代码里兜兜转转几天、几个星期。但解决之后那种满满的成就感,正是我积累经验的来源,也是这个职业最迷人的部分。
二、拥抱 AI 之后,我的工作方式
现在我同样在积极地拥抱 AI,但:我无法完全信任 AI,仍然需要人工介入很大一部分工作。这大概就是老一辈程序员的"历史包袱"吧。
目前我的转型工作方式是这样的:
(1)干活之前:先构建方案
让 AI 干活前,我要先构建方案、脚本、提示词,给 AI 一个大体的干活方向。在此基础上通过多轮对话,让方案不断精确、明确定义工作内容(逻辑架构、具体代码核心实现、实现步骤),经历 v1.0 到 vN 的迭代,最后评审确认后,才允许 AI 开始编码。
(2)编码本身:反而是最快的
AI 根据评审好的方案开始编码,通常十几分钟就完成了。但真正耗时的是前面那个 md 方案——它往往需要多轮评审才能做出来。
(3)编码之后:反复复核验证
作为有责任心的程序员,AI 写完代码后,我还要反复复核、验证、测试它的产出是否达到预期。反复验证达标后,才算阶段性模块到达里程碑。最后把这次改动的经验沉淀为工作 md 流水,甚至形成 skill。
(4)周而复始
不断重复上面(1)(2)(3)三个步骤,从整体架构到局部架构,形成一整套 md 项目文档:项目进度、技术架构、skill…… 耗时比例大致是:(1)占 50%,(2)占 20%,(3)占 30%。
这就是我作为老一代程序员,全面拥抱 AI 转型后的工作模式。AI 确实大幅提高了效率,但人在项目中发挥的作用仍然是核心。
我的原则是:
核心架构必须是我自己的主体思想,即使没有 AI,我也能完全掌控项目;
即使 AI 乱写出了问题,整个系统也必须安全可控;
AI 实现的每一项技术栈,我必须全面了解和审阅;
既要利用 AI,也绝不能被 AI 绑架。
三、现实中的困境
(a)领导认为我在浪费时间
现在的老板和领导认为我这种工作方式完全是在浪费时间——直接跳过(1)和(3),让 AI raw 干活就行了。
客观地说,短时间内确实见效。现在的 AI 能力确实已经覆盖了大部分场景,甚至它考虑的框架、写出来的代码质量确实比我高 2~3 倍,甚至 10 倍——这一点不可否认。
单个模块、甚至小项目,我觉得 raw 模式没问题。但项目庞大到一定程度、业务复杂到一定程度,需要多个模块逻辑互相穿插时,AI 可能会产生混乱——不是 AI 能力不行,而是它会天马行空、会理解错你的意思(甚至像是故意的:已经明确指示了逻辑,它还是错),甚至会主动制造低级错误。短期之内,AI 还难以真正胜任项目经理的角色。
更隐形的问题是:AI 产生的 bug,单从表面根本无法预知和体现。它也许会在将来某个时间点爆发——但那是"将来"的事。现在的领导只看重一件事:谁的产量大、谁更卷、谁做的东西上线快。
我经常被一句话怼得无言以对:
"怎么做得那么慢?现在有 AI 了,做东西很快的!"
这已经成了领导卷员工最常用的借口。无法否认一个不懂编程的新同事,干出来的东西就是比你快、看起来质量还高。
(b)被新同事干得"体无完肤"
比如新同事 A:前端、后端根本都不懂,毫无历史包袱——不懂规划、不懂测试、不懂压力负载、不懂项目管理、不懂质量为何物。
正因为什么都不懂,他依靠 AI 直接 raw 干项目。即使有 bug 也不管——发现了就把问题贴给 AI,让 AI 自己改;没发现就当没有。有一次我问他:"写的东西你看得懂吗?能改吗?"他回答:根本不懂,也不在乎。改到项目表面上能跑、看起来不出错就行,再有问题就重复上面的步骤。
一个新同事,干出来又快"质量"又高。在唯业绩、唯结果的今天,我们这帮"老屁股"就变成了"工作慢、瞻前顾后",甚至年龄大本身都成了原罪。几十年训练出来的经验,在 AI 面前似乎毫无价值。
四、冷静下来之后的几点总结
1. 老程序员正在输掉这场比赛
新进员工不需要多少努力,就能轻松跨过你多年经验积累的护城河,再加上年轻、能卷。二十年经验带来的一个副作用是"知道太多"——你预见过太多的死法,于是处处过度防御;而年轻人轻装上阵,毫无历史包袱。
2. 不能用"他们的代码将来会爆"来自我安慰
没错,有些项目爆了也无所谓——AI 可以自我修复;即使出了问题,那也是"后面"的问题,而且这是个概率问题,不是必然。所以"等 AI 出乱子后我来收拾残局"这种想法,本质上是自欺。
3. "资深程序员转型"是幸存者偏差
有人说,真正有竞争力的资深程序员应该用 AI 把自己的(1)(3)步骤也压缩掉,而不是跳过它们。这话没错,但能做到的毕竟是少数——从年龄、精力、职场、家庭、健康等各种因素来说,并不是所有人都能成功转型。更多的人,还是只能靠几十年的项目经验和手上的技能吃老本。
4. 这是一个劣币驱逐良币的时代
讲"架构"、讲"质量"、讲"隐患"是讲不通的——那不是领导的目标。领导自己也在被上面卷,业绩为王,没有人有耐心和你好好讨论一个项目的安全、稳定和高质量。
五、我的应对与自白
(1)认输,但不认命
转换跑道,甚至被迫"铁人三项"(外卖、快递、网约车)——还是那句话,从年龄、精力、家庭、健康等因素来说,并不是所有人都能成功转型。希望终究是属于年轻人的。我们老人努力过、风光过,即使现在落魄了,那也无奈。
(2)回归初心,继续玩下去
编程这个"游戏"始终是我的最爱。从小学时拿着小霸王学习机,玩着 BASIC 语言一路走到今天——这个游戏我会继续玩下去,不管以后是不是在跑铁人三项。
(3)从此闭源,不再分享
估计以后我不会再在任何论坛、GitHub 上分享代码和技术文章了。开源共享的心态被彻底颠覆——以后只有闭源、闭源、再闭源。往后日子只吹水。我不想自己几十年的经验,再被 AI 拿去训练,反过来卷现在的年轻人。