The Platform Engineering Revolution

The Platform Engineering Revolution
Published on

Simplified platform engineering is the process of removing as many of the obstacles between developers and production. Platform engineering can be seen as the continuation of the trend that has dominated software development for the last 20 years, namely the increasing reliance on automation.

One of the side effects of this trend is that traditional roles within the development cycle are being blurred with developers having to perform certain tasks a developer from even 5 years ago would not even consider. This is almost certainly a result of the need to bring software to market fast and maintain the quality output today's customers have come to expect.

How then has platform engineering evolved to solve many of the problems developers encountered when needing to bring products to market fast with no sacrifice in quality? To answer this question we put it to Grigor Khachatryan, who started out his career greatly impacting the success of various startups in the tech industry including Mappr, an interactive mapping solution, Rodin, an AR/VR experience builder, and Lyve Global, a last mile delivery startup. It can be argued that it is his core guiding principles in software engineering that helped guide these startups. Further, it is his knowledge base that we now tap into. Currently Grigor is a Director of Infrastructure Engineering  working in Dubai.

Defining Platform Engineering

As for a working definition of platform engineering, the methodology can be defined as the process of leveraging their chosen cloud platform to yield incredibly high-efficiency levels so that value can be delivered quickly with no compromise on quality while reducing costs.

Put differently, platform engineering can be viewed as an asset to the organization. This is due in part to the methodology's emphasis on planning, designing, and managing the chosen cloud platform. This process can then be leveraged by the organization's developers and IT professionals to develop and deploy solutions and software on a reliable platform free from the teething problems cloud computing has been known to produce.

Often these problems stem from manually creating and configuring repositories, managing infrastructure components, and even creating and managing CI/CD pipelines, from unit testing to production. All of which slow the path to production, sometimes to the point that projects are abandoned simply because they take too long to reach the market or be of any use.

The Cloud and Platform Engineering

The advent of cloud platforms opened up a wealth of possibilities for organizations to take advantage of. Unfortunately, this also opened up Pandora's Box in the form of challenges. That said for an organization to take advantage of this technology these challenges need to be overcome. Highlighting the advantages of the cloud Grigor Khachatryan notes,

"Cloud computing has become the leading method for scaling up workloads and growing businesses at a steady rate. It allows companies to build and run scalable applications in dynamic environments known as clouds. Cloud technologies allow integration of multiple systems, offering a new platform designed to enable easy management and detailed reporting."

But to take advantage of this amazing resource there needs to be a high level of expertise with the cloud along with understanding infrastructure as code, containers, and container orchestration. This ultimately needs a platform engineering team to be created. The team's main responsibility is to rapidly deliver software to production by leveraging the advantages cloud platforms offer.

For the experienced developer, they have seen many different types of development methodologies advertised as the solution to their problems. This can result in a somewhat jaded attitude to the new kid on the block. With this in mind, it is important to see why Platform Engineering is different from Site Reliability Engineering (SRE) and DevOps as examples.

Platform Engineering vs SRE

SRE is a term initially developed by Google to describe applying software engineering principles to building and maintaining system infrastructures. The goals are to ensure systems run smoothly, efficiently, and with high performance. Very similar ideals to Platform Engineering. To help better define SRE Grigor notes,

"Resilience Engineering is all about building systems that can adapt and automatically take the best course of action when common issues occur. Any inadequacies found through testing are ironed out before the system can become truly resilient. "

The difference between the fundamentally rests in what each methodology intends to achieve. In Platform Engineering the main goal to be achieved is to deliver software rapidly. This is done by building and maintaining automated processes within the cloud. It can then be argued that SRE is a low-level process that can benefit from the higher level of Platform Engineering which provides a service to development teams.

Platform Engineering vs DevOps

DevOps can be seen as a vital culture shift in the software development process. Before DevOps tasks were highly separated and siloed. DevOps looked to destroy those traditional skills silos, particularly the split between development and operation.

Platform Engineering, while certainly influenced by this major culture shift, looks to deliver a self-service platform that is not reliant on DevOps and engineers coordinating efforts as is still found with DevOps.

The Future is Automation

Automation is set to play a bigger and bigger role in software automation. While this drive has added complexity to the once humble development cycle it has allowed developers to fully automate code pipelines and testing increasing the pace of development. Platform Engineering leverages the advantages offered by cloud platforms to further improve and speed up the development cycle with a strong emphasis on automation.

Author:

Newton Almond

Publication date: 17th June 2022

Join our WhatsApp Channel to get the latest news, exclusives and videos on WhatsApp

                                                                                                       _____________                                             

Disclaimer: Analytics Insight does not provide financial advice or guidance. Also note that the cryptocurrencies mentioned/listed on the website could potentially be scams, i.e. designed to induce you to invest financial resources that may be lost forever and not be recoverable once investments are made. You are responsible for conducting your own research (DYOR) before making any investments. Read more here.

Related Stories

No stories found.
logo
Analytics Insight
www.analyticsinsight.net