先交代一下我的职业履历,用一行代码概括:
const me = ['前端', '产品', '全栈', 'AI 一把梭'].join(' -> '); // 耗时十年
十年。足够一个孩子从小学念到高中,也足够一个程序员从”这个 div 怎么居中”进化到”这个需求能不能不做”。
第一站:前端入坑
当年入坑前端,纯属被忽悠。人家说前端简单,“不就是切切图、写写页面吗”。我信了。
后来的故事大家都知道了:jQuery 还没捂热,Angular 来了;Angular 还没学会,React 来了;React hooks 刚背熟,大家又开始聊”框架已死”。前端圈的技术栈更新换代速度,堪比我妈催婚的频率——你刚喘口气,新一轮的”最佳实践”已经拍在脸上了。
我一度怀疑自己不是在写代码,是在给 npm 仓库当测试员。
第二站:产品过渡
写代码写累了,我心想:要不转产品吧,动动嘴皮子就行,让程序员去实现。
转了才发现,这是从一个坑跳进了另一个坑,还是个带 KPI 的坑。程序员只跟电脑吵架,产品经理要跟全世界吵架:跟开发吵排期,跟设计吵像素,跟老板吵预算,跟用户吵”这个功能你们明明要的”。
但这段经历没白费。我学会了一项程序员稀缺技能:说人话。也明白了一个真理——需求是改不完的,就像头发是留不住的一样。
第三站:全栈两年
当了产品再回头写代码,视野确实不一样了。前后端通吃,数据库也摸,部署也来,自己一个人就是一支队伍。
缺点是:出问题的时候,甩锅都没人可甩。前端挂了是我,后端挂了是我,服务器挂了还是我。我就是自己的锅的完整供应链。
第四站:AI 一把梭
然后 AI 来了。
一开始我是嘴硬的:“AI 写的代码能看?变量名跟闹着玩似的。“后来我默默打开了 Cursor,从此一发不可收拾。现在的我:人负责想,AI 负责写,我负责在它胡说八道的时候拍桌子。
效率确实翻了好几倍,但也带来了一个新的哲学问题:如果代码是 AI 写的,Bug 算谁的?(目前我的答案是:算 AI 的,工资算我的。)
新赛道:制造业”搬砖”
说正经的。我现在换了条赛道——制造业。朋友问我干啥呢,我说:“工地搬砖。”
这当然是玩笑,但又不全是。制造业是真的”搬”:搬的是真实的物料,跑的是真实的产线,面对的是真实的、会生锈的、不按文档工作的世界。这里没有”刷新一下试试”,机器坏了不会因为你重启就原谅你。
可越是这样的地方,越让我觉得兴奋。互联网那套玩法——数据、流程、自动化、AI——在制造业还是片洼地。人家觉得天经地义的信息化,这里可能还停留在 Excel 加纸质单据的蒸汽时代。我那十年攒下的技能包,在这里居然有种”降维打击”的错觉。
能不能激起浪花,我不知道。但哪怕只是让某个车间少打印几张纸、让某个老师傅少爬几次梯子查数据,也算是把代码写进了现实世界里——这种成就感,比线上多几个 DAU 实在多了。
不惑过半
年过不惑,站在人生半场的休息区,喝水的时间比奔跑的时间多了,想的事情也杂了:
- 人生:上半场忙着证明自己,下半场想干点自己认的。搬砖也好,写码也罢,自己觉得值,就是值。
- AI:它不会取代你,但会用 AI 的人会。所以别怕它,用它,顺便防着它。
- 赚钱:还是要赚的,但越来越觉得,赚钱是结果,不是目标。把事做对了,钱自己会找过来排队。
- 家庭:代码可以重构,孩子的成长不能回滚。多陪陪家人,这比任何框架的生命周期都值得投入。
十年前,我以为我会一直写代码写到退休。十年后,我戴着安全帽站在车间里,兜里揣着手机远程让 AI 给我改 Bug。
人生这东西,果然比需求文档还不靠谱——但也正因如此,才好玩。