Preface
Hey, welcome to Platform Engineering for Architects! Platform engineering is the practice of creating environments that can build, test, validate, deploy, and operate software in a secure and cost-efficient way. Platform engineering is about automation, and about enabling the platform’s users, developers, and operations to focus on value creation. A platform, often defined as an Internal Development Platform or Internal Developer Portal (IDP), abstracts away the complexity of the underlying infrastructure and all the moving components required to support the software life cycle from its setup until it goes live in production. But platform engineering is more than just technologies that have to play well together. It requires an open mindset and a holistic approach to define the purpose of the platform, along with following principles in the decision-making process and fostering a culture of change and innovation.
In Platform Engineering for Architects, we will engage you in building up a product mindset to build a solution that ages and matures with time but stays young at heart. Step by step, we will create our strategic direction and define our target architecture for the platform. This will become a living artifact for you and everyone working with you. Throughout the book, we will cover the four different pillars of a platform and the relevant decisions you have to take: the infrastructure representation by Kubernetes, the automation, the self-service capabilities, and the built-in observability and security. By the end, you will be equipped with tools to handle costs including actual infrastructure costs and technical debts. If both are managed well, they can even become your best allies in overcoming organizational obstacles and politics.
For every aspect and topic we write about in this book, we also provide additional sources that cover full technical details. Our goal is to provide you with a framework of references and an approach for defining platform architectures that can mature over time without being tied to a specific technology or version. We are well aware that the only constant in life is change, and this holds true for platform engineering. That’s why we also encourage you as a platform engineer and architect to keep up to date with those changes and bring the product mindset to your users and stakeholders.