行业专家概述了实施平台工程中潜在的陷阱和切实可行的解决方案,强调有机采用和清晰的沟通胜过强制遵守。
译自 Five Ways Your Platform Engineering Journey Can Derail,作者 Todd R Weiss。
平台工程 是IT管理员团队用来为其应用开发者 提供合适的软件工具组合的强大工具。但就像工作和生活中任何事情一样,它并不完美。在创建和使用它时也可能遇到一些挑战。
为了帮助识别和减少一些陷阱,《The New Stack》采访了两位平台工程专家,他们分享了他们在公司内部使用这种方法时如何处理一些常见挑战的建议。
在电子商务、零售和房地产领域从事平台工程和SRE 的高级技术主管说,平台工程中的陷阱潜伏在许多角落。
第一个陷阱是,公司试图通过只更改其当前开发实践的名称来启动平台工程,而没有做实际的工作。
他告诉《The New Stack》:“仅仅将现有的基础设施或DevOps 或SRE 实践重新命名为平台工程,而没有真正考虑到发展团队内部和外部以产品为导向或以产品为中心的文化”,这是一个巨大的错误。“实际上,这意味着没有明确的产品经理与团队一起工作或在团队中帮助捕捉核心项目”,例如用户角色、用户市场机会或在每个工作流中使用平台工程的原因。“仅仅招聘产品经理也不是一个成功的方法,”他说。“需要提升整个团队的文化,首先考虑产品和客户成果。”
他说,另一个主要陷阱是没有并维护产品待办事项——开发团队的工作优先级列表——这些列表直接针对您的开发者。“对于有待办事项的团队来说,它们通常是技术导向的,”他说。“规划中的这种思维错位和缺少反馈循环,不太可能推动组织内部的进展。最终导致该计划未能交付业务价值。相反,它们应该以开发者为中心,”说。
这是另一个重要点,说——那些没有向其运营内部的技术和非技术利益相关者清楚地阐明其平台工程章程的附加值的公司将无法充分获得平台在整个业务中的使用的益处。
“如果团队没有沿着产品用例的思路思考,并且能够向高级管理人员说明该项目的益处……信息很可能会达不到预期,”说。平台工程团队领导者必须能够沟通它如何在使用相同的研发人员和软件成本的同时加快客户成果的时间,同时不会影响正常运行时间、性能、安全性和可用性保证,他补充道。
将会有你的开发团队成员不想要改变,说。没关系。让他们按照自己的节奏适应变化。
“强迫用户采用平台,而不是让他们自发地采用它,可能会适得其反,”他说。“即使平台即产品确实为社区内的一些子群体提供了价值,它也不太可能在任何时候都能满足所有人的需求。”
相反,平台团队应该优化以解决80%的最终用户需求,同时积极支持选择不使用平台的用户,建议道。“团队需要有选择权,如果没有,这将成为企业内部一个难以驾驭和赢得的文化问题,”他说。
通过允许犹豫不决的开发者做出自己的选择,“这也会为平台团队创造适当的激励,让他们打造更好的产品,并真正不得不为用户体验的质量而竞争,”说。
平台工程的成功取决于其成果,Chernev说道。“缺乏能够指导项目成功的北极星指标”将会减缓平台工程的努力,他说道。最重要的指标是采用率、最终用户净推荐值、使用平台即产品团队交付的关键成果以及平台入职时间。
Chernev说道:“如果平台团队意识到这套指标仅仅是旅程的开始而非最终目的地,他们将会更加成功。”
我们的另一位平台工程专家,Dylan Scholz,一家在线保险市场的平台工程总监,表示对他来说,Chernev 上述清单中最重要的问题是,当公司决定严厉打击并试图让每个开发人员都遵守新的平台工程指令时。
Scholz说道:“你总会遇到不想上车的人”来达到平台工程的理想境界。“一个陷阱是试图一开始就做到完美并涵盖所有场景。有时你可能会遇到一些不想采用你正在使用的平台的个人,而让一些边缘案例失败也没关系。”
从产品采用生命周期的角度考虑一下,Scholz说道。“你会有你的早期采用者,你会有处于中间状态的团队,你也会有人不想这样做,这通常是最后的5%。”
他断言,在某些时候,从这些最后一刻的战斗中撤退可能是正确的做法。
他说:“你不想创造一个充满敌意的环境或一个强制人们做他们不想做的事情的中央合规团队。”“你需要尝试,‘嘿,我们在这里是为了帮助改进工具,让每个人都更容易。’最终,随着时间的推移,他们会采用你的平台。有时完美是优秀的大敌。”
他还说,重要的是要避免IT管理员为平台选择的平台工程工具始终都是正确选择的陷阱。
Scholz说道:“知道什么时候工具不起作用非常重要。”“如果你选择了一个工具,而这个工具是错误的,承认它是错误的并转向其他工具是可以的。这种情况偶尔会发生。你必须倾听你的工程师的意见。如果你的工程师说,‘这个工具很烂’,你绝对需要采取以客户为中心的方法,说,‘这是一个非常糟糕的体验。’”
他说,要解决这个问题,需要一个响应迅速的管理团队。
他说:“你必须与你的客户(工程师)建立反馈循环。”“你真的必须密切关注并询问事情进展如何。在选择解决工程师必须解决的问题的正确工具方面,有时会涉及一些技巧。”