速度的投资回报率:更快的代码交付如何节省数百万美元

CircleCI报告揭示,高速代码交付节省数百万美元!关键在于优化CI/CD流程,提升MTTR和吞吐量。AI和自动化是加速软件交付的关键,需关注IaC等先进技术。小团队重弹性,大团队重流程,规模5-10人的团队效率更高。

译自:The ROI of Speed: How Fast Code Delivery Saves Millions

作者:Jeffrey Burt

CircleCICI/CD平台提供商的首席技术官表示,在考虑生产力时,软件工程领导者之间存在一种奇怪的紧张关系。他们必须权衡创造公司可以使用的产品的乐趣,以及确保以最有利于他们自身业务的方式完成这一目标的需求。

Zuber告诉The New Stack:“大多数工程领导者都是作为工程师成长起来的,他们重视真正高效带来的个人回报和成就感,因为没有人喜欢与苦工作斗争,与工具作斗争以及诸如此类的事情。” “他们喜欢交付产品。无论他们是真正热衷于扩展后端系统还是将前端置于客户面前,无论那是什么,这都是工程师真正重视的。”

但是,当涉及到被衡量时,工程师会产生“一种奇怪的、过敏的反应”,他们觉得自己总是受到评判,他说。组织需要解决这个问题,因为工程领导者和其他高管必须努力衡量他们从效率角度获得的回报,以及相对于同行,他们是否前进得足够快。

在组合中加入投资回报率

这就是总部位于旧金山的CircleCI对其年度软件交付状态报告采取扩展方法的原因,该报告的第六版于周二发布。该报告仍然着眼于用于定义性能的关键指标——持续时间、吞吐量、平均恢复时间(MTTR)和成功率——但该供应商还在衡量组织从中获得的投资回报率,这是业务领导者和利益相关者的关键衡量工具。

随着人工智能渗透到几乎每个软件开发层,就像它在IT和业务的每个其他方面所占据的地位一样,这也成为一个重要的指标。

“当然,它正在以某种方式影响我们的交付能力,[重要的是]要知道,我们是否成功?我们是否跟上了竞争的步伐?” Zuber说。“这些事情都在工程领导者的脑海中,我们希望为他们提供尽可能多的信息,以帮助他们了解自己的处境以及可以集中精力的地方。”

该报告基于供应商对在CircleCI平台上构建软件的团队的近1500万个工作流程的分析。它还探讨了CI/CD中的自动化、基础设施即代码(IaC)和AI等先进技术对软件交付的意义。

CircleCI 指标

速度是关键

最高级别的发现是,前25%的绩效者继续将自己与其他人区分开来,这在很大程度上归功于速度。例如,他们的更新发布速度是后25%的团队的三倍,这使他们在开发速度方面具有市场优势。

由于速度的原因,他们每年节省了数百万美元的开发成本:他们完成关键工作流程的速度是较低绩效部门的五倍——这为战略计划释放了资源——并且在几分钟而不是几天内调试产品,从而为开发人员释放了更多时间。

他说:“多年来一直保持一致但对我们仍然非常重要的部分是,快速行动赢得了市场,而快速行动取决于出色的系统、流程和方法。”

这就是那些先进技术——尤其是人工智能和自动化——发挥作用的地方。它们正在提高软件交付的速度,而名单上的顶级组织正在适应工程的快速发展性质,并为用户提供价值。

Zuber说:“从历史上看,我们总是不得不在速度和质量之间做出选择,但最终确定的是,快速发展实际上是提高质量的东西,因为除非你真的擅长质量,否则你根本无法做到。”

其他指标因素

然而,他提醒说,这并非唯一的衡量标准。开发团队可以快速生产产品,但如果产品存在缺陷,或者组织修复速度缓慢,那么这样做毫无意义。这就是其他指标发挥作用的地方,从工作流程持续时间到恢复速度再到成功率。该报告的目的是为开发人员和团队领导提供他们可以细致入微地筛选的详细信息。

“它可以让人们更多地了解自己,并且意识到,‘哦,这种指标组合看起来有点像我们。这说明了什么?’我们非常擅长快速行动,直到……出现问题,然后我们需要很长时间才能修复它,”这位首席技术官说。“‘这是因为我们的系统很复杂吗?这是否说明了我们的文化?’这可能有很多不同的原因。在这一点上,真正需要的是团队和领导者提出问题。数据是对话的开始,而不是对话的结束。”

RecurShip 和 ROI

这些数据包括 ROI 数字。在报告中,研究人员通过一家名为“RecurShip”的虚构公司对其进行量化,该公司在全球拥有 500 名开发人员,他们每周负责三次提交——例如更新和优化——并且他们的薪水为 180,000 美元,即每位开发人员每分钟 1.50 美元。

持续时间——从工作流程被触发到所有步骤完成的时间——是一个重要的指标。报告中的数据表明,中位持续时间为 2 分 43 秒,其中 25% 的团队在不到 38 秒的时间内完成其工作流程。其他 75% 的团队在 8 分钟或更短的时间内完成。最快的时间可能是由于工作流程较轻,验证步骤较少或其他因素造成的。但是,某些团队的持续时间为 25 分钟或更长。

以 RecurShip 为例,优化工作流程并将持续时间从 20 分钟减少到 10 分钟,该公司每年将节省 750,000 分钟的开发人员时间,按每分钟 1.50 美元计算,这将转化为每年 110 万美元的生产力提升。

另一个例子是吞吐量,它衡量的是每个项目每天的工作流程运行的平均次数。在 CircleCI 上运行的项目中,中位吞吐量为每天 1.64 次运行,其中 25% 的开发人员达到 2.7 次。在生产力最高的 20 个组织中,每日吞吐量达到 3,762 次,报告称,这在平均水平和顶级表现者之间创造了一个“差距,表明大多数软件团队都存在巨大的未开发潜力”。

在 RecurShip,在其 500 名开发人员(每天运行 300 个工作负载,即每位开发人员 0.6 个)的基础上,增加 25 名工程师,负责消除开发管道中的摩擦,将使吞吐量提高到每天 394 个工作流程,即每位开发人员每天 0.75 个。

该公司将看到每位开发人员的生产力提高 25%,这是基于人员增加 5% 的基础上,并且看到的生产力提升相当于增加了 156 名全职开发人员。对优化和改善开发人员体验的这项投资为公司带来了 2840 万美元的生产力提升。

AI 将带来希望和变革

随着 AI 和自动化变得越来越普遍,对速度的需求只会增加。工程师和开发人员知道用于构建软件的新工具将如何改变他们的运营方式,从而产生很多不确定性。鉴于此,工程领导者的工作与其说是预测 AI 的未来,不如说是创建能够适应未来变化的团队。

Zuber 说:“我需要能够非常快速地适应它,因此它可以帮助我们思考如何构建、如何交付我们构建的系统类型。每个人现在都面临着这个问题。”

“思考如何为一系列可能的结果做好准备,并准备好适应和调整,这更有趣,因为这些人才是真正会成功的人。在不确定性中取得成功,关键在于敏捷性,如果你不考虑如何有效地交付软件以及如何收集反馈,那么你就没有真正为这种程度的变革做好准备。”

大大小小的策略

与此同时,CircleCI 绘制了公司现在可以采取的步骤,以在开发和交付软件方面变得更快、更高效。较小的公司需要构建有弹性的管道,这些管道可以在其团队从事其他任务时自主运行,并通过投资自动化测试来减少调试软件的负担。

对于中型公司而言,工作是保持快速的恢复时间、标准化流程,并在整个组织中复制高吞吐量团队使用的实践。报告的作者写道,大型组织需要简化变更管理和审批流程,并在构建速度优化与跨业务部门扩展的流程之间取得平衡。

(团队)规模很重要

此外,所有公司都应注意其团队的规模。 他们写道:“较小的团队往往行动迅速,协调开销较少,而较大的团队在扩展时必须应对依赖性、标准化和流程复杂性。了解这些权衡是优化开发速度和可靠性的关键。”

推荐的策略包括创建由 5 到 10 名工程师组成的自主开发团队,而扩展到 100 名开发人员以上的公司可以使用标准化工具和流程来保持其快速的 MTTR。

这位 CTO 表示,拥有 50 到 100 名工程师的公司在扩展到这个规模时往往会遇到吞吐量和其他障碍,然后在超过这个数字时恢复状态。 鉴于此,这些公司需要投资于自动化,以帮助提高吞吐量并突破 CircleCi 称之为在这个规模上常见的“复杂性障碍”。

发表回复

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