今天这篇文章,跟大家聊聊我对自己目前的职位 —— Platform Team Lead(平台部门负责人)—— 的理解。
上周有幸跟一位 Google 的朋友进行了一次深聊,我讲了我的工作职责和遇到的瓶颈,他提供了几个让我印象深刻的点。
我们公司主要做的是客户满意度调查问卷、数据的收集和展示,为企业提供商业价值和洞见。
每个客户都有自己的问卷和独立的网站,登录进去可以看到相关的数据、图表、并且对每一条客户反馈进行跟进。
公司的架构为:
在实际的工作中,大致可以分为两组:
这次谈话让我从另一个视角意识到了我目前职位的重要性、我所肩负的责任,以及摆在我面前的机遇。
然而我手头负责的事情实在是太多太杂了,我说很多时候会感觉自己忙了一天却没有什么成就感,还有好多事没做完。
朋友说 —— “Time is your biggest assests”,如何用好自己的时间,专注于做高价值的事情是管理者最大的挑战。
做管理和执行的一个最大区别是,管理者有更大的自由度可以决定自己到底要做什么。
于是,谈话过后的这一个礼拜,我开始记录自己每天的时间使用情况。
我想知道我的工作时间到底用在了哪里,是否有优化的空间。
首先,我大部分的时间都用在了会议、面试、1 对 1 面谈、帮团队成员解决问题等事情上。
但我意识到,很多会议的效率都不高,要么是因为我经常听着听着走神,或者是我在想其他的事情,或者是我对会议的内容不够了解,听到一半没听懂,然后就彻底跟不上了。
还有很多会,开完就结束了,没有达成书面的共识和行动方案,与会的成员不清楚自己到底要干嘛,更别提因故无法参与会议的重要干系人了。
其次,我每天都忙于解决各种问题,参加会议,像个陀螺一样不停地转,但是我很少有时间能静下来去思考团队中存在的问题和瓶颈,也就是去做那些真正重要的、对团队有杠杆效应的事情。
我要求自己做的第一个改变是:凡是我组织参与的会议,必须明确会议的目的,提前发出会议议程,在当天写好会议纪要和行动方案,并且发给与会人。
在这里插播一句话:会议纪要听起来是很常规的事情,但是假如公司没有这个文化,就必须有人先做出表率,只有大家看到了做这件事的好处,才会慢慢改变思维方式,参与到这件事里面来。
做这件事给我带来的好处是,它让我最大化的利用了会议的时间去达成想要的沟通效果。
我在实践中发现,会议纪要的大部分内容可以在会议时间中完成:
做这件事的缺点是:比较消耗脑力,而且忙起来很容易偷懒不做(尤其是一个会接着一个会的时候)。
但是不做这件事,对管理来说简直是致命伤,不光浪费了所有与会人的会议时间,还没有达成想要的会议目标。
最后,我还会问自己,如果不是我做,我要如何保证这件事情完成的质量?
前面提到团队成员的成熟度低,这就需要我在授权的时候明确期待的产出和时间节点。
管理者很大一部分的工作都与决策相关,决策的质量对团队的影响至关重要,所以我要确保自己有一个好的精神状态。
每天留出至少 15 分钟的时间来做一些与项目规划、管理、大方向、团队状态相关的思考。
除此之外,每周要给自己留出一些做技术需求的时间,了解项目代码和团队成员的工作流程,我通常会选一些时间不太紧急的任务做。
在我看来,技术管理者的职责核心在于「人」,我需要构建、培养出一个有层次,有不同纬度的技术能力的团队,通过流程优化和自动化等方式来保护他们的注意力,让他们能够集中精力完成有意义的任务,并且从中获得个人成长。
想要完成这个职责,我需要做两件事:
我是用 Sprint 的方式来规划团队需要完成的工作的,每个 Sprint 周期为两周,每个周期开始前,我需要做以下准备工作:
盲区的定义就是自己看不见的地方,而一个管理者成长的过程就是发现并补足盲区的过程。
之前那位朋友一语道破:我做的事情其实就是 DevOps,平台部门是组织发展的必经之路。
另外一个佐证是,在备考 AZ-400: DevOps Expert 的时候,我发现这个课程设计的内容就是我目前需要的技能啊!
DevOps is the union of people, process, and products to enable continuous delivery of value to our end users.
搞清楚了部门的定位和使命之后,我的关注点从部门层面提高到了组织层面。
我以前认为我的职责在于发现平台部门的问题并且解决「本部门的问题」,但我看到这个盲区之后才领悟到,我们部门的成功依赖于整个组织流程的变革,所以我要发现的是更高一级的问题,并且要通过部门间的协作来达成平台部门的 KPI。
照亮上一个盲区之后,我看到了一个组织层面的盲区 —— 产品标准化。
因为我在思考自己职责的时候,漏掉了一个重要的环节,就是平台部门跟产品部门之间的衔接。
之前提到,平台部门需要负责产品的上线,每当产品组做出了一个新功能,我们就要 rollout 到不同的客户网站中。
这个盲区其实挺明显的,就是产品部门和平台部门对接时没有提供一个标准的产品模版和客户需求文档,比如哪些字段是可配置的,哪些字段是统一的值。
平台组的程序员会跟产品组的程序员进行技术层面的沟通,但是产品经理没有构建一套标准流程和产品文档来定义产品究竟应该做什么,最佳实践是什么,局限是什么。
也许你会问,那平台部门如何去完成产品上线需求呢?
很多时候,人们都会通过在线聊天工具来沟通,然后依靠个体的记忆去实现配置,当然这也会导致后期有各种 bug,整个流程的时间被拖长。
这个环节的缺失似乎已经成为了常态,因为它是盲区,是没有人看到的地方,所以也从未被提及。
乍一看,它似乎不属于我的职责,而是产品上线流程标准化的一部分,但我既然看到了这个问题,就需要想办法去解决,因为这件事是对整个团队有意义的。
我思考了之后,发现解决方案很简单。
说白了,就是每当有一个产品新功能需要平台组负责上线之前,我要把产品的人、程序、测试拉在一起开个功能沟通会。
产品方跟我们讲清楚标准化的产品是什么,哪些字段是需要配置的,标准的需求文档是什么样的,然后程序和测试可以提问,并且给出自己对这个产品功能上线的预估时间。
平台部门作为优化组织内部流程的主力,需要看得到部门协作之间的障碍和盲区,从组织层面思考如何优化整体流程。
上面提到的这个盲区,造成的表面问题是:产品上线的速度慢,bug 多,内部沟通成本高。
但经过思考后,我发现造成这些问题的深层原因是「缺乏产品标准化的文档和流程」。
PS:产品上线速度慢 + 质量不佳是跟平台部门的 KPI 挂钩的。
这篇文章写的有点长,最后来总结一下要点: