三角色协作流程
目的
这份文档说明技术负责人、产品负责人、平台 / 资深工程师,以及下面的组员,如何在具体工具里协作。
核心原则:
一个任务一个 Driver
三个角色分段确认
事实写回系统
群聊只做沟通,不做最终记录
参与者
| 角色 | 常见人选 | 主要工具 |
|---|---|---|
| 产品负责人 | 产品、业务负责人、创始人 | Linear/Jira、Notion/Lark Docs、Figma、数据看板 |
| 技术负责人 | Tech Lead、模块 owner、CTO | GitHub/GitLab、ADR/RFC、CI、架构文档 |
| 平台 / 资深工程师 | 平台工程师、SRE、工具链 owner、资深工程师 | CI/CD、Docker、监控、日志、发布系统、runbook |
| Driver | 具体任务推进人,可以是任一组员 | 任务卡、PR、群聊、发布记录 |
| 组员 / 执行人 | 工程、产品、设计、QA、运营 | 任务卡、PR、文档、设计稿、测试和验收记录 |
工具分工
| 工具 | 负责什么 | 谁主要维护 | 不能替代什么 |
|---|---|---|---|
| Linear / Jira / GitHub Issues | 工作项、状态、优先级、owner | 产品负责人 + Driver | 不能替代 PR 和 CI |
| Notion / Lark Docs | PRD、会议纪要、产品说明、手册 | 产品负责人 / Doc Driver | 不能替代代码事实 |
| GitHub / GitLab | 代码、PR、review、分支保护 | 技术负责人 | 不能替代需求验收 |
| CI/CD | 检查、构建、测试、部署 | 平台 / 资深工程师 | 不能替代人工风险判断 |
| Figma / 设计系统 | 页面、交互、状态、文案 | 产品 / 设计 | 不能替代验收记录 |
| Sentry / Grafana / Datadog | 错误、指标、日志、告警 | 平台 / 资深工程师 | 不能替代任务状态 |
| Lark / Slack | 沟通、提醒、事故房间、发布通知 | 各组共同使用 | 不能作为最终事实来源 |
标准协作流程
1. 需求进入
| 步骤 | 动作 | 工具 | 负责人 | 组员怎么参与 | 输出 |
|---|---|---|---|---|---|
| 1.1 | 记录原始需求 | Linear/Jira/Issue | 产品负责人或 Requester | 提供背景、截图、客户反馈 | Intake 任务 |
| 1.2 | 补用户、问题、目标 | 功能简报 / PRD | 产品负责人 | 设计、运营、客服补充场景 | 可评审需求 |
| 1.3 | 指定 Driver | 任务卡 | 产品负责人 / 技术负责人 | 接受或提出容量风险 | Driver 明确 |
| 1.4 | 标注风险 | 任务卡 | 技术负责人 | 工程师补技术影响 | 风险标签 |
| 1.5 | 判断执行条件 | 任务卡 + 项目文档 | 平台 / 资深工程师 | 执行人确认 repo、命令、环境 | Ready / Clarifying |
不能进入开发的情况:
- 没有 Driver。
- 没有用户 / 问题 / scope。
- 没有验收标准。
- 不知道改哪个项目或怎么验证。
- 涉及高风险但没有技术负责人确认。
2. 方案和拆分
| 步骤 | 动作 | 工具 | 负责人 | 组员怎么参与 | 输出 |
|---|---|---|---|---|---|
| 2.1 | 明确 scope 和非目标 | 任务卡 / PRD | 产品负责人 | 工程确认实现边界 | Scope |
| 2.2 | 判断是否需要 RFC / ADR | ADR/RFC | 技术负责人 | 相关模块 owner 参与评审 | 技术方案或免设计结论 |
| 2.3 | 确认运行和验证方式 | docs/PROJECT.md / CI |
平台 / 资深工程师 | 执行人试跑命令 | 验证计划 |
| 2.4 | 拆任务 | Linear/Jira | Driver | 组员认领子任务 | 可执行任务列表 |
拆分规则:
- 每个子任务都要有验收标准。
- 每个 PR 尽量对应一个任务。
- 高风险变更拆出单独 review 或发布步骤。
- 平台准备工作不能隐藏在业务任务里。
3. 开发执行
| 步骤 | 动作 | 工具 | 负责人 | 组员怎么参与 | 输出 |
|---|---|---|---|---|---|
| 3.1 | 创建分支 | GitHub/GitLab | 执行工程师 | Driver 确认任务链接 | 分支 |
| 3.2 | 本地运行 | 本地环境 / Docker | 执行工程师 | 平台协助排障 | 本地可运行 |
| 3.3 | 小步提交 | Git | 执行工程师 | 技术负责人必要时指导 | commit |
| 3.4 | 同步卡点 | Lark/Slack + 任务卡 | Driver | 产品/技术/平台按问题响应 | blocker 记录 |
| 3.5 | 更新 scope 变化 | 任务卡 | Driver | 产品和技术共同确认 | scope 变更记录 |
卡住时怎么协作:
| 卡点 | 先找谁 | 要带什么信息 |
|---|---|---|
| 需求不清 | 产品负责人 / Driver | 任务链接、当前理解、待确认问题 |
| 代码边界不清 | 技术负责人 / 模块 owner | 文件、调用链、你准备怎么改 |
| 环境跑不通 | 平台 / 资深工程师 | 命令、报错、系统版本、已尝试步骤 |
| CI 失败 | 执行人先看,必要时找平台 | CI 链接、失败 job、相关日志 |
| scope 要扩大 | Driver + 产品 + 技术 | 原 scope、新影响、是否延期 |
4. PR 和评审
| 步骤 | 动作 | 工具 | 负责人 | 组员怎么参与 | 输出 |
|---|---|---|---|---|---|
| 4.1 | 提 PR | GitHub/GitLab | 执行工程师 | Driver 检查描述完整 | PR |
| 4.2 | 自动检查 | CI | 平台 / 资深工程师维护 | 执行人修失败 | CI 结果 |
| 4.3 | 技术 review | PR review | 技术负责人 / Reviewer | 执行人响应评论 | approve / changes |
| 4.4 | 产品验收 | PR、Preview、验收模板 | 产品负责人 / Business Approver | 设计、运营、客服可参与 | 验收结论 |
| 4.5 | 发布准备 | release checklist | Driver + 平台 | Operator 确认发布入口 | Ready to Release |
PR 里必须能看到:
- 关联任务。
- 改了什么、为什么。
- 怎么验证。
- 风险和回滚。
- CI / 测试 / 截图 / 日志证据。
- 三角色需要确认的结论。
5. 发布和上线
| 步骤 | 动作 | 工具 | 负责人 | 组员怎么参与 | 输出 |
|---|---|---|---|---|---|
| 5.1 | 确认发布范围 | release checklist | Driver | 产品确认用户影响 | release scope |
| 5.2 | 确认技术风险 | release checklist | 技术负责人 | Reviewer 补风险说明 | 技术 approval |
| 5.3 | 准备发布入口和监控 | CI/CD + dashboard | 平台 / 资深工程师 | Operator 执行 | 发布准备完成 |
| 5.4 | 执行发布 | CI/CD / 发布系统 | Operator | Driver 盯闭环 | release record |
| 5.5 | smoke 和观察 | smoke、Grafana、Sentry | 平台 + 执行人 | 产品看用户路径 | smoke 结果 |
| 5.6 | 发布通知 | Lark/Slack | Driver | 产品、技术、平台同步结论 | 发布通知 |
发布通知至少包含:
版本 / commit:
包含任务:
用户影响:
Smoke:
Dashboard:
Rollback:
Owner:
6. 反馈和关闭
| 步骤 | 动作 | 工具 | 负责人 | 组员怎么参与 | 输出 |
|---|---|---|---|---|---|
| 6.1 | 产品反馈检查 | 数据看板 / 客服反馈 / 任务卡 | 产品负责人 | 运营、客服补充用户反馈 | 产品结论 |
| 6.2 | 技术观察 | Sentry/Grafana/logs | 技术负责人 | 工程师看错误和性能 | 技术结论 |
| 6.3 | 平台观察 | 告警、发布系统、runbook | 平台 / 资深工程师 | Operator 补排障记录 | 运行结论 |
| 6.4 | 关闭任务 | Linear/Jira | Driver | 三角色给最终结论 | Done / follow-up |
| 6.5 | 创建后续 action | Linear/Jira | Driver | 相关组员认领 | 后续任务 |
任务关闭必须写:
验收结论:
上线结果:
验证证据:
遗留风险:
后续 action:
组员如何和三个负责人协作
工程师
- 从任务卡确认 Driver、scope、验收标准。
- 从
docs/PROJECT.md找本地运行、检查命令、PR 规则。 - 技术问题先找 Reviewer / 模块 owner,再升级给技术负责人。
- 环境、CI、发布、监控问题找平台 / 资深工程师。
- 产品行为不确定时找产品负责人,不自己猜。
产品 / 设计 / 运营
- 在任务卡里补用户问题、验收标准和反馈入口。
- 在 PR 或 preview 阶段给出明确验收结论。
- 发布前确认是否需要通知、话术、灰度。
- 发布后回写用户反馈和指标变化。
QA / 测试
- 根据验收标准和风险设计测试。
- 和技术负责人确认技术风险路径。
- 和产品负责人确认用户路径。
- 和平台 / 资深工程师确认测试环境、mock、数据和 smoke。
平台 / 运维 / SRE 组员
- 维护本地环境、CI、发布和监控入口。
- 提供排障路径和 runbook。
- 对重复问题做工具化或模板化。
- 发现业务任务缺运行条件时,直接 block 或要求补齐。
日常节奏
| 节奏 | 参与者 | 工具 | 输出 |
|---|---|---|---|
| 每日异步 | Driver + 执行人 | Lark/Slack + 任务卡 | blocked、下一步、需要谁决策 |
| 每周 planning | 产品负责人、技术负责人、Driver | Linear/Jira | planned scope、owner、风险 |
| 每周 review | 三角色 + 代表组员 | PR/发布/任务抽样 | 模板或流程修正 |
| 发布窗口 | Driver、Operator、产品、技术、平台 | release checklist | 发布记录、smoke、rollback |
| 事故复盘 | 事故角色 + 三角色 | postmortem | action items |
最小工具流
草台团队先不要追求全自动。最低工具流:
Linear/Jira/GitHub Issue 记录任务
-> Notion/Lark Docs 写必要说明
-> GitHub/GitLab 提 PR
-> CI 跑检查
-> Lark/Slack 通知 review / release / incident
-> Grafana/Sentry 看上线结果
-> 任务卡关闭并写结论
如果某一步只发生在口头或群聊里,就没有闭环。
下一步阅读
读完或填完这份文档后,通常继续看:
- 13-工作入口-work-intake.md:如果要落到任务卡,回到工作入口定义字段。
- 30-交付流程-delivery-process.md:如果要进入开发交付,继续看交付流程。