1 What is Platform Engineering?

 

This chapter covers

  • Defining platform engineering
  • Deciding when to apply platform engineering?
  • Understanding the mental models and core principles of platform engineering
  • Comparing platform engineering with DevOps, SRE, and Developer Experience

The number of articles, posts, and conference tracks on platform engineering has increased dramatically over the last couple of years. Yet, these sources can have very different ideas about what it means, why it matters, or what good looks like. Why is it so hard to define?

Most people who turn to these sources are trying to find a strategy for overcoming the fundamental challenges of creating custom software. We need to build software faster. But there are so many requirements and dependencies. Given constantly evolving technologies, extensive governance and operational requirements, and critical security challenges, how do we rapidly and sustainably deliver software experiences to customers?

This is the goal of platform engineering.

We define platform engineering as a craft:

1.1 Platforms are more than just DevOps

1.1.1 Why should I care about platform engineering?

1.2 When to use Platform Engineering principles?

1.2.1 When do these principles not apply?

1.3 Foundational Concepts in Platform Engineering

1.3.1 Product delivery model for platforms

1.3.2 Platform product domains

1.3.3 Platform engineering principles

1.4 Platform Engineering Enablers

1.4.1 Developer Experience

1.4.2 DevOps

1.4.3 Site Reliability Engineering

1.4.4 Impact of Generative AI in the PE space

1.5 Let’s get started

1.6 Summary