我把自己丢进了 Steve Yegge 的 AI 工程师 8 级量表,结果有点尴尬

Steve Yegge 系列 第 1 篇 / 共 3 篇 2026-05-25 · 悦微日报

Steve Yegge 在 The Pragmatic Engineer Podcast 那一集里抛了一个让我没法假装看不见的分级表。他把工程师在 AI 时代的位置分成 8 级——L1 是完全不用 AI,L8 是已经在用编排器跑 agent 跑 agent。读完我合上电脑,对着自己默念了一下:"我大概在 L3,偶尔 L4。"

过去半年我一直觉得自己"用 AI 用得很深"——每天 Claude Code 不离手,自己造的 yuewei-digest 项目里 codex 在后台跑各种批处理。但对照 Yegge 这把尺子,我才意识到:我所谓的"用得深",很多时候还停留在"让 AI 帮我完成单个任务",而不是"让多个 agent 组成系统"

但后来一次 158 篇长文的 batch 任务,把我从 L3-L4 硬推到了 L5 边缘——这件事我留到第四节讲。

二、8 级阶梯到底分了什么

Yegge 这把尺子真正有意思的不是 8 个层级本身,而是每一级和上一级之间隔着一个具体的心理门槛。下面是我按他的访谈内容整理后的版本,不是逐字翻译——原访谈是口语展开,我按"门槛"这个维度重新组织了一下。

Yegge 估计 70% 的工程师还卡在 L1-L2。我把自己的工作流逐条比对:能让 Claude yolo 改单文件(L3 ✓),偶尔不看 diff 直接 commit(L4 偶尔 ✓),但要我同时启动 3 个 agent 各跑各的活——心理上做不到。

所以我给自己的判决是 L3-L4 之间。比我之前自我感觉的"L5 起步"低了整整一档。

三、我到底是技术上做不到,还是心理上不愿意?

写到这里我才意识到一个比"我几级"更值得追问的问题:我到底是技术上做不到 L5,还是心理上不愿意?

诚实回答的话——心理上居多。我能很快给自己找出三条回避 L5 的理由,而且每条听起来都挺合理:

第一是信任成本。我让 agent 改了一段代码、它没出错,我就放心了;下次它改了一段,我没看,结果出错了——这一次错误带来的"复盘+回滚"工作量,比我审视前 10 次正确的总和还大。心理上记住了那一次崩溃,就再也不愿意完全不看了。这是典型的负面偏好(loss aversion):人对"避免一次损失"的权重远高于"省下十次时间"。

第二是调试成本。AI 生成的代码经常会自发产生 Yegge 说的"异端"——一些 agent 集体接受的错误架构想法(错的数据流、双数据库并存、奇怪的命名约定)。这些异端删了之后还会自己长回来,因为某处文档残留就让 agent 再造一遍。L5 意味着我容忍这种"地下生长",而 L4 意味着我能在它发芽时就掐掉。从工程洁癖的角度,L4 是更稳的。

第三是责任归属。这段代码我没写但 commit author 写的是我的名字。如果 6 个月后有 bug 追到这段代码,我需要能解释"我当时为什么这么写"——L4 我至少瞄过一眼能模糊回忆,L5 我可能完全不记得 agent 当时怎么想的。对独立开发者来说,每一行代码都是你的简历,这件事比受雇于公司的人压力大得多。

但我也清楚,这三个理由都是用过去 10 年的工程经验在套今天的 AI。Yegge 在节目里翻出了 Richard Sutton 2019 年那篇著名的 Bitter Lesson 短文,戳穿了这一层:人类老想把领域知识塞进模型,但 AI 研究者反复学到的教训是,更多数据、更大训练中心,效果永远胜过聪明 trick。

Yegge 节目里反复提的那个"最新 Opus",到这篇博文发的时候已经又迭代到了 Opus 4.7——这就是 Bitter Lesson 在用模型版本号给自己背书。

对我的真正提醒不是"别 review",而是:不要把今天模型的错误,当成明天工作流设计的永久前提。我现在拒绝 yolo 的那些理由,6 个月后可能就是过期的工程洁癖。

四、一次意外的 L5 实验

但话又说回来,光说"心理障碍"是廉价的,得有个真正的实验来检验。

上个月我做 yuewei-digest 的 dense extraction batch 时,意外做了一次 L5 实验。

事情起因是这样:我手里有 158 篇长文(深度访谈、长博客、研究博客),要给每一篇跑一遍 dense 提取——把全文压成一个 15 字段的结构化 JSON,包括核心论点、可迁移框架、命名实体、概念词典、引用金句等。每篇用 codex CLI 跑大约 2-5 分钟。

按 L4 的我的习惯,我会一篇一篇跑,每篇跑完盯着输出看一眼"好不好"。158 篇 × 2 分钟盯一次 = 5 小时。基本不可能。

所以我强行让自己跨进了 L5:写了一个分批脚本,每批 20 篇,启动后丢到后台,不看任何中间结果,只关心最后的"成功/失败计数"。8 批跑了 7.6 小时(中间睡了一觉)。出来一看:151 成功,7 失败,95% 成功率。

但故事真正的转折发生在那 7 篇失败上。

我一开始想着"算了,7 篇而已,弃了"。但其中两篇是 Steve Yegge 的 IDE→AI Agents 访谈(108K 字)和 Dylan Patel 的 AI 算力瓶颈访谈(143K 字),都是顶级内容,弃可惜。我看了下日志,发现失败原因是 codex 输出的 JSON 内嵌了双引号没转义,破坏了 JSON 边界。

这时候 L5 的好处显现出来了:因为我没在中间盯每一篇,我看到的是一个模式而不是一个个例——「内嵌引号 escape」是个普遍的 LLM 输出短板,所有大模型都有。如果我之前一直在 L4 模式下逐篇审,我会以为这是某篇文章特殊;只有从 L5 抽离出来看 7 篇失败放在一起,我才意识到要装一个 json_repair 库做 fallback。

加了 fallback 之后重跑那 7 篇——5 篇救回,1 篇真超时(>10 分钟)放弃,1 篇本来就低价值不用救。最终覆盖率 157/158 = 99.4%

这次实验之后,我对 L5 的理解变了:

L5 不是"放任不管",而是"把审查粒度从单篇上移到批次"。

你的注意力依然在,只是从"这一篇对不对"变成了"这一批出了什么模式"。前者很容易陷进细节,后者逼我看系统性问题。这是这个等级表对我最大的启示——AI 分级不是装工具、不是信任工具,而是管理粒度本身在变

往回看 L1-L4,每一级都是在"做一件事的过程中"使用 AI;而 L5 之后,人开始转去做"批次决策"和"模式发现"——这其实是更需要工程师判断力的活,不是更少。

五、收尾

写到这里我意识到自己上调了一档。我现在大概在 L4-L5 之间——还没敢真正长期把多个 agent 同时跑起来(L6),但已经开始尝试在 batch 层面放手而不是逐篇审查。yuewei-digest 这种"自己造的工具自己用",本身就是逼自己往上跨的好场景:你写代码时只能 L4,但你跑自己写的 pipeline 时必须 L5,因为你没有那么多时间盯所有中间步骤。

但要从 L5 跨到 L6——同时跑 3 个 agent 各做不同的事,并且我"无聊到只是偶尔切换 tab 看看进度"——我还做不到。心理上我会焦虑漏掉一个 agent 已经在做我不希望的事。这一关我估计还得几个月才能跨过去。

如果你也在用 Claude Code、Cursor、Copilot、或者任何 AI 编程工具,欢迎给自己打个分:你估计自己在 L 几?

如果你也卡在 L4 到 L5 的门槛上,让我特别想听的是:你最近一次"差一点点就跨到 L5 但又退回去了"的具体场景是什么?什么让你退了回来?

留言聊聊。

Steve Yegge 系列预告

这是第 1 篇。第 2 篇我会聊他抛出的另一个让我没法假装看不见的判断:AI 吸血鬼效应——为什么"100 倍生产力"和"3 小时高效就被掏空"是同一件事的两面,以及组织该如何重新设计 work-life balance。

第 3 篇我会聊他对大公司的死刑判决:为什么未来软件创新会从大厂转移到 2-20 人小团队,以及独立开发者该如何抓住这个窗口。

订阅「悦微日报」或留意 yuewei-digest.pages.dev 就能第一时间看到后续两篇。

信源