平台工程的现实与常见误解:如何避免概念滥用,真正发挥其价值

平台工程的现实与常见误解:如何避免概念滥用,真正发挥其价值

有人说平台工程(PlatformEngineering)是“新的DevOps”。大多数人认可这个观点,因为他们认为平台工程是下一个重大创新,能够优化软件交付,就像DevOps运动已经通过推广CI/CD等实践所实现的那样。

但平台工程与DevOps还有另一个相似之处:“平台工程”这个术语的使用已经泛滥,甚至到了可能失去原本意义的地步。

本文将探讨为什么会出现这种情况,以及为什么说这对平台工程的未来是个坏消息。

平台工程的理论定义

从理论上讲,平台工程的定义相当直接:它是一种实践,旨在为公司内部的软件开发人员提供预配置的工具链、工作流和环境,通常是通过内部开发者平台(InternalDeveloperPlatform,IDP)来实现的。

平台工程的目标也很明确:帮助开发人员更高效地工作,并降低风险,使他们可以随时调用符合规范的、即用型解决方案,而不必每次都从零开始构建。

平台工程的滥用

尽管平台工程的定义看起来很简单,但我在实际交流中发现,许多人对它的理解和使用方式存在很大偏差,甚至可以说是滥用。

过去几个月里,我与许多IT专业人士交流,研究企业如何实际实施平台工程。在这个过程中,我确实遇到了一些真正的平台工程师,但也有一些人只是随意滥用这个术语,甚至曲解了它的真正含义。

以下是几个典型的错误案例:

1.管理面向客户的软件目录

一位IT总监告诉我,他们的公司在使用平台工程,让客户可以从一个中央存储库下载软件产品。

从某种角度来看,这与平台工程有些相似——它提供了一个自助服务的即用型解决方案。但是,向客户交付软件和通过IDP向内部开发人员交付解决方案是完全不同的事情。平台工程的核心是为开发人员提供更好的开发环境,而不是向外部用户发布软件。

如果任何拥有软件目录或应用商店的公司都算是在做平台工程,那么几乎每个软件公司都可以称自己为平台工程公司。实际上,平台工程有更具体、更狭窄的定义,而这位IT总监所描述的实践并不符合这个定义。

2.仅仅管理CI/CD

一位软件工程师(看起来对平台工程的概念并不太熟悉)认为自己是平台工程师,因为他负责管理CI/CD流水线。

当然,你可以认为CI/CD流水线是一种“平台”,并且它在软件开发中至关重要。但仅仅使用CI/CD并不等于做平台工程。

CI/CD只是DevOps文化的核心组成部分,而不是平台工程的全部。平台工程可以增强CI/CD的价值,使其更加高效,但CI/CD本身并不等于平台工程。

3.使用Kubernetes进行开发/测试

最近,我和几位软件工程师交流,他们表示自己的公司已经采用了平台工程,因为他们设置了Kubernetes集群,供开发人员在正式部署之前进行测试。

如果这些Kubernetes开发/测试集群是通过IDP向开发人员提供的,那么这确实可以算作平台工程。但如果只是单纯地设置了Kubernetes测试环境,那么这就不能算是平台工程。

毕竟,几乎所有开发人员都会搭建环境来测试应用程序。如果你计划使用Kubernetes部署应用程序,那么搭建一个Kubernetes开发/测试集群是很自然的事情。但仅仅搭建测试环境并不能让你成为

“平台工程师”——你只是一个用Kubernetes进行测试的开发人员。

平台工程概念的变迁

平台工程概念被滥用并不令人意外。类似的事情也曾发生在DevOps身上。当DevOps在2000年代后期进入技术领域时,它本应是一种将软件开发与IT运维融合的理念,但很多人把DevOps变成了一个流行词,甚至把任何现代化的软件工程实践都归为DevOps。

如今,平台工程似乎也正在经历类似的情况。有些IT从业者把任何涉及平台的软件开发工作都称作平台工程,而不考虑其是否真正符合平台工程的定义。

当然,”平台工程”这个术语本身并不完美,光靠字面意思很难直接理解它的真正含义。但稍微查一下资料,就可以发现平台工程指的是一套具体的、清晰的方法论,它远远不只是“任何和平台相关的软件工程”。

为什么平台工程的误解是个问题?

如果开发者不重视平台工程的真正含义,那么这个概念可能会逐渐变得毫无意义,最终成为IT领域的又一个流行词,指代任何新潮的东西。

这对软件开发人员来说是一个坏消息。因为当平台工程被正确实施时,它能够带来许多真正的、可衡量的收益,例如:

  • 提高开发效率,减少开发人员的重复工作;
  • 降低运维风险,确保合规性;
  • 加速软件交付,提高企业竞争力。

如果平台工程的概念被滥用、模糊化,那么开发人员可能会错失这些实际价值,而只是听到越来越多的“噱头”。

平台工程的概念正在被滥用,很多公司错误地将客户软件目录、CI/CD、Kubernetes测试环境等行为称作平台工程,导致这个术语逐渐失去其原本的意义。

真正的平台工程是基于IDP提供预配置工具和环境,帮助开发人员更高效、安全地构建和交付软件。如果行业不加以区分和澄清,那么平台工程最终可能会像DevOps一样,被广泛误解,甚至失去其真正的价值。

开发人员、IT领导者以及整个技术社区都需要更精准地理解和使用“平台工程”这个术语,以便真正发挥其潜力,而不是让它变成又一个毫无意义的流行词。

未经允许不得转载:A5数据 » 平台工程的现实与常见误解:如何避免概念滥用,真正发挥其价值

相关文章

contact