2023 年的平台工程:事半功倍

2023 年的平台工程:事半功倍

本文翻译自 Platform Engineering in 2023: Doing More with Less

平台工程建立在最佳传统 DevOps 实践之上,并使用这些知识和经验来识别和实现新的效率。

问题的一些变体,“DevOps 死了吗? ”继续在云原生开发空间中被问到。答案是明确的“不”。随着平台工程的兴起,真正的问题和明确的答案是:DevOps 正在发生变化,但不会很快消失。 DevOps 角色的转变将成为推动开发人员体验的动力,帮助每个人事半功倍,随着各行各业的公司面临不确定的经济逆风,这正在成为指导原则。

开发者平台已经成为为开发者铺平道路的一种方式,他们的目标是提高生产力并减少认知负担,同时安全地快速交付软件。平台工程作为一门学科,尽管它仍然是未定义和模糊的——尽管随着更多打包的、商业选择的出现,这也开始发生变化——已经成为简化云原生开发旅程的工具。

虽然“平台工程”的定义仍有待解释,但其方向是全速前进,专注于塑造和改善开发者体验。实现这一目标的最有效方法之一是重新调整现有 DevOps 团队的工作重点,以少花钱多办事,成为类似于“PlatformOps”的东西来支持开发人员体验。

平台工程的兴起 = DevOps 的演变

有两件事说明了平台工程和开发平台的出现、即将到来的主导地位和商业化。

首先,开发人员的挫败感是真实存在的。 Kubernetes 开发人员有理由对微服务和云原生开发的引入带来的一些新挑战感到沮丧。开发范式的彻底改变,加上突然期望开发人员应该能够“左移”并为他们的代码承担端到端的代码交付运行责任,造成了额外的、不受欢迎的认知负担。

添加大量例行的、重复性的任务,这些任务突然落到了开发人员的身上——在许多情况下,他们没有任何路线图或抽象集来确定要使用什么工具。或者如何获得对服务的可见性以获得并加快他们所需的反馈循环,所有这些都等于减慢了产品和功能的交付。 Garden 的一项开发人员生产力调查发现,开发人员每周平均花费 15 小时在非开发任务上。

这不仅会导致糟糕的开发人员体验,还会拖累生产力,从而影响底线。

其次,虽然一些开发人员享受试验和尝试新工具的自由(1%),但绝大多数开发人员(99%)希望并且可能需要明确的护栏和“黄金路径”来发布和运行他们的代码。大多数开发人员希望将他们的时间集中在编写代码上——而不是运行基础设施和试图找出为了提高生产力而应该正常工作的事情,例如维护工具、设置开发环境、自动化测试等。

推而广之,大多数企业都需要标准化、可复制性和一致性的安全性和稳定性。能够满足客户需求、控制成本和确保安全是首要任务,虽然本质上并不反创新,但关键业务要求会阻碍过多的创造力,并依赖于流程、自动化和使用相同标准和工具的每个人。

这就是 DevOps 继续挽救局面的地方。 DevOps,就像开发人员的工作一样,也在不断发展,但并没有消失。相反,DevOps 正在转向平台工程(又名 PlatformOps)支持模型,该模型扫清了道路,降低了开发人员体验的复杂性,并通过创建开发人员平台消除了开发人员日常工作中的摩擦。

平台工程建立在传统 DevOps 最佳实践的基础上,并利用这些知识和经验来识别和实现新的效率,并事半功倍。或者,正如最近一篇 New Stack 文章所阐述的那样,“你可以说平台工程采用了敏捷和 DevOps 的精神,并将其扩展到云原生世界的上下文中。”

开发者平台事半功倍

鼓励开发人员对其软件进行全生命周期管理有一个好的开端,即让他们有更多的控制权和洞察力,从而能够提高速度和构建效率。但基础设施从来都不是,而且可能永远不会是开发人员的主要关注点——或者是开发人员释放能量的最有效场所。

然而,在云原生领域,开发人员需要更多地了解基础设施以及他们发布代码后会发生什么。如果出现问题,开发人员仍然需要对该代码负责并了解其依赖关系,以帮助排查和识别(并修复)下游问题。

但是组织和制定关于服务、环境、云本身的决策?这就要求一个学科的专家尝试在飞行中专门研究一些完全不同的学科,这既否定了提高速度和开发人员经验的最初想法,也否定了事半功倍的想法。有时,让非专家承担专家责任的想法,认为这样会减少资源使用,也就是事半功倍,会导致更多的问题。

中间立场和用更少的钱获得更多的途径是开发者平台的甜蜜点。从本质上讲,开发者平台可以:

  • 为所需的工具和可见性提供开发人员自助服务,铺平道路,但又足够灵活以适应不同类型的开发人员。它既适用于完成入职培训的新开发人员,也适用于希望实现可靠、高效生产的有经验的开发人员。
  • 使 DevOps/PlatformOps 能够支持和增强自助服务运动,增加他们在战略改进和项目上花费的时间和注意力,并减少救火时间。
  • 允许更好地衡量性能、合规性和安全性,因为操作和资源数据集中在平台内。
  • 缓解影响多个行业的许多公司的预算紧缩。正如我与 The New Stack 分享的那样,开发者平台是“确保您的本地开发环境设置良好,并且没有人坐在那里等待构建发生的一种方式。所有这一切都依赖于平台工程团队可以促进的快速反馈和透明度。”

一切都与开发人员体验有关

如果开发者平台是为了提高效率和生产力,那么现实世界的可用性是关键。利益相关者(开发人员)必须想要使用该平台才能产生任何价值。必须创建开发人员平台以消除障碍并扫除开发人员和安全快速地交付软件之间的典型挑战。该平台必须解决开发人员在工作中需要知道、看到和经常做的事情,并定义无缝实现这一点所需的抽象。

反复谈论“开发者体验”可能听起来有点夸张,但如果它只是一种过去的趋势,它就不会成为一个永恒的主题。

许多开发人员、平台工程师、DevOps 和站点可靠性工程师都表达了一种观点,但 Arm 的 Cheryl Hung 说得最好,强调了为什么开发人员平台是必不可少的:“基础设施可能不可靠;它失败;这是不可预测的。与每次都以几乎相同的方式运行的软件相比,基础架构真的非常困难。”

如果开发人员体验——以及支持开发人员的工作——对于实现业务目标和明智地使用资源至关重要,那么 DevOps/PlatformOps 角色和平台工程同样有助于持续改进和保护开发人员体验。

发表回复

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