I've received many questions about the steps to build a Platform, and until I publish the full Platform Engineering bootcamp, you'll be able to learn about building Platforms in the official newsletter.
A short glimpse of the upcoming newsletter posts:
Here are some building blocks examples that will be used to construct a generic developer platform with a few automations, such as service auto-setup, pipeline management, and day-2 actions.
Blocks:
Building:
Upon completion, developers should work with two main interfaces:
SCM (e.g., Github) - which automatically executes most of the automations.
Portal (e.g., Backstage/Port) - providing developers with full visibility on the architecture, teams, and even offering a console for self-service actions.
These 2 interfaces provide them with all the information they need during development and all the actions they need to perform.
Spooky... 🎃
Yes, using a Platform like this, developers can work independently without bottlenecks. They can execute essential actions using GitOps or perform manual tasks through the Portal UI.
So how can we make sure that they will not make human mistakes which will damage the production / security / etc.?
There are two main ways to avoid mistakes:
Workflow enforcement, like Git Flow or other preferred workflows.
OPA (Open Policy Agent).