一个工程团队最慢的地方,有时不是 CI、不是测试,也不是需求变更。
而是每个关键动作都在等同一个人点头:代码能不能合、今天能不能发、架构选 A 还是 B、线上故障先查哪里。这个人通常是团队里最强的技术负责人。问题也就卡在这里:越强,越容易变成人工闸门。
Practical Engineering Management 4 月 21 日刊文,借 David Marquet 在《Turn The Ship Around》中提出的 Leader-Leader 模型,讨论工程团队如何从“领导审批”转向“工程师基于意图自主决策”。这篇文章有意思的地方,不是又推荐了一本管理书,而是把一个老问题说透了:技术负责人继续以专家身份把守所有关键节点,可能正在制造瓶颈,也在训练团队更熟练地请求许可。
技术把关不能取消,但审批点要换位置
Marquet 接手 USS Santa Fe 潜艇后,核心变化不是让船员随便做决定,而是把命令链改成意图链。船员不再只等上级下令,而是说:“I intend to...”——我打算这么做。
放到工程团队里,这个语言变化很具体。
过去是:“Can I simplify this UI?”
更好的表达是:“I intend to simplify the navigation UI because we can reuse existing design-system components and ship in two days.”
多出来的不是客气话,而是理由、边界、风险和验证方式。管理者听到的也不再是一个许可请求,而是一段可检查的判断过程。
| 场景 | 审批式表达 | 意图式表达 | 管理者该做的事 |
|---|---|---|---|
| 代码评审 | “你帮我看看能不能合” | “我这样改是为了解耦认证逻辑,风险在缓存失效” | 问风险、测试和回滚,不替他重写 |
| 发布检查 | “今天能不能发版” | “我打算灰度 5%,看错误率、延迟和核心路径转化” | 看护栏是否完整 |
| ADR | “架构你拍板吧” | “我建议选方案 B,因为迁移成本低,但一致性较弱” | 逼清取舍,而不是直接定案 |
| 故障处理 | “我去查一下” | “我先查日志,再核配置和网络链路” | 让排查思路可见,事后能复用 |
这里不能误读。
Leader-Leader 不是取消代码评审,也不是取消发布检查。它要取消的是“领导作为唯一判断器”。保留下来的,是更硬的决策护栏。
对工程经理和 Tech Lead 来说,日常动作会变。过去回答“可以”或“不可以”,现在要多问四个问题:
- 你基于什么判断?
- 失败信号是什么?
- 怎么回滚?
- 这和当前团队目标是否一致?
短期看,这会让沟通变慢。长期看,它是在把判断力从一个人身上拆出来,放进团队流程里。
专家型管理最容易把强人变成瓶颈
工程经理和 Tech Lead 大多是靠技术能力赢得信任的。代码写得好,架构看得准,线上问题救得快,这些都是真本事。
也正因为是真本事,他们很容易留在“我来把最后一关”的位置。
这个位置有安全感。团队也省事。遇到不确定的事,找最强的人拍板就行。
代价是隐性的:负责人越忙,团队越等;负责人越准,其他人越不敢判断。久而久之,代码评审像交作业,发布像等批条,ADR 像请领导定夺。
Google Project Oxygen 的结论提供了一个有用参照:有效管理者最重要的行为,是做教练、授权团队、不微观管理;关键技术能力排在后面。这个排序不是说技术不重要,而是说技术能力是必要条件,不是充分条件。
现实约束也要摆在桌面上。
强监管、支付、基础设施、医疗等团队,不可能简单照搬创业团队的“快”。这些场景有发布窗口、审计记录、权限控制和事故责任。出了问题,不是复盘几句就结束。
所以可行路线不是“少审批”,而是把审批前移、固化、自动化。
| 风险场景 | 不该怎么做 | 更可行的护栏 |
|---|---|---|
| 高风险发布 | 让负责人临时凭经验放行 | 发布清单、灰度、feature flag、可回滚方案 |
| 架构分歧 | 让最资深的人口头拍板 | ADR 记录取舍、约束和后续验证点 |
| 线上故障 | 等某个高手上线救火 | 监控告警、SLO、Runbook、无责复盘 |
| 代码质量 | 把评审变成领导审稿 | 自动化测试、静态检查、风险导向评审 |
这对两类人影响最直接。
工程经理要少做临场裁判,多做规则设计者。比如把发布检查从“找我确认”改成“清单满足即可发,异常必须升级”。
Tech Lead 要少做最后答案提供者,多做判断训练者。比如代码评审时,不急着给方案,而是要求提交者说清风险、替代方案和回滚路径。
这不是削弱技术负责人。恰恰相反,技术负责人的价值要从“我最会判断”升级到“我让更多人能判断”。
自治能不能成立,看能力和清晰度两根柱子
Marquet 的 Leader-Leader 模型里,授权不是一句“我相信你”。它靠两根柱子支撑:技术能力和组织清晰度。
技术能力决定“是否安全”。组织清晰度决定“是否正确”。
工程团队也一样。一个工程师会用 Kubernetes、懂发布流水线、知道如何查日志,才有资格在生产环境里自主操作。一个工程师理解产品目标、SLO、业务优先级,才可能在速度、稳定性和成本之间做取舍。
只给权限,不补能力,自治会变成冒险。
只讲能力,不给清晰目标,自治会变成各做各的。
可以用一个简单分层来判断团队走到哪一步:
| 团队状态 | 典型表现 | 管理者下一步 |
|---|---|---|
| 请求许可 | 大事小事都等负责人点头 | 要求每个请求带上理由、风险和回滚 |
| 表达意图 | 工程师能说清自己打算做什么 | 用评审和复盘校准判断质量 |
| 护栏自治 | 常规发布和故障处理不依赖单点负责人 | 把经验沉淀到清单、ADR、Runbook 和监控 |
| 高风险升级 | 遇到安全、合规、重大客户影响时主动升级 | 明确升级条件,不靠临场猜测 |
接下来最该观察的,不是团队有没有把“Can I”统一改成“I intend to”。语言只是入口。
更硬的观察点有三个:
- 负责人休假时,常规发布是否还能稳定推进;
- 故障复盘能不能产出可复用的判断过程,而不是只记住某个英雄;
- 代码评审是否从挑语法,转向讨论风险、边界、测试和意图。
如果这些还做不到,团队并没有真正自治。它只是把审批话术换了个说法。
真正的变化,是负责人不再站在所有路口当红绿灯。规则、监控、SLO、feature flag、ADR 和复盘,开始承担一部分判断功能。
这时团队才有机会从“等一个能人”走向“养一群会判断的人”。
