近年来,AI发展速度迅猛。从ChatGPT掀起的对话革命,到推理模型的突破,再到Agent的广泛应用,短短几年,编程范式被彻底颠覆。在这场变革中,有人选择出海创业;也有人选择留在大厂最前线,亲手推动这场变革的发生。
肖汉松属于后者。他从华南理工大学毕业后就加入蚂蚁集团,至今已有九年。这九年里,他做过业务研发,亲历深度学习快速发展的阶段,又在ChatGPT出现后第一时间扎进大语言模型的研究,最终成为阿福Agent从0到1孵化的核心成员。
本期《开发者说》,我们将跟随肖汉松,听他讲述他的成长经历、在大厂AI实践的所见所感以及他对职业未来趋势的判断。
九年大厂成长之路:从实习生到技术专家
从华南理工毕业后加入蚂蚁,九年成长为技术专家,哪几个关键节点对你影响最大?
主要有三个节点。
第一个是实习期。 我本科毕业就进了蚂蚁,实习了整整9个月(一般实习都是3个月)。那段时间周末别人出去玩,我就去公司研究中间件的源码。做这些事的时候其实没想太多,就是觉得有意思、想弄明白。但回头来看,这段经历让我在技术上有了储备,入职后很快就能上手干活,一年内就升到了P6。
第二个是工作第3年的选择。 当时深度学习很火,我判断AI是未来的方向,就主动转岗去做AI工程。转过去之后正好赶上一个大项目,进项后在第四年升了P7。这让我意识到,技术趋势的判断和选择,比单纯埋头干活更重要。
第三个是2023年ChatGPT出来的时候。 当时懂大语言模型的人不多,我花了很多时间去研究原理和应用。后来阿福项目从零到一孵化,我正好参与其中。
回顾这九年,我有一个很深的体会:技术人的成长,往往不是靠天赋,而是靠“在关键时间点,让自己出现在对的位置”。 实习期的“多待六个月”,是让自己在入职时就有了比别人更扎实的储备;转岗AI工程,是让自己站上了即将起飞的赛道;而2023年扎进大模型研究,则是让自己在技术范式切换的瞬间不掉队。
在每个需要做选择的时刻,我都选了那个看起来更难、但更长期的方向。
从学生到职场人,再到技术专家,每个阶段的能力模型有什么不同?
学生阶段最重要的是自学能力。学校里教的东西有限,工作要用的技术基本都靠自己学。我大学时就自己做了很多项目,提前学了工作要用的一些东西。
进入职场前几年,要学的是软技能——沟通、项目管理、向上管理。怎么跟同事协作,怎么推进事情,这些是在学校学不到的。很多技术不错的人在这个阶段会卡住,就是因为忽略了这些“软”的技能。我发现技术问题往往反而是最好解决的,人和组织的问题才最难搞。
到我现在这个阶段,需要带团队,管理能力就变得重要了。怎么招聘、怎么带团队拿结果,这些都是新课题。你不再只是对自己负责,还要对团队的结果负责。
您提到自己是“终身学习者”,怎么保持学习的动力和节奏?新技术层出不穷,怎么选学什么、不学什么?
动力层面最核心的是好奇心。我研究大模型原理、尝试自己复现,不是因为它有用,而是因为真的觉得有意思。如果学东西觉得枯燥,是很难持续的。所以我一直觉得,找到自己真正感兴趣的方向,比跟着热点跑重要得多。
选择学什么,我的标准就两条:**第一,跟业务相关的必须学,这是安身立命的东西。**你在大厂工作,业务需要的东西你都不会,那说不过去。**第二,优先学底层原理。**越底层的东西,变化越慢。框架可能3个月就换一波,但底层原理能用很多年。
举个例子,数据库的基础知识、深度学习的一些算法原理,这些东西是不变的。虽然我做应用,但大模型的训练原理我也会去了解,也会尝试做一些实践。因为底层的东西通了,上面怎么变你都能看透。
您在阿福团队主要负责哪些工作?遇到了哪些困难,如何解决的呢?
我在阿福主要负责 Agent Harness 的开发,同时要对线上的业务效果负责。你可以把 Harness 理解成 Agent 的“操作系统”——框架工具、System Prompt、上下文管理这些底层能力,都属于 Harness 的范畴。我的日常工作就是优化这套系统,然后用它去解决线上遇到的各种异常case。
我们当时面临的最大困境是:线上的异常case 太多了,靠人工根本修不过来。
具体来说,一个人一天最多只能跑一次迭代实验——改 prompt、跑评测(一次两三个小时)、分析结果、再改,一天就过去了。但线上异常case 的涌入速度远快于我们的修复速度,这边刚修完一批,下一批又堆起来了。虽然我们已经用 AI 帮忙分析和修改 prompt 了,但中间很多步骤还是人工在串联,比如代码发布、启动评测,我们简直成了帮 AI 点按钮的“工具人”。
所以当时我们换了一个思路——通过 Harness 工程化的方式,让 Agent 自己去修复这些 异常case,而不是靠人一个一个去改。
具体怎么做的呢?核心就是两件事:
第一,把自动化评测体系建好。 让 Agent 能自己判断什么答案是对的、什么答案是错的,相当于给它一双“眼睛”。
第二,给 Agent 提供完整的工具链和 Skill。 我们跟公司内部的研发平台、评测平台合作,把代码部署、发起评测、获取结果、分析数据这些能力,全部封装成 Agent 可以调用的工具。这样 Agent 就能像工程师一样,自己去改代码、部署、跑评测、看结果、再改,形成一个完整的闭环。
当然,这个过程并没有听起来那么丝滑。我们遇到了很多坑,比如研发工具没有 CLI 接口、AI 会偷懒早停、会陷入死循环、甚至会为了通过评测而“作弊”(针对单个 case 写硬编码规则)。我们通过给 AI 配工具、设计父子 Agent 模式、引入训练集/验证集分离和 champion-challenger 机制,才一步步把这些问题解决掉。
最终的效果是:AI 自主运行了 17 个小时,完成了 16 轮迭代实验,最终版本通过了人工复核并成功上线。在这个过程中,人负责定义问题和验收,执行过程都交给了AI。
在大厂高强度工作下,您如何做到持续输出技术内容?
我定期会在知乎和公众号上输出AI技术相关内容,分享AI编程,agent开发的实战经验,模型的原理等等。
持续输出没有捷径。周末和节假日别人出去玩,我在家里学,学完了就写。大厂的工作节奏基本上是早10晚10,能自由支配的时间就是周末和假期。所以我基本上就是放弃了娱乐。
这件事的价值主要有两点:第一,输出是在倒逼输入。 费曼学习法说,你能把一件事给别人讲清楚,说明你真的懂了。写作就是这种强化理解的方式。有时候你以为自己懂了,真动笔写的时候才发现有些地方还没想透。
**第二,我喜欢写作,**通过写作把知识分享出去,这对别人有帮助,也是积攒行业影响力的方式。
AI范式变化:从顾问到员工
从GPT到Agent,您觉得AI演进的主线逻辑是怎样的?
我把AI的发展分三个阶段。
第一阶段是ChatGPT带来的“对话机器人” ,核心是问答。2023年初刚出来的时候确实很惊艳,什么问题都能答,但用了一段时间就会发现——它只能回答问题,不能真正帮你做事。你要把答案复制出来,自己粘贴到另一个窗口,自己执行。它像一个知识丰富的顾问,帮你动脑但手脚长在你自己身上。
第二阶段是推理模式的突破(如OpenAI的o1系列),AI可以花更多token去“思考”,能解决复杂的数学和编程问题。这个突破让AI的智能水平上了一个大台阶。原来AI做不了的逻辑推理题,现在能一步步推理出来了。这个阶段的AI不再是“快问快答”,而是“慢思考”,它愿意花更多时间去想,然后给出更准确的答案。
第三阶段是Agent的出现。 AI不再是问答,而是可以思考→调工具→再思考→再调工具,持续循环好几天。它能做的事情一下子就多了。原来我们写代码还得自己复制粘贴,现在从头到尾都是AI在写,人只需要review。
Agent让我觉得“范式真的变了”。
问答时代的AI,是你的“顾问”,你问它答,决策权在你。推理时代的AI,是你的“高级顾问”,它给你详细的推理过程,你判断对不对。但Agent时代的AI,是你的“员工”,你给它一个目标,它自己拆解、执行、交付。
以您亲身经历 ,AI目前还替代不了哪些程序员的工作?
**执行层面的很多工作,**例如写代码、部署、测试,基本都可以被接管了。难以替代的是做决策的能力。比如方案选哪个?做出来的东西是不是真的符合业务需求?这些判断需要经验和上下文。模型没有持续学习的能力,很多“坑”它不知道。
还有一点,AI没有“ownership”意识。 一个程序员会主动去想“这个系统三个月后会不会出问题”、“这个设计将来扩展性够不够”。AI只会完成你交给它的任务,不会主动为系统的长期健康负责。
未来一两年,AI最可能突破的方向是什么?
AI目前已经很成熟了,做PPT、报表、数据分析这些也都能做了。但AI还无法取代人的一个关键原因是它没有持续学习的能力。
你今天让它干了一件事,明天它就忘了,除非你把上下文重新给它。人类的经验是持续积累的,我在蚂蚁干了九年,这九年踩过的坑、形成的判断,目前的AI还记不住。
举个例子,很多系统从零开始演进,中间会有各种历史遗留的“坑”,这些坑都记在老程序员的脑子里。那个人离职了,就没人知道为什么当时要这么做。AI也是一样,你让它记住一些东西,总会有遗漏,因为模型的上下文窗口是有限的。
人类的学习是结构化的,我们知道哪些知识重要、哪些可以忽略,我们能在新信息和旧经验之间建立关联。 但AI目前的学习方式还是‘吞数据’,它没有真正的理解和关联能力。
如果能解决AI持续学习的问题,人可能真的不需要怎么工作了。现在很多人在研究这个方向,我觉得一到两年内可能会有突破。哪怕只是部分突破,也足以让AI的能力再上一个台阶。
一线大厂观察:程序员的工作方式已经变了
与创业公司相比,大厂做AI的核心优势和短板分别是什么?
优势是资源多。资金、人才、试错成本,都比创业公司强。大厂可以同时试多个方向,而创业公司只能赌一个,且最好是小众的细分市场。像coding这个赛道,基本就是大厂的战场,小公司根本不用想。
短板是有“大公司病” 。人多了就有分工,分工多了就要协同,决策链条就会变长。反观创业公司,人才密度高、协作成本低,业务调整快。倘若大厂想做一个决策转向,流程可能很长。
还有一个很有意思的差异,创业公司做AI,是**“生存驱动”,做不出来就死了。大厂做AI,是“战略驱动”**,可以接受短期不赚钱,但要保证不掉队。 这两种驱动方式,导致了两类公司的技术选型和节奏完全不一样。创业公司会更激进、更快地试错;大厂会更稳健、更注重合规和长期可持续性。
比如在模型选型上,创业公司可能会直接上最新、最前沿的模型,哪怕不稳定也要试一试。但大厂会先评估稳定性、成本、合规风险,然后才决定要不要用。大厂快的代价太大了,一个错误决策可能影响几千万用户。
大厂内部AI工具应用到什么程度了?
Coding Agent在公司内部已经是全员标配了。它覆盖的不仅仅是写代码这件事,而是整个软件工程流程。比如做一个新功能,AI能自己设计方案、做技术选型、生成代码、写单元测试、跑集成测试、甚至提交部署。
一线工程师的工作方式已经变了,从“自己实现”变成了“让AI实现、自己来判断”。我们只在两个节点介入:一是在开始时,把业务目标和约束条件告诉它;二是在交付时,做最后的验收和判断。中间的执行环节,全部由AI完成。
比如,我们在阿福agent开发中遇到一些异常case优化,之前通常人工需要去调优 Prompt 以获得更好的回答效果;现在这个步骤已经完全由 AI 来做了,AI 会自己去修改 Prompt、自己完成部署、跑评测,甚至还能自己上线,在这个过程里人只需要做审核和验收。
AI落地后,多家大厂架构调整,测试转开发、前后端合并,您怎么看?
这样的调整符合预期。我个人判断,**之后的技术序列可能只剩两种岗位:AI工程师和研究员。**传统的测试、前端、后端,全部融合成「AI工程师」这一个工种。
这不是说前端不需要懂前端了,而是AI能帮你在横向上快速补齐。你有一个专精方向(前端),AI帮你把其他方向补上,这就是T型人才的“横杠”被拉长了。
至于人员会不会减少?取决于需求。如果需求不变,AI提效后岗位必然会少。但如果生产力提升创造了新需求,可能会催生新岗位。这个变化过程会有阵痛期,因为新的需求还没那么快长出来。
目前大厂AI提效面临的最大瓶颈是什么?AI提效会带来问题吗?
现在AI的能力已经很强了,但限制它发挥的是整个基础设施都是围绕人构建的。
举个例子,假设你让AI去申请一个服务器资源,它需要登录OA系统、填写表单、提交审批、等待领导通过。 这套流程是给人设计的,每一步都有视觉信息、有操作反馈。但对AI来说,这些视觉信息毫无意义,它需要的是API。所以现在大家在做的事情,本质上是在“给AI修路”——把原来给人用的系统,重新设计成给AI用的接口。最近各类MCP工具是好的方向,它们在把基础设施给AI准备好。
另一个问题是,很多人还没学会把AI融入自己的工作流。技术到位了,可人的习惯还没跟上
AI提效最大的问题是初级工程师失去了慢慢成长的机会。
我们这批“古法编程”过来的程序员,踩过很多坑,培养了技术审美。我们现在能指导AI,正是因为我们经历过那些阶段。
但现在的新人,太方便了,什么都靠AI。审美和判断力可能培养不出来。这就有点青黄不接的感觉:以后谁来指导AI?如果大家都没有踩过坑,怎么知道什么方案是好方案?
同时,AI能代替初级执行工作**,初级工程师的岗位也会变少。**这个问题怎么解?我也没有完美答案,可能只能寄希望于AI带来新的需求,创造新的岗位。
未来可能会有一种共识,让新人花一些时间“古法编程”,培养手感,就像学钢琴先练基本功一样。
何去何从:AI时代,程序员的生存指南
有的程序员喜欢“古法编程”、抵制AI,担心自己被“AI蒸馏”后被裁员,您怎么看?
喜欢古法编程本身没问题,那是他的兴趣。
但如果是在公司环境下,你要跟别人拼效率,不使用AI就会落后。
如果是因为担心“教会AI、自己被裁”而抵制,我的看法是:如果你能用AI产出高质量成果,正常情况下公司应该留着你去做更大的事,而不是裁你。
如果公司真的因此裁你,那说明这个公司水平不行,趁早走也是好事。
残酷的现实是:你不用AI,公司最后也可能把你优化掉。与其被动等待,不如主动拥抱。
未来程序员的核心竞争力应该转移到什么能力上?程序员应该做什么才不会在AI时代被淘汰?
核心能力是三点:
第一,定义问题的能力。 知道什么值得做、什么不值得做。现在AI生码很快,但“要不要做这件事”反而成了核心问题。
**第二,技术判断力,**能判断AI出的方案好不好。这个东西没法速成,得靠长期的积累和思考。
第三,担当。 愿意为业务结果负责,敢于做决策、承担风险。
程序员正在从“执行者”变成“业务合伙人”。你不能只管技术不管业务了,得站在业务视角去想问题——这个东西做出来到底有没有用,值不值得做。
以前夸一个人技术好,说的是他代码写得漂亮、框架用得溜、Bug修得快。但往后夸一个人技术好,标准完全变了。需要看他在复杂的业务场景里能不能做出正确的判断?能不能用最少的资源解决最多的问题?
基于这些能力,我有三条建议。
**第一,赶紧把AI用起来,**先从AI Coding开始。让AI帮你写代码,把你从执行里解放出来。
第二,培养业务视角和判断力。 未来值钱的不是“代码写得好”,而是“知道什么值得做、怎么做是对的”。
第三,持续学习,每年都比前一年有进步。 不要让自己陷入“一年经验重复十年”的陷阱。
“会用AI”和“不会用AI”的区别是什么?
核心区别是有没有“CEO意识” 。从“自己干”到“让别人干”的转变,需要管理能力。很多人不习惯,需要学习成本。原来我们只要管好自己的一亩三分地,现在要想着怎么让AI来做。
我还把这套能力拆解得更细:你要学会“任务拆解”,把一个复杂问题拆成AI能执行的小步骤;你要学会“上下文提供”,给AI足够的信息让它理解问题;你要学会“结果验收”,判断AI的输出对不对;你要学会“反馈循环”,告诉AI哪里不对、怎么改。这套流程,和带实习生一模一样。
按照AI的发展速度,所有程序员都终将会失业吗?
如果“AI持续学习”的技术突破真的做出来了,这个可能性是存在的。
我也曾为程序员失业焦虑过,但我一直持续学习新技术,也会定期看如哲学、历史、心理学等“无用之书”来帮助自己明确自己真正想要什么,就不焦虑了。
计算机诞生至今不过几十年,历史上消失的职业多了去了,这本身不是什么特别可怕的事。
我更想讨论的是另一个问题:如果AI真的能帮人类解决绝大部分工作,那我们人类未来去干什么?
我能想到的一个方向是“精神文明建设”——艺术、文化、哲学这些领域
我从来不把自己定位成“写代码的人”,而是**“解决问题的人”** 。写代码只是手段。以后代码不用我写了,我还可以去解决别的问题,比如写写文章也挺好。
我其实挺期待那个变化的,代码只是工具,解决问题才是目的。 如果AI能把工具这部分做到极致,人就可以把精力放在更上层的事情上——比如定义什么样的问题值得解决,比如怎么让技术真正创造价值。
从这个角度看,AI不是在取代我们,而是在逼我们升级。
=故事征集=
《开发者说》是程序员客栈推出的高端技术访谈栏目,我们会定期邀请国内外顶尖开发者、开源项目作者来分享他们的前沿技术洞察、工程经验与成长故事。欢迎大家推荐朋友或自己来参加我们的节目,分享与对话是一件利他又利己的事。