Saturday, December 10, 2022

What Is Platform Engineering?

 Platform engineering is an emerging technology approach that can accelerate the delivery of applications and the pace at which they produce business value.

Platform engineering improves developer experience and productivity by providing self-service capabilities with automated infrastructure operations. Platform engineering is trending because of its promise to optimize the developer experience and accelerate product teams’ delivery of customer value.

“Platform engineering emerged in response to the increasing complexity of modern software architectures. Today, non-expert end users are often asked to operate an assembly of complicated arcane services,” says Paul Delory, VP Analyst at Gartner. “To help end users, and reduce friction for the valuable work they do, forward-thinking companies have begun to build operating platforms that sit between the end user and the backing services on which they rely.”

Gartner expects that by 2026, 80% of software engineering organizations will establish platform teams as internal providers of reusable services, components and tools for application delivery. Platform engineering will ultimately solve the central problem of cooperation between software developers and operators.

How platform engineering works?

Platform engineering is an emerging trend intended to modernize enterprise software delivery, particularly for digital transformation. The engineering platform is created and maintained by a dedicated product team, designed to support the needs of software developers and others by providing common, reusable tools and capabilities, and interfacing to complex infrastructure. 

The specific capabilities of an engineering platform depend entirely on the needs of its end users. The platform is a product, built by a dedicated team of experts and offered to customers, who may be developers, data scientists or end users. Platform teams need to understand the needs of their user groups, prioritize the work, and then build a platform that is useful to the target audience.

Initial platform-building efforts often begin with internal developer portals (IDPs), as these are most mature. IDPs provide a curated set of tools, capabilities and processes. They are selected by subject matter experts and packaged for easy consumption by development teams. The platform team, in close consultation with the developers they support, must determine which approach is best for their unique circumstances.

The goal is a frictionless, self-service developer experience that offers the right capabilities to enable developers and others to produce valuable software with as little overhead as possible. The platform should increase developer productivity, along with reducing the cognitive load. The platform should include everything development teams need and present it in whatever manner fits best with the team’s preferred workflow.

The development of a new generation of tools has made platform engineering one of the hottest topics of conversation within the DevOps community. These tools aim to make building and maintaining platforms easier.

What platform engineering is used for?

What the ideal development platform is for one company may be useless to another company. Even within the same company, different development teams may have entirely different needs. 

The overarching goal of the engineering platform is enhancing developer productivity. For the organization, such platforms encourage consistency and efficiency. For the developer, they provide a welcome relief from the management of delivery pipelines and low-level infrastructure.

In short:

Platform engineering implements reusable tools and self-service capabilities with automated infrastructure operations, improving the developer experience and productivity. 

This technology approach utilizes reusable configurable application components and services.

The benefit to users is in standardized tools, components and automated processes.

No comments: