08. How Kubernetes Changed Platform Engineering
Platform Engineering in a frenzied push for application modernization has left many organizations mired in their cloud native initiatives
By Dan Donahue, Principal Solutions Architect at Nethopper.io
Introduction: Bits, Bytes, and Nuances
I understand most technical write ups are supposed to be lots of bits and bytes and devoid of any personal nuances, but this one is going to be different. The bits and bytes will certainly be present, but they will be mixed with personal experiences because by nature I am a Platform Software Engineer. It’s what I’ve done for almost 25 years. I am very passionate about it. Much of what I’ve read recently in blogs, social media posts, and books compelled me to write this whitepaper because Platform Engineering (PE) seems to be a new concept to many. It is not. Platform Engineering simply moved from Software Engineering to DevOps/IT. Therein lies the awakening of DevOps/IT folks to PE and the challenge it presents for them.
In his book Platform Engineering on Kubernetes, which I highly recommend, author Mauricio Salatino makes a similar statement regarding the platform engineering term. Mauricio says:
Platform engineering is not a new term in the tech industry. But it is quite new in the cloud-native space and the context of Kubernetes. We were not using the term in the cloud-native communities when I started writing this book back in 2020.”
My history as a platform engineering and Kubernetes
In 2013, I was hired by a startup to architect, develop, and deliver platform software for 4G and 5G mobile network solutions. In that role, like many of my startup roles before it, I was expected to, and did develop platform software from scratch to support the core application software (mobile networking protocol stacks) running in remote radio heads (RRH) and COTS server running in the network core.
In late 2018, the same startup company mandated both the RRH and COTS servers move to cloud native, or in other words, Kubernetes. The deliverables of my role changed from architecting proprietary platform software to architecting solutions based on lots of open source (OSS) tools and applications. Rearchitecting the core software application out of the monolithic images and into containerized microservices-based images was the easy part. Replacing the infrastructure support provided by the proprietary platform software proved to be the most difficult.
I was dragged kicking and screaming into that effort and subsequently into the Kubernetes world. I was required to develop a platform solution that supported the new microservices based architecture. I didn’t like it. At first, I was frustrated sifting through the plethora of information available for learning Kubernetes and other CNCF (Cloud Native Computing Foundation) projects. It was initially overwhelming, but in time I found the engineering principles required to develop Cloud Native platforms were not so different from developing proprietary ones and, so, I made my peace with Kubernetes.
My ebook is an attempt to articulate my journey in such a way that helps others on their cloud-native platform engineering journey.
Download a free copy now:
You can also listen to our LinkedIn audio event recording: Click
Keep on reading!