返回列表
🧠 阿头学 · 💬 讨论题

AI 时代 EPD 角色大坍缩:从“写代码”到“做评审”

AI 让写代码变得廉价,软件开发的瓶颈正式从“实现”转移到“评审”,平庸的想法将因为能快速变成原型而给团队带来灾难。
打开原文 ↗

2026-03-10 原文链接 ↗
阅读简报
双语对照
完整翻译
原文
讨论归档

核心观点

  • 瓶颈大转移:从实现到评审 代码生成成本趋零,原型泛滥,组织的稀缺资源不再是开发人天,而是对架构和产品价值的“裁决带宽”。
  • PRD 没死,只是时序反了 传统的“文档指导开发”失效,变成“原型先行,文档(或结构化 Prompt)作为评审的意图说明”,谁能把意图写清楚,谁就能让评审吞吐量上去。
  • 角色向两极坍缩 中间态的专业执行者被淘汰,未来只有能端到端产出的“通才建造者(Builder)”和把控底线的“系统评审者(Reviewer)”。
  • 差 PM 的破坏力呈指数级放大 过去烂想法卡在开发排期,现在烂想法能秒变原型,利用“来都来了”的沉没成本强行上线,制造巨量垃圾。

跟我们的关联

👤ATou 成为 top 0.0001% 的 AI 指挥官,核心壁垒不再是“写出多复杂的 Prompt 让 AI 写代码”,而是建立一套“意图-约束-验收”的系统化评审框架。Context Engineer 的本质就是定义“什么是好”以及“边界在哪”,你要做的是设计流水线,而不是亲自下场搓代码。

🧠Neta 20 人团队支撑 10万+ DAU 且要主攻海外,绝对不能按传统模式扩编 EPD。必须逼迫现有团队全员成为“Builder”(PM 跑通逻辑,设计在代码里调优),而你和核心技术合伙人死守“Reviewer”位,卡住海外增长的底层逻辑和系统架构,防范“原型洪水”冲垮产品体验。

讨论引子

  • 当团队里每个人都能用 AI 快速做出一个“看起来能跑”的海外增长工具时,我们用什么标准决定毙掉哪 99 个?
  • 审查 AI 生成的“屎山代码”往往比重写还慢,我们如何避免 Reviewer 成为团队里最痛苦、最容易成为新瓶颈的角色?

软件公司里的 EPD(Engineering, Product, and Design,工程、产品与设计)所做的,是打造好的软件。角色虽然分工不同,但最终目标都是交付可用的功能性软件:解决业务问题,并让用户真正用得上。说到底,这一切最终都落在代码上。之所以要意识到这一点,是因为……编码智能体突然把写代码这件事变得非常容易。那么,这会如何改变 EPD 的角色?

流程之变:

  • PRD 已死

  • 瓶颈从实现转向评审

  • PRD 万岁

对角色的影响:

  • 通才比以往任何时候都更有价值

  • 编码智能体成了硬性要求

  • 好 PM 很强,差 PM 很糟

  • 人人都需要产品感

  • 专业化的门槛更高了

  • 你要么是建造者,要么是评审者

  • 每个人都觉得自己的角色最能从编码智能体中获益——而他们都没错

PRD 已死

在 Claude 之前的时代,PRD(Product Requirement Documents,产品需求文档)是软件构建的核心。EPD 的流程大致是:

  • 有人(通常是产品)有了一个想法

  • 产品写 PRD

  • 设计根据 PRD 做出 mock

  • 工程把 mock 变成代码

这当然不是铁律(在创业公司,这些步骤常常会混在一起;最强的建造者能把其中多个环节一并完成),但它是教科书式的做法。

之所以需要这样,是因为开发软件(以及制作 mock)都要投入大量时间与精力。于是出现了分工来专门承担这些投入。随着人越来越专业化,就产生了跨职能沟通的需要。PRD 就是这种沟通的基础,它启动了所有事情。随后流程瀑布式流向设计,设计把漂亮的文字变成漂亮的 UI 和顺滑的 UX;工程再把它变成真实可运行的东西。

编码智能体改变了这一切。编码智能体可以把一个想法直接变成可用的软件。当我(以及其他人)说“PRD 已死”时,我们真正的意思是:这种从写 PRD 开始的传统软件构建方式已经死了。

瓶颈从实现转向评审

现在任何人都能写代码,这意味着任何人都能做东西。但这并不意味着做出来的东西就架构良好、解决了正确的问题、或易于使用。工程、产品与设计应该成为这些方面的评审者与裁决者。问题在于,生成出来的代码并不总是“够好”。EPD 的角色就变成了评审,并确保它“够好”。“够好”可以指很多层面:

  • 从工程系统视角架构得当:它是否以可扩展、高性能、稳健的方式写成?

  • 从产品视角思考充分:它是否解决了用户的痛点?

  • 设计到位:界面是否易用、直观?

由于做出一版初始代码的成本变得极低,我们会看到原型被做得更多。这些原型随后成为讨论焦点,由产品、工程与设计围绕它们进行评审。

https://x.com/signulll/status/2030404483897815089

问题是——生成代码太容易了。以前,写出代码要花些时间,所以作为评审者,在任何一个时间点能送到你桌上来评审的项目数量是有限的。可现在——任何人都能写代码。这意味着同时进行的项目数在增加。我们看到(在这三类职能里)瓶颈变成了评审:把这些原型拿来,确保它们“好”。

PRD 万岁

以 PRD 开始构建软件的 Claude 之前时代已经过去了。但描述产品需求的文档依然不可或缺。

假设有人有了一个想法,并迅速做出一个原型。它如何进入生产环境?它需要被 EPD 的其他成员评审。在这个过程中,一份书面文档总是有帮助,而且往往是必需的。别人评审时,如何判断代码里的某一部分是偶然写进去的,还是有意为之?这取决于意图。你需要以某种方式把这种意图传达出来。

我认为传统的 PRD 流程(PRD → mock → code)已经死了。但用文字描述产品需求这件事依然活得很好。这份配套文档应该成为原型在交付评审前的必备伴侣。

最标准的形式是一份文档,但也有一些有趣的想法:把用于生成该功能的 prompts 共享出来,作为一种沟通方式。如果未来的 PRD 只是结构化、可版本化的 prompts 呢?

通才比以往任何时候都更有价值

这里的通才,是指对产品、工程和设计三者都有良好理解的人。这类人一直都很有价值、影响力很大——但有了编码智能体之后,他们的价值更高了。为什么?

沟通是所有事情里最难的部分。它会拖慢节奏。一个人如果能同时做产品、设计与工程,比三个人组成的团队更快,因为后者有沟通成本。

以前,当实现是瓶颈时,这个通才仍然需要与别人沟通才能把事情落地。现在,他们可以直接和智能体沟通。这意味着他们只靠自己就能比过去产生更大的影响。

编码智能体成了硬性要求

当编码智能体让实现变得廉价,使用它们就成了硬性要求。能够拥抱编码智能体的人,可以凭一己之力做得更多:

  • 采用编码智能体的 PM 可以直接做原型来验证想法,而无需先写一份 spec 再等待

  • 采用编码智能体的设计师可以在代码里迭代,而不只是在 Figma 里

  • 采用编码智能体的工程师可以把时间从实现转向系统思考

拥抱编码智能体之所以是硬性要求,是因为这并不难;而如果你不这么做,你会被会这么做的人取代。

好 PM 很强,差 PM 很糟

好的产品思考比以往更有价值——你可以做出真正有用的东西。差的产品思考比以往更浪费。如果有人有个糟糕的产品想法,他们也能拿着一个原型出现——但那原型对应的功能要么没用,要么构思很差。这些原型如今需要更多评审——来自工程、产品与设计。这会吞噬时间与资源。与此同时,把这些原型推入生产环境也更有惯性(“它已经存在了!咱们就合进去吧!”)。这会带来更差或更臃肿的产品风险。

系统思考是要打磨的技能

在执行变得廉价的世界里,系统思考成为差异化因素。你应该把重点放在成为真正擅长系统思考的人,并对你的特定领域建立清晰的心智模型:

  • 工程:对如何架构服务、API 和数据库有非常好的心智模型

  • 产品:对用户真正需要什么(而不是他们说自己想要什么)有非常好的心智模型

  • 设计:对为什么某个东西看起来、用起来“对”有非常好的心智模型

系统思考一直很重要——那变化是什么?实现成本大幅下降。这意味着实现某个东西比以往更容易——但这不代表它就“够好”。优秀的系统思考者能让你一开始就确保在做正确的东西,也能让你事后评审别人的工作。这两点都意味着:成为优秀系统思考者的重要性在上升。

人人都需要产品感

编码智能体仍然需要有人去 prompt 它们,需要有人告诉它们该做什么。如果你让它们做了错误的东西——你就在制造更多需要别人评审的垃圾产出。知道该让智能体做什么(“产品感”)是硬性要求,否则你会拖累组织。这对工程、设计以及(显然)产品都成立。

EPD 现在很大一部分工作是评审原型。如果你有产品感,评审会更容易——即便是在评审设计/工程时也是如此。如果你没有产品感,你就需要在原型旁配一份超级细的产品文档;如果你有产品感,你在一个极简 spec 下也能理解功能意图,从而加速沟通、评审与交付。

专业化的门槛更高了

你需要会用编码智能体。你需要产品感。所有角色都在相互融合。

角色之间一直都有重叠。设计和产品长期以来就联系紧密——在 Apple、AirBnb 这样的公司,设计师会担任产品经理。“Design engineer(设计工程师)”这种角色也在 Vercel 等公司越来越常见。

这并不意味着没有专业化的空间。一个非常资深、只专注于系统架构的工程师依然有价值;一个还没开始 vibe coding 但对客户问题以及该做什么有极其清晰心智模型的 PM 也同样有价值;同理,一个能理解并 mock 出用户旅程与交互(哪怕仍在 Figma 里)的设计师也一样。

但专业化的门槛确实高了很多。你不仅要在自己的领域里非常出色,还得极其快速地评审,并且是出色的沟通者。而且在任何一家公司里,这类岗位大概都不会很多。

你要么是建造者,要么是评审者

我们看到 EPD 中正在浮现两类不同的角色。

第一类:建造者(builder)。这种原型有良好的产品思考能力,能使用编码智能体,并具备基本的设计直觉。在一些护栏(测试套件、组件库)的约束下,他们能把小功能从想法带到生产,也能为更大的功能做出可用的原型版本。

第二类:评审者(reviewer)。对于大型且复杂的功能,必须进行细致的 EPD 评审。这条路径的门槛很高——你必须在你的领域里是出色的系统思考者。你还必须节奏很快——因为需要评审的东西很多。

如果你现在是工程师——你要么以精通系统设计、能舒适地评审架构为目标,成为评审者……要么尝试提升自己的产品/设计能力,成为建造者。

如果你在产品或设计——你要么拥有对产品/设计极其出色的心智模型,主要做评审;要么跳进编码智能体,提升自己的编码能力。

有意思的是,角色正在某种程度上塌缩,如同上图所示:整个 EPD 都分布在这张图谱之上。角色开始相互融合——工程师有了更多时间,可以更多思考产品与设计;产品与设计也能写代码。

每个人都觉得自己的角色最能从编码智能体中获益——而他们都没错

Twitter 上有一条很棒的帖子,谈到哪些人最能从编码智能体中受益:

对现有产品有直觉性把握的人:知道它现在是什么样,哪里柔软,哪里会唱歌,以及如何把它迭代得更锋利。

这种人的最稀有形态,坐落在文化与深科技的交叉点上:真正的双语者。他们知道技术上能做到什么,也知道哪些文化潮流是真实的、哪些只是昙花一现。这种组合,正是把“必然感”的产品与“拼装感”的产品区分开的东西。

这条帖子很好地概括了这个新世界,并且半出圈式地传播了。它走红的一个原因是:每个读到它的人都觉得它在说自己或自己的角色。我看到产品人引用它、设计师、设计工程师、创始人……每个人都觉得它适用于自己和自己的工作。

而他们大概都没错!我认为,这个新世界最棒、最令人兴奋的一点是:背景变得不那么重要。我真心相信,这类人可以来自产品、设计或工程。这并不意味着人人都能成为这样的人——说起来容易做起来难。真正的独角兽很少。

这是一个令人兴奋的创造时代 :)

链接: http://x.com/i/article/2031049457031331841

EPD (Engineering, Product, and Design) at software company is about creating good software. Separate roles exist, but the end goal is functional software that solves a business problem that users can use. At the end of the day, this is just code. It is important to recognize that the output of what EPD as a function builds is just code because… coding agents have suddenly made code very easy to write. So how does this change the role of EPD?

The changing process:

  • PRDs are dead

  • The bottleneck shifts from implementation to review

  • Long live PRDs

Impact on roles:

  • Generalists are more valuable than ever

  • Coding agents are a requirement

  • Good PMs are great, bad PMs are terrible

  • Everyone needs product sense

  • The bar for specialization is higher

  • You're either a builder or a reviewer

  • Everyone thinks their role is most advantaged by coding agents - and they are right

软件公司里的 EPD(Engineering, Product, and Design,工程、产品与设计)所做的,是打造好的软件。角色虽然分工不同,但最终目标都是交付可用的功能性软件:解决业务问题,并让用户真正用得上。说到底,这一切最终都落在代码上。之所以要意识到这一点,是因为……编码智能体突然把写代码这件事变得非常容易。那么,这会如何改变 EPD 的角色?

流程之变:

  • PRD 已死

  • 瓶颈从实现转向评审

  • PRD 万岁

对角色的影响:

  • 通才比以往任何时候都更有价值

  • 编码智能体成了硬性要求

  • 好 PM 很强,差 PM 很糟

  • 人人都需要产品感

  • 专业化的门槛更高了

  • 你要么是建造者,要么是评审者

  • 每个人都觉得自己的角色最能从编码智能体中获益——而他们都没错

PRDs are dead

PRDs (Product Requirement Documents) were the focal point of building software in the pre-Claude era. The EPD process was largely:

  • Someone (usually product) has an idea

  • Product writes a PRD

  • Design takes PRD and creates a mock

  • Engineering turns mock into code

This wasn’t a hard and fast rule (at startups these steps blended together, the best builders were able to do multiple of these together) but it was the textbook way to build things.

This was required because building the software (and building the mock) required a significant amount of time and effort. So disciplines were created to specialize in those efforts. As people became more specialized, there then became a need to communicate across those disciplines. The PRD was the basis of that, which kickstarted everything. It would then waterfall to design, who would turn pretty words into a pretty UI and smooth UX. Engineering would then make that real.

Coding agents change all of that. Coding agents can take an idea and create functional software. When I (and others) say “PRDs are dead” what we really mean is this traditional way of building software, starting with the writing of a PRD, is dead.

PRD 已死

在 Claude 之前的时代,PRD(Product Requirement Documents,产品需求文档)是软件构建的核心。EPD 的流程大致是:

  • 有人(通常是产品)有了一个想法

  • 产品写 PRD

  • 设计根据 PRD 做出 mock

  • 工程把 mock 变成代码

这当然不是铁律(在创业公司,这些步骤常常会混在一起;最强的建造者能把其中多个环节一并完成),但它是教科书式的做法。

之所以需要这样,是因为开发软件(以及制作 mock)都要投入大量时间与精力。于是出现了分工来专门承担这些投入。随着人越来越专业化,就产生了跨职能沟通的需要。PRD 就是这种沟通的基础,它启动了所有事情。随后流程瀑布式流向设计,设计把漂亮的文字变成漂亮的 UI 和顺滑的 UX;工程再把它变成真实可运行的东西。

编码智能体改变了这一切。编码智能体可以把一个想法直接变成可用的软件。当我(以及其他人)说“PRD 已死”时,我们真正的意思是:这种从写 PRD 开始的传统软件构建方式已经死了。

The bottleneck shifts from implementation to review

Anyone can write code now, which means anyone can build things. That does not mean the things that are built are well architected, or solve the right problems, or easy to use. Engineering, Product, and Design should be the reviewers and arbitrators of these areas. The issue is the code generated isn’t always “great”. The role of EPD becomes reviewing and making sure it is “great”. “great” can mean several things:

  • Well architected from an engineering systems perspective: is it written in a scalable, performant, robust way?

  • Well thought out from a product perspective: does this solve the user pain point?

  • Well designed: are the interfaces easy and intuitive to use?

Since the cost of creating some initial version of the code is so cheap, we see that a lot more prototypes are created. Those prototypes then serve as a focal point, with Product, Engineering, and Design reviewing them.

https://x.com/signulll/status/2030404483897815089

The issue is - it’s so easy to generate code. Previously, it took a while to create the code - so as a reviewer there were only so many projects coming across your desk for review at any given point. Now though - anyone can write code. That means the number of projects going on is increasing. We’ve seen the bottleneck (in all three functions) be review - taking the prototypes and making sure they are “good”.

瓶颈从实现转向评审

现在任何人都能写代码,这意味着任何人都能做东西。但这并不意味着做出来的东西就架构良好、解决了正确的问题、或易于使用。工程、产品与设计应该成为这些方面的评审者与裁决者。问题在于,生成出来的代码并不总是“够好”。EPD 的角色就变成了评审,并确保它“够好”。“够好”可以指很多层面:

  • 从工程系统视角架构得当:它是否以可扩展、高性能、稳健的方式写成?

  • 从产品视角思考充分:它是否解决了用户的痛点?

  • 设计到位:界面是否易用、直观?

由于做出一版初始代码的成本变得极低,我们会看到原型被做得更多。这些原型随后成为讨论焦点,由产品、工程与设计围绕它们进行评审。

https://x.com/signulll/status/2030404483897815089

问题是——生成代码太容易了。以前,写出代码要花些时间,所以作为评审者,在任何一个时间点能送到你桌上来评审的项目数量是有限的。可现在——任何人都能写代码。这意味着同时进行的项目数在增加。我们看到(在这三类职能里)瓶颈变成了评审:把这些原型拿来,确保它们“好”。

Long live PRDs

The pre-Claude era of building software (starting with a PRD) is gone. But documents describing product requirements are still essential.

Let’s assume someone has an idea and quickly builds a prototype. How does this get into production? It needs to be reviewed by other members of EPD. As part of this process, a written document always helps and is often essential. When others are reviewing, how are they to know if part of the code is there by accident or on purpose? Depends on the intent. Some communication of this intent is needed.

I think the traditional PRD process (PRD → mock → code) is dead. But text that describes product requirements is very much alive. This associated document should be a required companion to the prototype before being handed off for review.

The most standard format would be a document, but there are some interesting ideas around sharing the prompts used to create this feature as a way to communicate that. What if PRDs of the future are just structured, versioned prompts?

PRD 万岁

以 PRD 开始构建软件的 Claude 之前时代已经过去了。但描述产品需求的文档依然不可或缺。

假设有人有了一个想法,并迅速做出一个原型。它如何进入生产环境?它需要被 EPD 的其他成员评审。在这个过程中,一份书面文档总是有帮助,而且往往是必需的。别人评审时,如何判断代码里的某一部分是偶然写进去的,还是有意为之?这取决于意图。你需要以某种方式把这种意图传达出来。

我认为传统的 PRD 流程(PRD → mock → code)已经死了。但用文字描述产品需求这件事依然活得很好。这份配套文档应该成为原型在交付评审前的必备伴侣。

最标准的形式是一份文档,但也有一些有趣的想法:把用于生成该功能的 prompts 共享出来,作为一种沟通方式。如果未来的 PRD 只是结构化、可版本化的 prompts 呢?

Generalists are more valuable than ever

By generalists I mean people with a good sense of all three of product, engineering and design. These people were always valuable and impactful - but with coding agents they are even more so. Why?

Communication is the hardest part of everything. It slows things down. One person who can do all of product, design, and engineering will move faster than a team of three because of the communication overhead.

Previously, when implementation was the blocker, this generalist still had to communicate with others to get work done. Now they can just communicate with agents. This means they can be far more impactful by just themselves than ever before.

通才比以往任何时候都更有价值

这里的通才,是指对产品、工程和设计三者都有良好理解的人。这类人一直都很有价值、影响力很大——但有了编码智能体之后,他们的价值更高了。为什么?

沟通是所有事情里最难的部分。它会拖慢节奏。一个人如果能同时做产品、设计与工程,比三个人组成的团队更快,因为后者有沟通成本。

以前,当实现是瓶颈时,这个通才仍然需要与别人沟通才能把事情落地。现在,他们可以直接和智能体沟通。这意味着他们只靠自己就能比过去产生更大的影响。

Coding agents are a requirement

With coding agents making implementation cheap, using them is a requirement. People who can adopt coding agents will be able to do more by themselves:

  • PMs who adopt coding agents can validate ideas by building prototypes directly, without writing a spec and waiting

  • Designers who adopt coding agents can iterate in code, not just in Figma

  • Engineers who adopt coding agents can shift their time from implementation to system thinking

Adopting coding agents is a requirement because it is not hard to do so, and if you don’t do you so you will be replaced by someone who does.

编码智能体成了硬性要求

当编码智能体让实现变得廉价,使用它们就成了硬性要求。能够拥抱编码智能体的人,可以凭一己之力做得更多:

  • 采用编码智能体的 PM 可以直接做原型来验证想法,而无需先写一份 spec 再等待

  • 采用编码智能体的设计师可以在代码里迭代,而不只是在 Figma 里

  • 采用编码智能体的工程师可以把时间从实现转向系统思考

拥抱编码智能体之所以是硬性要求,是因为这并不难;而如果你不这么做,你会被会这么做的人取代。

Good PMs are great, bad PMs are terrible

Good product thinking is more valuable than ever - you can build things that are useful. Bad product thinking is more wasteful than ever. If someone has a bad product idea, they can show up with a prototype - but that prototype will be of a feature that is useless, or poorly conceived. These prototypes now require more reviews - from engineering, product and design. This sucks up time and resources. There is also more inertia to get these prototypes into production (”It already exists! Let’s just merge it!”). This risks creating a worse or bloated product.

好 PM 很强,差 PM 很糟

好的产品思考比以往更有价值——你可以做出真正有用的东西。差的产品思考比以往更浪费。如果有人有个糟糕的产品想法,他们也能拿着一个原型出现——但那原型对应的功能要么没用,要么构思很差。这些原型如今需要更多评审——来自工程、产品与设计。这会吞噬时间与资源。与此同时,把这些原型推入生产环境也更有惯性(“它已经存在了!咱们就合进去吧!”)。这会带来更差或更臃肿的产品风险。

System thinking is the skill to hone

In a world where execution is cheap, system thinking becomes the differentiator. You should focus on being really good at systems thinking and have a clear mental model of your particular domain:

  • Engineering: really good mental model of how to architect services and APIs and databases

  • Product: really good mental model of what users actually need, not what they say they want

  • Design: really good mental model of why something looks and feels right to use

System thinking has always been important - so what has changed? The cost of implementation went way down. This means that it is easier than ever to implement something - but that doesn’t mean it’s great. Being a good system thinker allows you make sure you are building the right things upfront. It also lets you review others work after the fact. Both mean that the importance of being a good system thinker has grown.

系统思考是要打磨的技能

在执行变得廉价的世界里,系统思考成为差异化因素。你应该把重点放在成为真正擅长系统思考的人,并对你的特定领域建立清晰的心智模型:

  • 工程:对如何架构服务、API 和数据库有非常好的心智模型

  • 产品:对用户真正需要什么(而不是他们说自己想要什么)有非常好的心智模型

  • 设计:对为什么某个东西看起来、用起来“对”有非常好的心智模型

系统思考一直很重要——那变化是什么?实现成本大幅下降。这意味着实现某个东西比以往更容易——但这不代表它就“够好”。优秀的系统思考者能让你一开始就确保在做正确的东西,也能让你事后评审别人的工作。这两点都意味着:成为优秀系统思考者的重要性在上升。

Everyone needs product sense

Coding agents still need someone to prompt them. Someone to tell them what to do. If you tell them to build the wrong thing - you are creating more slop for others to review. Knowing what to tell the agent to build (”product sense”) is a requirement, or you will be a drag on the org. This is true across engineering, design, and (obviously) product.

A big part of EPD is now reviewing prototypes. Reviewing is easier if you have product sense, even for reviewing design/engineering. If you don’t have product sense, you need a super detailed product document along side the prototype. If you do have product sense you understand the intent of the feature with a minimal spec, speeding up communication, review, and delivery.

人人都需要产品感

编码智能体仍然需要有人去 prompt 它们,需要有人告诉它们该做什么。如果你让它们做了错误的东西——你就在制造更多需要别人评审的垃圾产出。知道该让智能体做什么(“产品感”)是硬性要求,否则你会拖累组织。这对工程、设计以及(显然)产品都成立。

EPD 现在很大一部分工作是评审原型。如果你有产品感,评审会更容易——即便是在评审设计/工程时也是如此。如果你没有产品感,你就需要在原型旁配一份超级细的产品文档;如果你有产品感,你在一个极简 spec 下也能理解功能意图,从而加速沟通、评审与交付。

The bar for specialization is higher

You need to know how to use coding agents. You need product sense. All the roles are blending together.

There’s always been overlap in roles. Design and product have long been linked -a t certain companies like Apple and AirBnb, designers serve as product managers. “Design engineer” as a role has been picking up steam at companies like Vercel.

This doesn’t mean there is no room for specialization. A very senior engineer who just thinks about the system architecture is still valuable. As is a PM who hasn’t picked up vibe coding but does have a super clear mental model of the customers problems and what to build. Same with a designer who can understand and mock user journeys and interactions, even if still in Figma.

But the bar for specialization is much higher. You have to be not only fantastic at your domain, but also incredibly fast at review and an incredible communicator. And there probably aren’t that many of these roles at any given company.

专业化的门槛更高了

你需要会用编码智能体。你需要产品感。所有角色都在相互融合。

角色之间一直都有重叠。设计和产品长期以来就联系紧密——在 Apple、AirBnb 这样的公司,设计师会担任产品经理。“Design engineer(设计工程师)”这种角色也在 Vercel 等公司越来越常见。

这并不意味着没有专业化的空间。一个非常资深、只专注于系统架构的工程师依然有价值;一个还没开始 vibe coding 但对客户问题以及该做什么有极其清晰心智模型的 PM 也同样有价值;同理,一个能理解并 mock 出用户旅程与交互(哪怕仍在 Figma 里)的设计师也一样。

但专业化的门槛确实高了很多。你不仅要在自己的领域里非常出色,还得极其快速地评审,并且是出色的沟通者。而且在任何一家公司里,这类岗位大概都不会很多。

You’re either a builder or a reviewer

We see two different types of roles emerging in EPD.

First: the builder. This archetype has good product thinking, they are capable of using coding agents, and have baseline design intuition. With guardrails around them (test suite, component library) they can take small features from idea to production, and prototype functional versions of larger ones.

Second: the reviewer. For large and complicated features, detailed EPD review is required. The bar for this is high - you have to be a fantastic systems thinker in your domain. You also have to work at a fast pace - there is a lot to review.

If you are an engineer right now - you should either aim to get fantastic at system design and comfortable reviewing architectures and aim to be a reviewer… or try to grow your product/design skills and become a builder.

If you are in product or design - you either have to have a fantastic mental model for product/design and largely review, or jump into coding agents and improving your coding chops.

Whats interesting is that roles are kind of collapsing, as shown by all of EPD being somewhere on the above chart. Roles can start to blend together - engineers have more time, can think more on product and design. Product and design can create code.

你要么是建造者,要么是评审者

我们看到 EPD 中正在浮现两类不同的角色。

第一类:建造者(builder)。这种原型有良好的产品思考能力,能使用编码智能体,并具备基本的设计直觉。在一些护栏(测试套件、组件库)的约束下,他们能把小功能从想法带到生产,也能为更大的功能做出可用的原型版本。

第二类:评审者(reviewer)。对于大型且复杂的功能,必须进行细致的 EPD 评审。这条路径的门槛很高——你必须在你的领域里是出色的系统思考者。你还必须节奏很快——因为需要评审的东西很多。

如果你现在是工程师——你要么以精通系统设计、能舒适地评审架构为目标,成为评审者……要么尝试提升自己的产品/设计能力,成为建造者。

如果你在产品或设计——你要么拥有对产品/设计极其出色的心智模型,主要做评审;要么跳进编码智能体,提升自己的编码能力。

有意思的是,角色正在某种程度上塌缩,如同上图所示:整个 EPD 都分布在这张图谱之上。角色开始相互融合——工程师有了更多时间,可以更多思考产品与设计;产品与设计也能写代码。

Everyone thinks their role is most advantaged by coding agents - and they are right

There was a great post on Twitter about the type of people most advantaged by coding agents:

someone with an intuitive grasp of the product as it exists, where it's soft, where it sings, & how to iterate it toward something even sharper.

the rarest version of this person sits at the intersection of culture & deep technology. someone genuinely bilingual. they know what's technically possible & they know which cultural currents are real vs. ephemeral. that combo is what separates products that feel inevitable from products that feel assembled.

The post was a great encapsulation of this new world, and it went semi-viral. Part of the reason it went viral was everyone reading it thought it was about them or their role. I saw product people quoting it, designers, design engineers, founders… everyone thought it applied to them and their role.

And they were all probably right! I think the great and exciting thing about this new world is that backgrounds matter less. I genuinely believe this archetype of person could come from product, design, or engineering. That doesn’t mean everyone will be this person - it’s much easier said than done. There are very few true unicorns out there

It’s an exciting time to be building :)

Link: http://x.com/i/article/2031049457031331841

每个人都觉得自己的角色最能从编码智能体中获益——而他们都没错

Twitter 上有一条很棒的帖子,谈到哪些人最能从编码智能体中受益:

对现有产品有直觉性把握的人:知道它现在是什么样,哪里柔软,哪里会唱歌,以及如何把它迭代得更锋利。

这种人的最稀有形态,坐落在文化与深科技的交叉点上:真正的双语者。他们知道技术上能做到什么,也知道哪些文化潮流是真实的、哪些只是昙花一现。这种组合,正是把“必然感”的产品与“拼装感”的产品区分开的东西。

这条帖子很好地概括了这个新世界,并且半出圈式地传播了。它走红的一个原因是:每个读到它的人都觉得它在说自己或自己的角色。我看到产品人引用它、设计师、设计工程师、创始人……每个人都觉得它适用于自己和自己的工作。

而他们大概都没错!我认为,这个新世界最棒、最令人兴奋的一点是:背景变得不那么重要。我真心相信,这类人可以来自产品、设计或工程。这并不意味着人人都能成为这样的人——说起来容易做起来难。真正的独角兽很少。

这是一个令人兴奋的创造时代 :)

链接: http://x.com/i/article/2031049457031331841

相关笔记

EPD (Engineering, Product, and Design) at software company is about creating good software. Separate roles exist, but the end goal is functional software that solves a business problem that users can use. At the end of the day, this is just code. It is important to recognize that the output of what EPD as a function builds is just code because… coding agents have suddenly made code very easy to write. So how does this change the role of EPD?

The changing process:

  • PRDs are dead

  • The bottleneck shifts from implementation to review

  • Long live PRDs

Impact on roles:

  • Generalists are more valuable than ever

  • Coding agents are a requirement

  • Good PMs are great, bad PMs are terrible

  • Everyone needs product sense

  • The bar for specialization is higher

  • You're either a builder or a reviewer

  • Everyone thinks their role is most advantaged by coding agents - and they are right

PRDs are dead

PRDs (Product Requirement Documents) were the focal point of building software in the pre-Claude era. The EPD process was largely:

  • Someone (usually product) has an idea

  • Product writes a PRD

  • Design takes PRD and creates a mock

  • Engineering turns mock into code

This wasn’t a hard and fast rule (at startups these steps blended together, the best builders were able to do multiple of these together) but it was the textbook way to build things.

This was required because building the software (and building the mock) required a significant amount of time and effort. So disciplines were created to specialize in those efforts. As people became more specialized, there then became a need to communicate across those disciplines. The PRD was the basis of that, which kickstarted everything. It would then waterfall to design, who would turn pretty words into a pretty UI and smooth UX. Engineering would then make that real.

Coding agents change all of that. Coding agents can take an idea and create functional software. When I (and others) say “PRDs are dead” what we really mean is this traditional way of building software, starting with the writing of a PRD, is dead.

The bottleneck shifts from implementation to review

Anyone can write code now, which means anyone can build things. That does not mean the things that are built are well architected, or solve the right problems, or easy to use. Engineering, Product, and Design should be the reviewers and arbitrators of these areas. The issue is the code generated isn’t always “great”. The role of EPD becomes reviewing and making sure it is “great”. “great” can mean several things:

  • Well architected from an engineering systems perspective: is it written in a scalable, performant, robust way?

  • Well thought out from a product perspective: does this solve the user pain point?

  • Well designed: are the interfaces easy and intuitive to use?

Since the cost of creating some initial version of the code is so cheap, we see that a lot more prototypes are created. Those prototypes then serve as a focal point, with Product, Engineering, and Design reviewing them.

https://x.com/signulll/status/2030404483897815089

The issue is - it’s so easy to generate code. Previously, it took a while to create the code - so as a reviewer there were only so many projects coming across your desk for review at any given point. Now though - anyone can write code. That means the number of projects going on is increasing. We’ve seen the bottleneck (in all three functions) be review - taking the prototypes and making sure they are “good”.

Long live PRDs

The pre-Claude era of building software (starting with a PRD) is gone. But documents describing product requirements are still essential.

Let’s assume someone has an idea and quickly builds a prototype. How does this get into production? It needs to be reviewed by other members of EPD. As part of this process, a written document always helps and is often essential. When others are reviewing, how are they to know if part of the code is there by accident or on purpose? Depends on the intent. Some communication of this intent is needed.

I think the traditional PRD process (PRD → mock → code) is dead. But text that describes product requirements is very much alive. This associated document should be a required companion to the prototype before being handed off for review.

The most standard format would be a document, but there are some interesting ideas around sharing the prompts used to create this feature as a way to communicate that. What if PRDs of the future are just structured, versioned prompts?

Generalists are more valuable than ever

By generalists I mean people with a good sense of all three of product, engineering and design. These people were always valuable and impactful - but with coding agents they are even more so. Why?

Communication is the hardest part of everything. It slows things down. One person who can do all of product, design, and engineering will move faster than a team of three because of the communication overhead.

Previously, when implementation was the blocker, this generalist still had to communicate with others to get work done. Now they can just communicate with agents. This means they can be far more impactful by just themselves than ever before.

Coding agents are a requirement

With coding agents making implementation cheap, using them is a requirement. People who can adopt coding agents will be able to do more by themselves:

  • PMs who adopt coding agents can validate ideas by building prototypes directly, without writing a spec and waiting

  • Designers who adopt coding agents can iterate in code, not just in Figma

  • Engineers who adopt coding agents can shift their time from implementation to system thinking

Adopting coding agents is a requirement because it is not hard to do so, and if you don’t do you so you will be replaced by someone who does.

Good PMs are great, bad PMs are terrible

Good product thinking is more valuable than ever - you can build things that are useful. Bad product thinking is more wasteful than ever. If someone has a bad product idea, they can show up with a prototype - but that prototype will be of a feature that is useless, or poorly conceived. These prototypes now require more reviews - from engineering, product and design. This sucks up time and resources. There is also more inertia to get these prototypes into production (”It already exists! Let’s just merge it!”). This risks creating a worse or bloated product.

System thinking is the skill to hone

In a world where execution is cheap, system thinking becomes the differentiator. You should focus on being really good at systems thinking and have a clear mental model of your particular domain:

  • Engineering: really good mental model of how to architect services and APIs and databases

  • Product: really good mental model of what users actually need, not what they say they want

  • Design: really good mental model of why something looks and feels right to use

System thinking has always been important - so what has changed? The cost of implementation went way down. This means that it is easier than ever to implement something - but that doesn’t mean it’s great. Being a good system thinker allows you make sure you are building the right things upfront. It also lets you review others work after the fact. Both mean that the importance of being a good system thinker has grown.

Everyone needs product sense

Coding agents still need someone to prompt them. Someone to tell them what to do. If you tell them to build the wrong thing - you are creating more slop for others to review. Knowing what to tell the agent to build (”product sense”) is a requirement, or you will be a drag on the org. This is true across engineering, design, and (obviously) product.

A big part of EPD is now reviewing prototypes. Reviewing is easier if you have product sense, even for reviewing design/engineering. If you don’t have product sense, you need a super detailed product document along side the prototype. If you do have product sense you understand the intent of the feature with a minimal spec, speeding up communication, review, and delivery.

The bar for specialization is higher

You need to know how to use coding agents. You need product sense. All the roles are blending together.

There’s always been overlap in roles. Design and product have long been linked -a t certain companies like Apple and AirBnb, designers serve as product managers. “Design engineer” as a role has been picking up steam at companies like Vercel.

This doesn’t mean there is no room for specialization. A very senior engineer who just thinks about the system architecture is still valuable. As is a PM who hasn’t picked up vibe coding but does have a super clear mental model of the customers problems and what to build. Same with a designer who can understand and mock user journeys and interactions, even if still in Figma.

But the bar for specialization is much higher. You have to be not only fantastic at your domain, but also incredibly fast at review and an incredible communicator. And there probably aren’t that many of these roles at any given company.

You’re either a builder or a reviewer

We see two different types of roles emerging in EPD.

First: the builder. This archetype has good product thinking, they are capable of using coding agents, and have baseline design intuition. With guardrails around them (test suite, component library) they can take small features from idea to production, and prototype functional versions of larger ones.

Second: the reviewer. For large and complicated features, detailed EPD review is required. The bar for this is high - you have to be a fantastic systems thinker in your domain. You also have to work at a fast pace - there is a lot to review.

If you are an engineer right now - you should either aim to get fantastic at system design and comfortable reviewing architectures and aim to be a reviewer… or try to grow your product/design skills and become a builder.

If you are in product or design - you either have to have a fantastic mental model for product/design and largely review, or jump into coding agents and improving your coding chops.

Whats interesting is that roles are kind of collapsing, as shown by all of EPD being somewhere on the above chart. Roles can start to blend together - engineers have more time, can think more on product and design. Product and design can create code.

Everyone thinks their role is most advantaged by coding agents - and they are right

There was a great post on Twitter about the type of people most advantaged by coding agents:

someone with an intuitive grasp of the product as it exists, where it's soft, where it sings, & how to iterate it toward something even sharper.

the rarest version of this person sits at the intersection of culture & deep technology. someone genuinely bilingual. they know what's technically possible & they know which cultural currents are real vs. ephemeral. that combo is what separates products that feel inevitable from products that feel assembled.

The post was a great encapsulation of this new world, and it went semi-viral. Part of the reason it went viral was everyone reading it thought it was about them or their role. I saw product people quoting it, designers, design engineers, founders… everyone thought it applied to them and their role.

And they were all probably right! I think the great and exciting thing about this new world is that backgrounds matter less. I genuinely believe this archetype of person could come from product, design, or engineering. That doesn’t mean everyone will be this person - it’s much easier said than done. There are very few true unicorns out there

It’s an exciting time to be building :)

Link: http://x.com/i/article/2031049457031331841

📋 讨论归档

讨论进行中…