衡量产品工程师的,是用户有没有用上他交付的东西,而不是关了多少工单。本文讲这个角色和软件工程师、产品经理有什么不同,日常工作是什么样,需要哪些技能,并附一个功能从客服工单到全量发布的算例。
读完你会知道
- 产品工程师对一个功能领域全程负责,包括指标
- 他们决定做什么,而不只是怎么做
- 发布前先埋点、定好成功指标
- 用功能开关逐步发布,再读数据
- 这个角色最适合中小型产品公司
什么是产品工程师?
产品工程师(product engineer)是对产品结果负责、而不只对代码负责的软件工程师。他们把一个用户问题从想法一路做到上线:和用户聊、看客服工单,和设计一起定方案,跨前后端开发,逐步发布,再看数据判断有没有用。这个角色起源于产品驱动的小公司:产品经理少、工程师多,工程师要自己做产品决策。
这个职位名称现在用得还比较宽泛。有的公司里「产品工程师」就是产品团队里的全栈工程师;有的公司里它是一个独立角色,明确对某个功能领域的指标负责。共同点是产品判断力:决定做什么,而不只是怎么做。
产品工程师、软件工程师和产品经理的区别
| 产品工程师 | 软件工程师(平台或后端) | 产品经理 | |
|---|---|---|---|
| 核心问题 | 这解决了用户的问题吗? | 系统对不对、快不快、稳不稳? | 下一步做什么,为什么? |
| 负责 | 一个功能领域的全流程,包括它的指标 | 服务、基础设施、技术质量 | 路线图、优先级、干系人 |
| 写代码 | 是,大部分时间,跨全栈 | 是,常常深入某一层 | 很少 |
| 和用户交流 | 经常 | 偶尔 | 一直 |
| 衡量成功 | 所交付功能的采用、留存、转化 | 可用性、延迟、缺陷率、交付 | 路线图带来的业务结果 |
有产品工程师的团队里,产品经理更多关注策略和跨团队协作,日常的功能决策交给工程师。
| 产品工程师 | 软件工程师 | |
|---|---|---|
| 核心问题 | 解决问题了吗? | 系统可靠吗? |
| 负责 | 功能领域和它的指标 | 服务和技术质量 |
| 成功标准 | 采用和留存 | 可用性、延迟、交付 |
产品经理更关注策略和路线图。
产品工程师每天做什么?
- 发现和定义问题。 看客服对话、看会话回放、参加客户电话、看用户在哪里流失。
- 划出最小可用版本。 把功能砍到几天内能上线、又能回答「用户要不要」的程度。
- 跨全栈开发。 前端、接口、数据库改动,以及衡量效果需要的统计事件。
- 发布前先埋点。 把事件写进埋点方案,代码上线前就定好成功指标和护栏指标。
- 逐步发布。 放在功能开关后面,先给内部用户,再给一部分客户。
- 读结果。 采用率、漏斗完成率、用过的用户留存、错误率、客服量。
- 迭代或删除。 有用的继续改进,没人用的删掉。
产品工程师需要的技能
- 全栈开发: 熟悉一个前端框架、一门后端语言、SQL 和部署。
- 产品感: 理解用户要完成的任务,按影响排优先级,敢说不。
- 数据素养: 写事件规范,搭漏斗和留存图,查数据,知道什么差异只是噪声。
- 实验能力: 功能开关、A/B 测试,读结果时不搞 p 值操纵。
- 设计感: 能直接从草图开工,不用等像素级稿件也能做出够用的界面。
- 沟通: 写简短的方案,讲清取舍,和团队分享结果。
算例:一个功能的全流程
一个 B2B SaaS 团队的产品工程师在客服工单里注意到,客户总在问怎么把报表导出成 CSV。原来的导出藏在三层菜单里。三周里发生了这些事(示例数字):
| 阶段 | 做了什么 | 数据 |
|---|---|---|
| 确认问题 | 数工单,搜会话回放 | 30 天 46 张工单;8% 的报表查看者打开过旧导出菜单 |
| 埋点方案 | 加 report_export_clicked 和 report_export_completed,带 format 和 row_count 属性 | 成功指标:每周导出用户数;护栏:导出错误率 |
| 内部发布 | 在报表标题栏加「导出」按钮,先给团队用 | 发现超过 10 万行的文件有 2 个缺陷 |
| 10% 灰度 | 对 10% 的账户打开功能开关 | 导出用户从报表查看者的 8% 升到 19%;错误率 0.4% |
| 全量发布 | 对所有人开放,旧菜单保留两周 | 导出用户 21%;导出相关工单从每月 46 张降到 9 张 |
工程师还核对了一件只看交付指标会漏掉的事:头一个月至少导出过一次的账户,90 天留存 88%,没导出过的是 81%。这是相关,不能证明因果,但足以把导出放进上手清单,作为下一个实验。
导出用户
▲ 13 个百分点
▲
导出工单
−80%
错误率
0.4%
CSV 导出 · 发布阶段
3 周| 阶段 | 导出用户 | 每月工单 |
|---|---|---|
| 发布前 | 8% | 46 |
| 10% 灰度 | 19% | — |
| 全量 | 21% | 9 |
示例数字。一周内导出过的报表查看者占比。
产品工程师是好的职业方向吗?
对喜欢和用户打交道、在意自己的工作有没有人用的工程师来说,是。这个角色同时积累工程深度和产品能力,常常通向工程管理、创业或产品经理。它最适合中小型产品公司;很大的组织往往把同样的工作拆给更细分的角色。
产品工程师常用的工具
- 产品分析:事件、漏斗、留存和路径。
- 会话回放和热力图:看功能实际怎么被使用。
- 功能开关和实验:逐步发布、衡量影响。
- 错误跟踪和性能监控:发现回归问题。
- SQL 或笔记本:回答看板回答不了的问题。
用 TapCub 做产品工程
TapCub 覆盖这份工作里衡量的那一半:在埋点方案里规划事件(追踪自定义事件),在计划外事件污染报表之前先审核(事件收件箱),用漏斗衡量完成率(创建漏斗),用热力图看新功能怎么被使用(创建热力图),发布后发现前端错误(查找 JavaScript 错误),需要时用 SQL 查原始事件(用 SQL 查询数据)。延伸阅读:功能采用 和 产品分析师做什么?。
资料来源
- Gergely Orosz,The product-minded software engineer(The Pragmatic Engineer)。
这篇文章对你有帮助吗?
我们会根据反馈修改和补充这篇内容。
提交没有成功,请稍后再试。
谢谢你的反馈,我们会据此改进这篇内容。你已经反馈过这篇了,谢谢。




