Product Owner 这个职位做了一年不到,前半年不知道自己在干嘛,凭着一腔热血和本能反应做决策,今年学了 Scrum Product Owner 的知识体系之后,发现自己需要做的事情还是挺多的。
先简单介绍一下团队结构,我现在是 Platform Team Lead,团队里面有 6 个程序和 3 个测试,我这个团队的任务很杂,工作重心是完成客户的需求,所以以前都是用 kanban 来管理的,做完一个 ticket 再做下一个,我做了两年的 ticket,感觉非常没有成就感,每天都在重复自己已经知道要怎么做的事情(对了,我这个团队以前叫 Client Team)。
另外一个团队是 Product Team,他们维护产品,做的事情比较有趣,可想而知,所有程序员都希望去 Product Team 工作,但是我们有源源不断的客户需求,所以那个团队的人很少,大头还是在我这个团队。
去年我发现公司总算决定搞内部工具了,我意识到 Client Team 摆脱「手写配置」的唯一希望就是把这个内部工具做好。
为了实现这个理想,我自告奋勇当了这个内部工具的 Product Owner,想要带团队走出泥潭,团队的名字也改成了 Platform Team,开始用 Scrum 管理。
Platform Team 的工作内容包括四大块:
管理上的难点:
经过一段时间的探索后,我决定每个 sprint(每两周)都把轮岗回来的程序员设为 on-call team,做 Ops Support 和 Ad-hoc Request,剩下的 4 个程序,第一周做客户需求,第二周做内部工具开发,假如一个程序第一周的客户需求没做完,第二周要继续做客户需求,做完了才能做内部工具开发。
这样算下来,每个 sprint 大概只有 3-4 个人一周的工作量是放在内部工具开发上的。
我的工作职责,变成了一个大杂烩:
我经常会思考,如果我只能选择一件事情,我希望自己做什么。
近几个月来,我的答案愈发清晰,我希望做 Internal Tool Product Owner,因为这是最有长期价值的一项工作,也跟公司的目标相契合。
但是我也知道,我手头的资源非常有限,3-4 个人每个 sprint 做一周,约等于 2 个人全职做这个产品,还没有算上程序员轮岗导致的效率损耗。
虽然不尽如人意,但这也许就是 PO 需要面对的现实。
我做了 product roadmap 和 dependency diagram,思考如何把有限的资源花在刀刃上。
同时,我要培养得力的程序员,我带着大家做 design workshop,告诉大家要先把问题讨论清楚,把流程图画出来再开工,一些复杂的问题如果没做好设计就直接写代码,很浪费人力。
我跟测试部讨论如何逐渐引入测试用例,决定先从每个版本发布前的回归测试开始。
有时候实在没人了,我得自己上阵做客户需求或者修版本 bug。
不知道其他的 PO 是什么样的工作状态,但我知道我这种原生态应该比较「野路子」。
读《Inspired》这本书的时候,脑海里面的 PO 是天天跟 UI,Marketing,客户打交道,看产品使用数据,把问题告诉程序,让程序出解决方案和原型,然后再不断打磨原型推出新功能。
我这个 PO,写需求的时候截个图画原型,跟程序一起 debug 看 PR,做 UAT,测功能,优化 release pipeline,每个 sprint planning 之前都希望能少接点客户需求,sprint 开始了之后又盼着少点 ad-hoc request,sprint 第一周希望大家赶紧把客户需求做完,sprint 第二周看到有人还在做客户需求就各种不爽,release 的时候要检查一遍 PR,测完了再盯着 ops 按时 deploy 新版本……
虽然有种种限制,但至少我不是两年前天天做 ticket 的那个 Client Delivery Team Lead 了。
我知道这个产品的使命和愿景,就算只有一个程序做,也得做下去。
很早以前读过一本书——《秘密》,讲的是吸引力法则。
假如你真的想要达成某个目标,全世界都会帮助你。
听着挺玄乎的,有那么些唯心主义。
这让我想起一件事。
我手下的一个程序,刚来没多久,就意识到了 Product Team 比较高端,Platform Team 的事情比较杂。
他问我,怎么样才能留在 Product Team。
这对我来说算是个不小的打击,因为我希望有人能留在我的 Team 里做这个内部工具。
上周五是上个 sprint 的最后一天,我跟客户经理对了客户优先级,然后又接到了一些产品 roll-out 的需求(需要开发内部工具才能支持这些功能)。
上个 sprint 我给大家定的目标是把测试环境搞定,那天我在开会的时候打开了测试环境的网址,想给测试看一下我们这个工具是怎么用的。
结果展示了不到两分钟,就各种报错。
那天我盯着长长的 backlog,上个 sprint 没做完的东西,一个不完全能跑的测试环境,来自不同 stakeholder 的需求,捉襟见肘的程序资源,心情降到了冰点。
我想达成的目标真的能达成吗?
我满腔热血想要改变 Platform Team 的现状,为什么这个工具做了一年,还是只有这样?
那天我是哭着走出办公室的。
然后我收到了一条消息。
那个之前问我如何能留在 Product Team 的程序员,问我是否还好,他能怎么帮到我。
我哭得更厉害了。