A survey of 504 DevOps practitioners finds that 61% of respondents work for organizations that are already applying platform engineering principles across all or some element of their IT operations.
Conducted by Techstrong Research, the survey cites improving developer productivity (59%), the need for standardization of configurations (58%), reducing costs (51%), decreasing the increased complexity of modern applications (49%) and improving security (48%) as the primary drivers of adoption.
Mitch Ashley, principal analyst for Techstrong Research, said platform engineering extends the principles of DevOps in a that drives a developer-as-customer culture among IT operations teams. That approach promises to reduce the overall level of cognitive load on developers that should be spending more time, for example, creating business logic, he noted.
While platform engineering is clearly gaining traction, the degree to which it is embraced can vary considerably. Some organizations view platform engineering as a methodology for centralizing the management of DevOps workflows at scale. Rather than each application development team, for example, having its own continuous integration/continuous delivery (CI/CD) platform there might be only one or two instances managed by a central DevOps team adhering to the same best practices. Other organizations are going a step beyond by melding DevOps and IT services management (ITSM) teams into a centralized IT organization.
Regardless of approach, the overall goal is to enable application developers to self-service their own requirements without necessarily having to master the nuances of an infrastructure-as-code (IaC) tool to, for example, programmatically provision cloud infrastructure resources. As a result, the consumption of cloud resources should become more efficient as the overall wastage of infrastructure resources is reduced. Just as critically, security should improve as policies and controls are more consistently applied.
In the long term, platform engineering also enables organizations to embrace both observability and artificial intelligence (AI), both of which require centralization of IT functions and data to effectively implement.
The challenge will be getting application developers on board. Many of them prefer to choose their own tools so convincing them to standardize on specific tools and platforms is not guaranteed even when there are edicts in place. Application developers typically have the skills and expertise to build their own application development environments. They will create their own shadow IT environments if they feel the platforms provided are too rigid or don’t allow enough opportunity for experimentation. Worse yet, some of them may decide to vote with their feet by moving on to another organization.
The issue, of course, is many of those same application developers resent having to be responsible for every function. They clearly want more automation without having to sacrifice any of their prerogatives. The truth is many application development teams initially embraced DevOps in the first place to escape the constraints imposed by a central IT team.
Ultimately, platform engineering requires IT organizations to define the equivalent of a social contract with application developers. In return for sacrificing some independence, they gain the opportunity to spend less time on non-differentiated tasks that someone else is more likely going to manage better than they can.
The one clear thing is that there is a pressing need to centralize the management of software engineering workflows. However, when it comes to applying platform engineering principles it’s unlikely there will be such a thing as a single right answer for every organization.
For more information, download a copy of the DevOps Next report here.