Guest post originally published on the Elastisys blog

Cloud native technology: a new generation of software that enables a highly automated way of working with deployment and operations of services, specifically crafted around the possibilities offered by the cloud. At the epicenter of cloud native technology sits Kubernetes, an “orchestrator” of cloud native applications.

In this article, we will focus on the benefits cloud native technology brings, how it brings them, and also, the greatest pitfall. Because of course, there is no such thing as a free lunch.

The benefits and pitfall of cloud native technology, tools and practices

The Benefits of Cloud Native

The benefits of cloud native technology, tools, and ways of working are:

Taken together, cloud native technology, tools, and the ways of working these enable you to increase development efforts without scaling up your team. Provided, of course, that you do not stretch your development team too thin by demanding they also perform platform operations.

Without getting too philosophical, cloud native means making use of the cloud the way it was always supposed to be used. Going with the grain, rather than against it. Hence the name. 

There are other benefits, too. Vastly improved developer experienceease of hiring and retaining talented developers that want to use the latest and greatest tools (who wouldn’t?), and being at the forefront of technological development. All those are great for the tech crowd, and indeed, it’s an attractive community to be part of. All major companies heavily lean on cloud native to stay competitive, both in terms of offering successful and scalable online services cost-effectively and in engineer mindshare.

How Does Cloud Native Provide these Benefits?

At the very core, cloud native relies on two foundations: standardization and automation.

Thanks to standardization and automation, the task of operating software in production settings has been vastly simplified. Indeed, we have seen the rise of entirely automated software releases to a level that was previously only feasible and available to select few deep tech companies. Such processes and tool support has become a commodity and available to companies of all sizes. 

What’s the Catch or Greatest Pitfall with Cloud Native?

The benefits sound great, but surely there has to be a catch somewhere? 

Yes.

None of the benefits of cloud native just appear out of thin air. Somebody still has to provide the platform upon which these technologies rest. Because while platform technology such as Kubernetes provides the developer-friendly abstractions that offer the attractive cloud native benefits, the cloud native platform itself has to be managed.

It is unreasonable to demand that application developers manage your Kubernetes-based platform, because the skill sets are completely different. The ability to make a user-friendly application or make efficient use of databases to the delight of end users overlaps in exactly no way with the ability to troubleshoot performance or memory leak issues deep within operating systems.

The more cost effective way of getting the cloud native benefits is to consume a working platform as a service. Beware, though, that the “shared responsibility model” of cloud providers means that most traditional managed Kubernetes services are limited in scope. With these, you are still on the hook for managing the platform and troubleshooting. Considering that Kubernetes really only forms the basis for a platform, your developers will spend an unknown amount of time they should have used for something more productive on frantically googling for troubleshooting advice to keep the platform running well.

In contrast, a fully-managed Kubernetes Platform as a Service (KPaaS) offering means you pay a predictable cost to have a fully-working and fully up to date Kubernetes platform available to you. You can further educate yourself about the differences here.

It’s like leasing a car, with service and guarantees included, rather than building one yourself and having to maintain it. The former is predictable and suits those that want to focus on the core task of having a car: driving to where you need to go. To those that love tinkering, it can feel more expensive than the do it yourself approach. But it also means standing there in the ditch with smoke coming out of the engine, watching the ones with working leased cars zoom by on the highway.

Summary

Cloud native technology, tools, and ways of working bring considerable benefits to companies that adopt them. Indeed, in 2022, major innovative and agile corporations already use them, so failure to do so needlessly grants them a competitive advantage. Standardization and automation both contribute to reduced risk, cost, and correctly configured Kubernetes-based platforms can add several layers of additional security to your applications. 

The catch is that operating these platforms yourself means your team of engineers are on the hook to provide a safe, secure, and well-performing environment for your applications. If your organization is goal-oriented around delivering software services, the allure of the benefits do not outweigh the cost of the additional operational and maintenance burden in managing the underlying platform.

The most cost-effective way to get the benefits is to have a team of experienced experts administer the platform and cloud infrastructure, and provide a working cloud native Kubernetes platform as a service.