# 从TL到EM：AI Coding Agent使用心得

- 来源：宝玉 (@dotey)
- 发布时间：2026-07-30 04:03
- AIHOT 分数：62
- AIHOT 链接：https://aihot.virxact.com/items/cms6jb3c404x6rohzkjiwc97t
- 原文链接：https://x.com/dotey/status/2082557559177941304

## AI 摘要

作者分享使用Coding Agent的转变：从TL（技术主管）角色转向EM（工程经理）角色，减少对AI代码的微观干预，更多关注全局规划与结果验收。这一转变极大释放了Agent生产力，实现每天一个小版本迭代，并在技术选型上不再局限于个人偏好，如用不熟悉的Swift和Rust开发项目。瓶颈在于人没想清楚时，Agent再强也无用。

## 正文

今年以来，我在使用 Coding Agent 方面有一个很大的变化，就是从 TL（Teach Lead） 的角色变成了 EM（Engineering Manager） 的角色。

这两个角色主要差别在技术参与深度多少。

之前我更像一个 TL，虽然不是说事必躬亲，但是系统设计、代码审查什么的肯定是少不了的，说到底还是对 AI 写的代码不放心。

这样虽然质量更有保障，但是人会成为 Agent 的瓶颈，很多事情需要人去决策，细节需要人去掌握。

转折点在 Fable 5 前后，我发现 AI 写的代码质量已经相当可以了，只要稍加验证就不会有太大偏离，所以我越来越少的去干预 AI 写代码，而是会更站在全局去看一个项目：

决定项目怎么做，去验收好结果。

这极大的释放了 Agent 的生产力，大部分时候我想好要做什么功能，先和 Agent 一起做一个技术方案，然后确认方案没问题后，用 /goal 加上方案，让 Agent 去执行，写代码和自动化测试，等做好再去验收下功能，代码不怎么细看。

有 Bug 了就是把 Bug 描述给 Agent 让它自己去重现解决，并且让 Agent 补上相关测试覆盖，修复了后人再去验证一下。

这样还有一个好处，就是在技术选型时，不会局限于你自己的喜好和擅长。

当你是 TL 的角色是，还是会有点过度关注技术实现，包括技术选型会偏向你自己熟悉的喜欢的，而不一定是最适合的。

当你是 EM 的角色做技术选型，就不再关注自己擅长什么，而是什么技术最适合项目。

我因为前端熟悉，所以最开始开发字幕翻译 App 时，就优先考虑 Electron 这样的技术栈，因为自己熟悉，有问题能解决也能写的出来。

后来发现 Electron 性能很难满意，就换成了 Swift + AppKit 原生技术栈，本来我 Swift 是不熟悉的，但有 AI 辅助，整个过程毫无压力。

现在在设计 BaoCut 下一个大版本的时候，要考虑跨平台方案，首选是 Rust，哪怕我从来没写过一行 Rust 代码，但我知道这是一个很好的跨平台选择。

目前基于 Rust 的第一个版本已经写完了，整个过程几乎没有任何语言上的障碍。

通过这样的模式我在开发 BaoCut 的时候，基本上可以每天一个小版本迭代。https://baocut.app/releases/

这两天速度慢下来了，是因为需要构思新的大版本，这时候人就又成了瓶颈了：如果人没想清楚该做什么，Agent 再厉害也帮不上。

### 引用推文

> 宝玉：通常北美的工程技术相关的职业分成以下五个类别: 开发工程师 SE / SDE(Software Engineer / Software Development Engineer) 工程经理 EM / SDM(Engineering Manager / Software Development Manager) 技术主管...
