今年作为工程师你将做出的最重要决定

发布: (2026年1月11日 GMT+8 03:41)
8 min read
原文: Dev.to

Source: Dev.to

请提供您希望翻译的正文内容,我将按照要求进行简体中文翻译并保留原始的格式、Markdown 语法以及技术术语。

工程师的二元选择

Option A: 继续逐行审查代码,好像是人写的一样。这条路径保证你成为瓶颈,抑制团队的吞吐量。

Option B: 演进你的审查策略,将低层实现的控制权交给 AI,以释放高层架构的速度。

如果你选择 Option A,本文不适合你。你很可能会继续在日益增长的 PR 浪潮中沉沦,直到外部指标迫使改变。

如果你选择 Option B,你已经准备好进行范式转变。然而,盲目“让 AI 编码”而没有治理体系会招致混乱。你需要强有力的策略,在不审查每一行实现的前提下保持系统质量。以下是让 Option B 成为现实的五大策略。

速度陷阱:为何选项 A 在数学上不可能

此决定受制于硬性的数学现实。

  • 一名有经验的工程师大约能在 每小时审阅 200 行复杂代码
  • 一个 AI 代理可以 每秒生成 200 行代码

如果你选择 选项 A,就是把线性的人类处理速度与指数级的 AI 生成速度相对抗。随着团队采用更多 AI 工具,代码产出量将呈数量级增长。如果你的审查政策仍是“每行代码都必须有人眼审阅”,你的积压将无限增长,开发速度将趋近于零。

你无法比机器阅读得更快,必须在思考上超越它。

Source:

策略 1:攀登抽象阶梯

第一步是重新定义你对软件的理解

在过去,“了解代码库”意味着知道特定函数内部的 if 语句是如何工作的。在 AI 时代,这种做法不可持续。将你的思维模型划分为层级结构:

Product → System → Modules → Functions

转变: 停止审查最低层级(本例中的函数)。

如果一个产品集成了 Stripe,你不需要关心代码是使用三元运算符还是 if‑else 块。你应该关注的是存在一个 计费系统,其中包含一个遵循特定合同的 Stripe 模块

你的任务是保持对更高层级(产品和系统)的清晰思维模型。这与 合同专化原则 相一致。通过保持边界的刚性,你可以让 AI 处理这些边界内的实现细节。正如 编码已成为商品 中所指出的,价值已经从“砖块”(函数)转移到“蓝图”(系统架构)。

策略 2:审查指令,而非代码

当你发现架构或逻辑中的缺陷时,你的本能会去修复代码。请克制这种冲动。

如果 AI 生成的代码违背了你的架构,这就是一次指导失误。与其重写代码,不如重写生成该代码的指令系统提示

这会把你从代码审查者转变为代理的架构师。正如在**From Scripter to Architect**中讨论的那样,你不再是流程的作者;你是边界的架构师。修正指令可以保持将来编写下 100 项功能的“员工”,而手动修正代码既不教会任何东西,也只解决单一实例。

Strategy 3: Automated Verification as the Safety Net

对不审查低层代码的担忧是合理的:“如果出现 bug 会怎样?”

于是出现了第三种策略:Aggressive Automated Testing(积极的自动化测试)。

当你停止审查函数时,就失去了肉眼捕捉细微逻辑错误的能力。用 Automated Verification 来取代这种手动的警觉。

  • 测试保证你可以对细节“保持无知”。
  • 当工程师(或 AI)需要修复他们并不完全理解的低层模块中的 bug 时,测试套件充当护栏,确保修复 Stripe 集成不会破坏 User Auth 流程。

这实现了 The Principle of Intrinsic Verification。你用编写健壮测试的前期成本,换取手动审查的高摩擦成本,从而逃离 AI Verification Trap,并将注意力聚焦在系统层面的约束上,而不是语法细节。

策略 4:强化模式至上

你无法验证所有内容,但你可以验证边界。

在 AI 编写任何逻辑代码之前,严格定义输入和输出模式(Types、Interfaces、Zod schemas)。这就是 Schema Supremacy

  • 控制进入和离开模块的数据形状,使你不必过多关心内部的数据转换方式。
  • 你审查的是契约的严格性,而不是转换逻辑。
  • 如果 AI 遵守模式,坏代码的影响范围就会被限制。

策略 5:可观测性即利息支付

  • 将关注点从“这段代码干净吗?”转移到“系统健康吗?”
  • 确保你拥有日志、度量和警报,一旦生产环境出现边缘情况就会大声报警。

这与 [Observability as …](链接待补)相吻合。

[Interest Payments](https://ttoss.dev/docs/engineering/guidelines/technical-debt#4-observability-as-interest-payments).  
If you can't see it fail, you can't afford to let the AI write it without review.

结论

从审查员转变为架构师的决定关乎相关性和影响力。

你可以继续做守门人,捕捉每一个缺失的分号,骄傲地 owning 每一行代码,同时每月只交付一个功能。或者,你可以进化为定义系统、编写指令并强制执行验证循环的架构师——赋能 AI 劳动力以计算速度交付。

第一条路径通向传统工程。第二条路径定义工程的未来。做出你的选择。

Back to Blog

相关文章

阅读更多 »