在传统组织中有多个部门,它们专门负责特定职能——营销、财务、人力资源、运营等。很多时候,这些部门各自为政,只有在涉及多个部门时才会共享信息。不过,构建和交付软件的现代需求需要能够高速解决大量问题。随之而来的是需要有一个完整的团队来反映提供解决方案的各种专业知识,这就是跨职能团队的用武之地。
跨职能团队是一群来自不同领域的人聚在一起,用他们各自独有的能力来实现一个共同的目标。跨职能团队不仅是横向的各种职能专业知识的碰撞,也是纵向的自上而下的结构比对。
由团队成员和主要决策者组成的跨职能团队并不少见。跨职能团队对于实践 DevOps 方法的组织尤其有用。其价值可以通过多种方式体现出来:
跨职能团队有助于减少关键决策的官僚作风。这里的目标是在需要快速做出决策时有必要的表示。这使得跨职能团队非常适合 DevOps,其中敏捷思维是实现更快迭代和提高结果质量的关键。
跨职能团队还可以提高解决问题的能力。在 DevOps 方法中,质量和总体客户价值非常重要,因此出现的任何问题都需要有最佳的解决方案。跨职能团队拥有跨职能专业知识的各种人员,每个成员都可以提出不同的想法。例如,当讨论如何展示产品服务,获得有效的客户反馈时,营销专家的意见比较有参考性。他们更知道客户与产品互动的正确条件,并提供有价值的反馈。
跨职能团队提高团队凝聚力。可以鼓励不同部门的人协作,使之更多地了解他们之间的差异(主要是在工作中)。这有助于拉近他们的距离并建立关系,这在协作时会派上用场。这样一来,,群体思维和单一的回声室就会消失,发表非主流的或者与众不同的意见的人会更自在。
虽然跨职能团队的想法听起来很妙,在实践中也相当简单,但高达 75% 的跨职能团队并不成功。跨职能团队受到工作习惯和亚文化差异的困扰。来自组织不同部门的每个成员都有自己习惯的工作方式。
这就使得适应新的工作方式有点困难。记住,如果每个团队成员都有自己的偏好,也可能并不习惯这种工作方式。跨职能团队面临的其他挑战有:目标不一致、沟通不畅、误解角色和指挥链、工具不同及方法冲突。
每个团队成员都可以为整个项目做出贡献。但很容易忘记他们的工作与其他团队成员之间的联系。这是很常见的问题,尤其对于临时来调整产品的团队成员来说。
但它经常会导致人们对某些问题产生误解,比如某个特定成员的任务何时应该进入周期。成员们在完成任务时,可能也只会做最低限度的工作。这些冲突会延伸到更小的细节,如数据存储格式和其他方面。结果是交付质量参差不齐,需要重新审查产品,这会拖慢团队的速度。
跨职能的团队成员往往难以进入良好的沟通节奏。首先,它们可能用于不同的通道,这可能导致信息不同步。其次,通信频率可能存在差异。一些团队成员可能喜欢频繁发送通知,告知他们所做的每一个更改。但其他人可能只想接收更重要的里程碑和重大变化的消息。有些人可能更喜欢书面总结和简短的语音记录,而另一些人则想要时间更长的面对面会议来剖析计划、发现、分析等。
未能及时、一致地接收关键信息可能会导致失误和结果延迟。
在许多跨职能团队中,一个部门的成员可能会提出建议,而这些建议必须由另一个人实施。例如,商务人员可能会建议开发一种功能来跟踪有关用户行为的特定指标。开发人员和 UI 设计师可能仅仅将其视为建议,直到上级有人签字再落实行动。但项目负责人可能已经将其视为不需要任何额外许可的项目。
从本质上讲,团队成员可能对他们每个人的工作有所了解,但并不了解团队最终目标的全部内容。有时,工作只需要对接一两个其他成员的人甚至可能不知道其他成员到底在做什么。
在许多传统组织中, 数字化转型并不全面,如云计算这样的技术可能还没有渗透到整个组织中。
此外,在日常任务中,很多部门可能会使用不同的工具。无论是自动化测试还是关于软件开发生命周期进度的交流,拥有太多不同的工具都会让人头疼。
一旦团队成员开始合作,那将所有相关数据集中在一个地方并且实现完全可见就极富挑战性。
在一个部门中,相当于测试和质量保证的部分一般放在最后。而另一个部门可能会采用敏捷方法来完成项目。当来自这些不同方法背景的成员会面时,他们完成项目的方法可能会导致进度不同步。
要建立一个成功的跨职能团队,有许多方面需要注意。
具体的领导:除了每个职能都有一个领导之外,整个团队需要有一个端到端的领导者。每个团队成员还应该知道由哪个领导发出具体的指令。
明确的目标和计划:必须从一开始就为团队制定一个主要目标,并制定详细的计划/路线图,并在时间表上绘制里程碑。每个团队成员的能力都应该体现在它如何实现最终目标。除了提及专业知识之外,还要谈论该人员将要完成的任务。
频繁评估:为团队中的每个职能起草评估系统,以确保他们不会使用错误的方法进行评分。此外,跟踪总体目标进度并分析数据以确定问题是总体团队凝聚力还是特定功能。
有效沟通:确保每个人都知道他们会花最多时间与谁交谈以及他们将谈论什么。让他们在工具、消息的性质/组成、频率和其他实践方面保持一致。
灵活性: 以这样一种方式构建团队,无论贡献者的实际位置在哪里,你都可以接收输入。为突然扩张留出空间,成员更容易找到替代者。这可以通过始终保存文档来完成,以便新进入者可以快速上手。在成员中培养敏捷的心态,以便他们以预测任何曲线球并能够相应调整的方式工作。
联系和信任:进行有助于加强团队内部关系的练习,这样成员就不会害怕提出意见,不会害怕承认失败。
建立和维护一个持续成功的跨职能团队,要避免以下错误:
不合理的优先排序: 避免只支持一项功能而忽略其他功能。这可能被视为偏袒,使其他团队成员士气低落。在提供资源和满足其他需求时尽量取得平衡。当资源不够充裕时,以最小的付出给集体最大的利益。
无序的等级制度:不要造成这样的情况:一个成员总是跑到不同的成员身边,要求他们同意继续执行某项操作。明确哪些行为是低风险的,由成员自行决定,哪些需要上级同意。
微观管理:尽量减少与重要公告和进度检查无关的会议数量。在需要创造力的地方,给团队成员留出空间,让他们自己想出最好的解决方案来进行协作。如果这种文化不被鼓励,团队成员将应对不断升级的微小挑战,而向领导者寻求无法获得的解决方案。
责备:避免在出现问题或未达到目标时进行指责的习惯。在许多跨职能团队中,失败通常是由多个不同职能的人处理失当造成的。由于许多任务依赖于他人,所以这并不总是一个人的错。重点是要从成功的职能中吸取的经验教训,尤其是那些也可以应用于其他领域的经验教训。