Many organizations also face issues regarding their DevOps teams. Finding skilled professionals is a challenge, as is retaining them in a competitive environment.
Organizations should address these issues by making sure teams have all the support they need and delivering a satisfying developer experience. The level of automation enabled by platform engineering can help organizations achieve these objectives, but they must understand what they’re undertaking.
“When we talk about moving DevOps to platform engineering, this is a big change,” Wylie says.
What Is Platform Engineering?
Gartner describes platform engineering as “an emerging technology approach that can accelerate the delivery of applications and the pace at which they produce business value.”
Platform engineering involves setting up and running the infrastructure and services needed to enable software development. Development teams can improve efficiency by aligning automated, cloud-native tools with their organizational goals.
In a blog post, Evan Bottcher, head of data and architecture at business management platform MYOB, writes that “A digital platform is a foundation of self-service APIs, tools, services, knowledge and support which are arranged as a compelling internal product. Autonomous delivery teams can make use of the platform to deliver product features at a higher pace, with reduced co-ordination.”
The results bear this out, as 68 percent of organizations that have implemented platform engineering say it has increased development velocity, according to a January 2023 report by Puppet.
WATCH: Discover how DevOps can add speed and efficiency to your process.
Platform Engineering vs. DevOps: How Are They Different?
DevOps and platform engineering both aim to improve software development processes within organizations, but there are important differences between them.
In many cases, organizations use a variety of specific, often customized, tools to complete projects using DevOps processes, which creates significant demands on resources. By contrast, platform engineering creates a consistent set of resources that developers share across an organization. By incorporating cloud-based tools such as Docker and Kubernetes into a simple stack, platform engineering streamlines software processes as well as access for developers.
DevOps’ reliance on customized solutions can lead to sprawl, resulting in organizations having large quantities of tools but not necessarily the right tools to solve their problems. By involving practices such as Infrastructure as Code (IaC) and Policy as Code, platform engineering automates many of the solutions to these issues.
“With platform engineering, you’re naturally getting governance because you’re creating a singular series of pipelines within your infrastructure,” Wylie says. “That governance can manifest as cost governance, for example, or it can manifest as security governance.”