What is Platform Engineering?
For teams ingrained in DevOps practices, this term ushers in a broader horizon, a fresh perspective on managing infrastructure. But what does Platform Engineering offer, especially for those adept in DevOps?
The tech hemisphere is abuzz with a new phrase – Platform Engineering.
For teams ingrained in DevOps practices, this term ushers in a broader horizon, a fresh perspective on managing infrastructure. But what does Platform Engineering offer, especially for those adept in DevOps?
Platform Engineering dives deeper into what can be seen as an expanded version of DevOps, making it easier for software teams to get their work done efficiently. It’s all about creating a solid, easy-to-handle setup that can grow as needed while meeting the various demands of developers and their projects. The aim is to simplify the process of getting applications up and running, hiding the messy details of the infrastructure below.
A big part of Platform Engineering is ensuring developers can do things themselves. It gives them the freedom and the tools to deploy, manage, and adjust their applications without getting stuck in the weeds of the infrastructure.
One way this is done is through an infrastructure and services catalog. Consider this as a well-filled pantry where developers can find pre-set services, environments, and infrastructure parts. This setup encourages creativity and efficiency, letting developers whip up great applications quickly.
Platform Engineering takes away the struggle of infrastructure management, packaging it as an easy-to-use platform. It strikes a balance, giving developers plenty of room to work while keeping things secure and up to standards.
Moreover, it encourages seeing the work of the platform team as an ongoing project, not just a one-off task. Treating the platform as a product promotes constant growth, innovation, and value delivery, ensuring the infrastructure keeps pace with the needs of developers and their applications.
DevOps and Platform Engineering: A Contrast
Scope:
DevOps: It’s about the software journey from development to deployment, ensuring a smooth transition to production.
Platform Engineering: It adopts a broader scope, diving into the infrastructure abyss—networking, storage, and, not to forget, security and compliance.
Tooling:
DevOps: Teams often find themselves armed with specific tools for CI/CD, monitoring, and configuring. It’s about orchestrating containers with the likes of Kubernetes and managing infrastructure with tools like Terraform.
Platform Engineering: The most essential tools are your favorite programming language and a product mindset. You’ll spend much time getting feedback from your engineering customers, gluing together various tools and services, and providing delightful user interfaces.
Skillset:
DevOps: The expertise usually swings between software development or systems administration backgrounds, strongly leaning towards scripting and automation.
Platform Engineering: It demands a more rounded knowledge base, delving into cloud architecture, distributed systems, and network engineering to establish and maintain the platforms where applications reside.
The Leap to Platform Engineering
Transitioning from a DevOps-centric approach to embracing Platform Engineering is about broadening your horizons. It’s about stepping back and viewing the larger picture - the entire ecosystem where applications live and breathe. It’s about fostering a culture where infrastructure is viewed as a product, where operations engineers are not merely gatekeepers but enablers, facilitating a smoother, faster, and more efficient development process.
At first, the shift may feel overwhelming, especially when you’re well-versed in DevOps. But Platform Engineering is all about leveling up from the DevOps base, tackling infrastructure complexity head-on, simplifying it, and turning it to your advantage. It aims to create sturdy, scalable platforms ripe for continuous innovation and deployment.
In summary, as the tech landscape advances, our methods should, too. Platform Engineering is a natural progression, opening a horizon of possibilities for those ready to step outside the familiar territory of DevOps.
We’ve been known to criticize the DevOps space 😛. The truth is, it’s a hard job, especially as more and more of our software is consuming cloud services.
Cloud and DevOps expertise is shrinking compared to the rate at which we are growing software engineers. Platform engineering is how we scale the expertise of the few to ensure developers of any caliber can deploy secure, compliant cloud-native solutions without slowing their feature delivery cadence.
Want to learn more about platform engineering?
Check out the first two episodes of our podcast to learn about Platform Engineering from the point of view of an engineer and a cloud operations expert.
A cloud operations engineer’s perspective:
A developer’s perspective: