克服DevOps瓶颈的4个步骤

在具有挑战性的视频游戏中升级所需的步骤与提升 DevOps 之旅所需的步骤非常相似。

译自 4 Steps for Getting Over a DevOps Plateau,作者 Andy Corrigan。

在贵组织的 DevOps 采用 历程中,您会觉得已经发挥了真正的潜力。然而,您可能会关注类似的组织,看到他们的表现更好,并想知道他们是如何做到的。您可能一时想不到下一步该怎么做。

请放心,这不是您的巅峰。这是一个瓶颈。

瓶颈很有趣:它们既令人欣慰,又令人沮丧。您并没有落后,但停滞不前会成为一个真正的问题,因为它意味着您也没有前进。

那么,您如何克服瓶颈呢?

好消息是,这可能比您想象的要容易,而且您可能已经具备储物柜中所需的技能。

您是否曾经享受过基于技能的爱好,例如艺术、音乐或学习一门新语言?如果是这样,您可能在学习过程中克服了许多瓶颈,有时甚至没有意识到。

组织可以应用相同的基本概念来克服 DevOps 瓶颈。

需要说服吗?我将通过将此场景与我在爱好之一中遇到的挑战进行比较来说明:格斗游戏。

对初学者进行快速解释:格斗游戏是一种竞争性的 1 对 1 视频游戏类型,其中两位玩家分别控制一个色彩缤纷的角色,并在三轮比赛中决一胜负。

作为一个类型,高水平的比赛通常要求极高,因为需要动作输入、特殊动作和复杂的连击。成功的玩家需要快速的思考、更快的反应和实时策略。

该类型中最广为人知的特许经营权是街头霸王系列。如果您对它有所了解,您应该明白本文的其余部分。

以下是您需要采取的步骤来克服瓶颈,无论是在格斗游戏中还是在持续交付领域:

1. 找到更有效地做事的方法

除非您知道存在问题,否则您无法解决问题。要了解您的表现为何停滞不前,您需要进行一些自我反省。

对我来说,“街头霸王 6”(我目前玩得最多的格斗游戏)意味着意识到我的错误。我观看比赛的重播,记下让我措手不及或需要做得更好的事情。

当我发现游戏中的弱点时,我会努力解决它们。如果我不断对抗特定的攻击模式,我会尝试在训练模式中找到解决方案。这些解决方案通常会给我其他改进的想法。

对于 DevOps,您可能没有重播和训练模式,但您确实有工具,它们可以为您提供类似的反馈。

您从每个部署周期中获得的信息应该是您发现自己做得好的事情和可以做得更好的事情的第一步。而 持续交付 (CD) 是什么,如果不是解决错误的过程?您部署更改,结果塑造下一个变更。

例如,查看您的管道部署后可能会发现一个测试花费的时间比预期长或失败的次数比您意识到的多。可能有一个手动审批步骤阻碍了您,您可以更好地管理或删除它。也许您的软件规模已经超出了您的部署能力,您需要考虑使用新工具来帮助简化扩展

切勿假设您的管道尽可能高效。总有更多的效率可以从某个地方榨取出来,找到它也可能带来更多改进的领域。

如果您一开始没有得到反馈,那么这是您需要解决的第一个问题。确保您的管道为您提供有用的信息,帮助您做出有意义的决策。它将帮助您更快地识别这些弱点。

2. 勇敢地放弃成功的技术

有时,让您走到现在的工具和技术不再足以完成工作,您需要走出安全、熟悉的流程,尝试一些新东西。

我一直在尝试在“街头霸王 6”中克服瓶颈。我在游戏的在线白金段位中停留了两个月,一直无法晋升到钻石段位(尽管我几次都令人沮丧地接近了)。

原因是什么?我无法像他们惩罚我的错误那样惩罚对手的错误。尽管承认这一点很痛苦,但帮助我轻松通过黄金段位的中间技术只能让我在白金段位中走这么远。

提高我的表现的唯一方法是放弃回报较低的技术并学习更好的技术,这样我才能在关键情况下兑现更多(这是一个正在进行的工作)。

同样,当流水线中的技术或工具已发挥到极致时,您应该用能获得更好结果的东西来替换它。

我理解做出这些决定时的犹豫。毕竟,您可能对帮助您大幅提升的工具情有独钟。您可能自然而然地倾向于遵循“如果它没坏,就不要修理它”的古老谚语。

但有时选择不改变只会强化现状,并阻止您进步。热爱帮助您走到现在的工具和策略,但当它们阻碍您时,要勇敢地放弃它们。

3. 接受改变需要时间来适应

无论我在格斗游戏的训练模式中练习多少新技术或连招,我都需要一段时间才能在比赛中有效地使用它们。

我需要让新技巧成为肌肉记忆,以便在不假思索的情况下释放它们。了解和执行技术还不够——我还需要了解使用该技术的正确情况。

学习这些东西只能在实战中进行,这意味着我的表现可能会因此受到影响。我的排名可能会暂时下降,或者在我弄清楚事情时可能会输掉一些比赛,但这没关系!如果它能带来长期更大的收益,那么短期内的痛苦是值得的。

实施新流程、更换工具或提升团队技能等增值活动可能会产生同样的效果。

例如,学习新工具的细微差别需要时间。引入它可能会以您未曾考虑过的方式扰乱管道的一部分。如果您幸运的话,您可能会让新工具直接投入使用。但您可能无法像花更多时间、耐心和经验那样有效地使用它。

在做出重大改变后,可能需要一点时间和试验才能看到结果。但要抵制退回到安全地带的冲动。毕竟,拥抱 DevOps 意味着使用可靠的证据和既定的研究来帮助制定决策。

只要您的整体表现呈上升趋势,出现一点小问题是可以接受的。不要担心波动。

4. 向他人寻求灵感

当我在游戏中遇到困难时,围绕格斗游戏建立的社区是一个极好的资源。社区中的人们了解该类型游戏的难度,并希望其他人也能享受他们所享受的东西,因此他们创建了资源来帮助学习之旅。那些亲自见面玩游戏的人很乐意解释如何克服困难的角色问题,或帮助您解决遇到的问题(当然,前提是你们不在同一场比赛中竞争)。

同样,DevOps 已发展成为不仅仅是一套最佳实践。它也是一个不断壮大、充满热情且欢迎新人的社区,里面充满了人们想要分享的经验和专业知识。

有很多机会与其他组织的同行聊天或听取他们的意见。参加专门活动意味着您可以从行业专家那里获得想法。网上有无数网络研讨会和指南可以激发您的灵感。

DevOps 还得到了诸如DORA 的 DevOps 状态报告等易于获取的研究的支持。这项研究可以帮助您了解在类似情况下对其他人有效的方法,并可以向您保证您走在了正确的道路上。

教训?始终为迎接下一个挑战做好准备

DevOps 中的性能停滞令人沮丧,但与其他情况(例如格斗游戏)不同,您拥有时间、经过充分研究的理论和经过验证的实践作为指导灯的奢侈,不受您的思维速度或反应时间的阻碍。从这个意义上说,DevOps 是一条走得比较多的道路。

但是,当您确实突破了瓶颈时,如何才能减少未来再次遇到瓶颈的可能性?对于 DevOps 来说,它与其他任何事情都是一样的:您永不放弃,并且永不停止尝试改进。

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注