Coté

Platform Engineering, Platform as a Product, PaaS

Here’s a longer version, and slides for a recent version of the talk.

Platforms…?

What is “platform engineering”? What is “platform as a product”? What is a “platform”? What is “PaaS”?

Well, that’s a good question… Here’s a brief explanation:

A platform is the gooey layer of frameworks, middleware, tools and practices that developers use to build and then run their applications. Thoughtworks’ Evan Bottcher defined that gooey layer more precisely back in 2018:

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 coordination.

You can think of it as everything above the infrastructure layer, whether that infrastructure is Infrastructure as a Service (IaaS), bare metal, virtualization or Kubernetes. In cloud native shops, Kubernetes provides the blinking cursor, sometimes referred to as the “dial tone,” and the platform is all the stuff you pile on top of it so developers can start coding and you can start running their applications in production.

In the past year [2022], internal developer portals (IDPs) have been added to the components of what is considered a “platform.” What an IDP is varies (Gartner has a good go at defining it, you can read it for free), but we think of it as all the old-school application life cycle management stuff that’s been missing for many years.

It’s the intranet that developers use to support inner sourcing, discovering other available teams and APIs, tracking their own apps, documentation and, as the name implies, a portal framework for all the information radiators and single-pane-of-glass needs that organizations have.

There’s the technology of a platform, such as the the two found in the VMware Tanzu portfolio, here’s one of them:

Tanzu Application Platform diagram

And then there’s the new practices that infrastructure and operations staff start doing to not only run the platform, but support developers - to start treating developers as their customers:

Platform practices, from old to new

For a more detailed overview and recommendations on how to make it work, check out my recent talk on this topic here.

Platform Marketing, Advocacy, & Community

If you’re running a platform, you need to do internal marketing, advocacy, and community management. Here’s an overview of why and how:

Tanzu’s Platforms

At Tanzu, we have two platforms:

  1. The Tanzu Application Service - based on Cloud Foundry, this was originally named Pivotal Cloud Foundry. Mercedes-Benz runs 300 app and 1,500 platform services in production on Cloud Foundry, supported by a team of about eight platform engineers.
  2. The Tanzu Application Platform - a bunch of open source projects integrated, with customizations, configuration templates and runtime stuff, built on kubernetes. This platform also focuses a lot on the internal developer portal concept, not just the runtime part of a platform. See diagram below:

More Info

More links on the topic:

@cote@hachyderm.io, @cote@cote.io, @cote, https://proven.lol/a60da7, @cote@social.lol