Blog

Platform engineering: Scaling DevOps effectively

Kimmo Kekkonen Product Management & Development Lead, Solita

Published 22 Aug 2023

Reading time 5 min

You have probably heard about Platform Engineering, haven’t you? Platform Engineering has gained a lot of visibility this year. But what is it, why does it matter, and why should you know something about it? 

Let me briefly tell you what it is about. Platform Engineering is an emerging approach that ultimately helps businesses accelerate application delivery and the speed at which applications are developed as defined by Gartner. The core idea is to make it possible for developers to succeed better in their work while keeping the cloud secure and compliant. This yet will lead to creating more value for the business as a whole.

Platform Engineering is a modern way of thinking about how solutions that development teams need to develop and run applications in the cloud should be carried out. This approach produces more value, saves time and money, and makes work more streamlined for developers. These results are achieved by providing development teams with reusable components, self-service, standardised platform services, and tools.

Improved developer productivity while saving time and money

It has not been said for nothing that Platform Engineering scales DevOps team ideas pragmatically. Having developers (Dev) and cloud/infrastructure specialists (Ops) in the same team was a good trend back in the day. Although that was a good move from “getting this done fast” point of view, having teams like that for all applications in the organisation tended to be expensive. So, the DevOps team idea fits well for certain application development scenarios but is not a solution for all applications. Now there is an affordable business case for adopting the benefits of the DevOps team approach more widely, not only for a few teams but for the whole organisation, with Platform Engineering.

When customers have several teams developing applications in the cloud, it makes sense to have a centralised team that takes the bigger responsibility for creating and managing common solutions. This includes models, frameworks, and shared platform-level services for all the different development teams. In DevOps team approach, teams did develop great solutions but they were not shared with other teams or at least managed for them. This led to point-like solutions instead of scalable common solutions. If we develop scalable common solutions for development teams, we can cut overlapping and inefficient work and find automated solutions that support all parties involved in application development and operations.

With scalable common solutions, one can help developers to achieve more with smaller teams. If a single developer can achieve more in a team, it’s better than increasing the number of developers from a productivity point of view. Also with smaller teams cohesion is easier to achieve, which is vital for satisfaction and therefore fuel for productivity.

Here are a few examples that have been seen to improve developer experience and productivity from a Platform Engineering point of view:

  • by building self-service capabilities for development teams
  • development team autonomy (within the approved guardrails)
  • automated governance
  • automated networking
  • automated cloud infrastructure deployments
  • automated operations
  • reducing operational burden in general

In addition to that, one must not forget how important it is to ensure good cooperation with the development team. This includes e.g. setting clear goals and targets, right prioritisation of backlog, fluent cooperation with business and users, routines and ceremonies to name a few.

So, Platform Engineering helps businesses accelerate application delivery and the speed at which applications produce business value – while keeping cloud compliant, secure, and governed. As a result, business units can enjoy faster deliveries, and IT units can ensure governance and security without extra hassle.

Common solutions and automation enable scaling

When offering scalable common solutions to multiple teams, one needs to ensure the scalability and quality of the solutions. That means that continuous development and maintenance need to be planned well.

The Platform Engineering approach of providing central services as “products” leads to a highly professional and structured release/deploy mechanism that scales. Moreover, it will lead to better quality and higher value with less work.

Let me give you a few tangible examples of what Platform Engineers can do to improve development team efficiency. The first is backup as a self-service, and the second is automatic DNS registration.

Backup as a self-service – For every production application, there is a need for a backup mechanism. Backup of cloud resources can be provided for a development team as a self-service in a very simple way. The development team will tag cloud resources they need to back up with a backup-level tag. Tags can be e.g. BackupLevel = 0, BackupLevel = 1 or BackupLevel = 2. For example, BackupLevel = 1 class can mean that backup is taken daily, and backup will be stored for two weeks. And that’s it; backup is activated! Once the cloud resource has the tag, it will be automatically backed up based on a predefined backup level class.

Automatic DNS registration – When a developer wants to access, e.g., Managed Database via internal networking in Azure, one needs to have a private DNS name for it. This name can be, for example, mydatabase.privatelink.database.windows.net. Usually, the developer needs to contact IT or the cloud support team to get a working DNS name for the cloud resource. Typically this can take days or even weeks. However, utilising the Platform Engineering approach, this can be solved as a self-service. Once the developer creates a cloud resource, it will trigger an automation job in the background, automatically creating a DNS record for that particular cloud resource. For the developer, there is no need to understand DNS zones, how to map zones to networks, or even know what DNS records are needed in the first place.

These are two simple examples of how scalable common solutions can be provided to multiple teams efficiently. We can help build this kind of solutions for organisations or they can be bought as a service via our Solita CloudBlox® managed service offering.

Why Platform Engineering with Solita?

We are privileged to be surrounded by top-level professionals in digital business. At Solita, Platform Engineers work together with top Designers, Scrum Masters, Project Managers, and Developers, to name a few. We prioritise continuous development, as evidenced by our AWS MSP, Microsoft Azure Expert MSP, and GCP Infrastructure specialisation. We have also been recognised with the AWS Migration Competency award, the first in the Nordic countries.

We want to do things that create value and impact that lasts for our customers. Understanding the customer’s business, packaging cloud platforms like AWS, Azure, and GCP into easy-to-understand services and making the services to scale are doing just that!

Customers like Duodecim, Terveystalo and Säästöpankki trust us in Platform Engineering. If you need consultation or managed services around the topic of Platform Engineering, we are pleased to assist your organisation in your cloud journey!  Read more about our Platform Engineering and cloud services

In search of career opportunities in platform engineering? Take a look at our job openings across various locations!

Author

Kimmo Kekkonen Product Management & Development Lead, Solita

  1. Business
  2. Tech