在我最近的文章中,我一直在探索产品团队自主的批判性重要但复杂的话题。首先,我们讨论了之间的权衡自主权和杠杆,然后我们讨论了之间的权衡自主权和使命。从你的反馈意见,我知道这是一个对你们许多人来说都很重要的主题,我意识到这次讨论有一个更大的维度,我也应该把那里所投放,并且与自治之间的权衡有关所有权的概念,尤其是代码所有权。

当他们首次从非常小的必威体育黑钱的吗?启动时,大多数公司都在有效地将一支团队中的一个团队搬到专用的产品团队,是他们将代码库切成了代码库。换句话说,让我们说贵公司在一方面提供垂直市场,另一方面提供司机。您可能有一个司机团队,“拥有”驱动程序的应用程序以及与驱动程序的服务有关的所有代码以及负责骑手应用程序以及骑手的所有服务的骑手团队。假设您还决定拥有第三个团队,该团队负责骑手和驱动程序使用的共同服务(身份验证,位置服务,映射服务和支付管理等内容)。这只是切片的一种方式,但它实际上是一种非常普遍的方式。

在大多数情况下,每个团队的事情都觉得他们再次是一个小型启动。如果驱动程序团队想要添加一些新的驱动程序筛选或很酷的功能,以帮助司机可视化他们制造的多少钱,他们只是这样做。

但是,当司机团队真正想要进行更改时会发生什么,但这至少在部分改变驻留在骑手团队或公共服务团队所拥有的代码?这就是自主与所有权的问题出现的地方。

首先是战略产品问题。司机团队想要做些什么来帮助招聘更多的驱动程序,并使驱动程序更快乐,可能需要更改riveers可能不喜欢的更改。动态定价是一个真实的例子,但这样的事情一直出现。

司机团队是否能够更改骑手团队拥有的功能或用户体验?如果是这样,虽然你增加了司机团队的自主权,但你几乎完全破坏了骑手团队的自主权。这个问题和示例强调了整体视图的重要性(作为一部分讨论)自治vs任务)。在这种情况下,产品负责人需要考虑完整的背景(愿景,KPI)并进行一些战略决策。我也喜欢产品原则帮助利用这些类型的产品决策。

但我们现在考虑代码所有权问题。让我们说没有产品或战略问题。我们都喜欢动态定价,我们都很兴奋地获得这种部署。实际上有两种方法用于平衡自主权和所有权:

依赖模型:

在此模型中,驱动程序团队仅要求乘手团队(以及可能是公共服务团队)对其代码进行相应的更改。相当直接,除了骑手团队真正忙于其他批判性重要变化的情况下,除了一个问题。假设他们说“我们很高兴这样做,但我们将能够达到一个月,因为我们正在涉及骑手增长的巨大和关键的公司目标。”对于司机团队,必须等待一个月或更长时间,肯定不会感到非常自主,或者非常快。

开源模型:

替代模型是非正式的称为“开源”模型,虽然要清除这不是开放的源代码,但它只是称之为,因为这是一个开源社区的运行方式。In this model, if the drivers team needs a change to the riders team’s code, then they could either wait for the riders team to do it, or they can actually make the change themselves, and then request that the riders team review the change, and include it if they’re okay with it (known as a “pull request”). This means that you are telling the software management system that you’ve made a change to the software, but the owner of that software needs to review the changes before they are actually approved and incorporated.

该模型具有相当多的好处。司机团队的感觉更加自主,并且可以更快地移动,而不会影响车队团队的所有权感。骑手团队仍然控制“他们的”软件,并决定某些事情是否没关系。

主位置这个开源模型不是如此有帮助,是代码非常专业化。假设我们不要求从驱动程序团队从驱动程序团队提出更改,而是需要更改核心服务团队的一部分的支付处理。在支付技术上速度可能需要相当长的时间。或者,因为我们在这里谈论钱,这通常是一家公司的敏感区域,那么该团队决定了支付更改应该只由共同的服务团队完成。或者,如果更改为身份验证服务,出于安全原因,只有两个特定的开发人员均授权访问该源代码。在这些类型的情况下,我们通常会回到依赖模式。

我个人喜欢开源模型很多,但它确实需要开发人员的相对较高的技能。

无论如何,在您设置专用产品团队时,您可以在产品级别和代码级别考虑并讨论所有权的概念。确定开源模型可用的代码库的哪些区域,这不是。对你的推理只是透明,并且团队通常会理解。

分享这个