Platform Engineering

Platform engineering is a new discipline that emerged in response to the growing complexity of modern cloud-native architectures. It describes the practice of building and maintaining an integrated product, called an "Internal Developer Platform," which acts as a flexible and supported abstraction layer between developers and the underlying technologies of their applications.

The goal of platform engineering is to improve developer productivity through improving the developer experience ( DevEx).

Internal developer platforms improve the velocity and happiness of teams by enabling developer self-service and reducing cognitive load on developers.

Core benefits of Platform Engineering and Internal Developer Platforms:

  • Faster innovation: Faster time to launch, frequent updates, focus on business problems
  • Higher quality: Fewer environment issues, more deterministic test results, faster rollback
  • Increased reliability: Observable services, graceful degradation, improved business continuity, optimisation for a fluctuating load
  • Improved security: Reduced security engineering overhead, Improved security operations and governance
  • Improved ways of working: Define policy via experimentation and simpler processes, apply enabling constraints, zero downtime updates
  • Reduced costs: Economies of scale, easier cost management
  • Better productivity: Lower cognitive load, easier to identify talent needs

Platform Engineering and the Internal Developer Platform is:

  • Not a commodity: It cannot be bought off the shelf, as it must satisfy the specific needs of your organisation. It’s built by weaving together open-source and bespoke commodity tools to create a technology accelerator.
  • Not a project: It isn’t a one-off development with a fixed end date. It will keep changing, as the needs of your teams will change based on their customers’ demands.
  • Not a universal infrastructure platform: It cannot run all cloud services for all possible consumers. It needs to focus on a subset of cloud services to support specific workloads.

It’s important to remember that an Internal Developer Platform isn’t a silver bullet. It’s a long-term commitment to providing Services at scale. It’s not appropriate for all workloads, teams, or organizations.