Exploring the Developer Experience with Kubernetes - Part 2
July 22, 2020

Roopak Parikh
Platform9

One of today's popular platforms for streamlining deployment and upgrades is Kubernetes, the open-source container orchestration system. Let's take a look at some more questions that surround Kubernetes.

Start with Exploring the Developer Experience with Kubernetes - Part 1


What are the top benefits of Kubernetes for developers?

While there are pains and challenges when getting started with Kubernetes, once developers are able to get through it, they start to reap a lot of benefits. Some of the key benefits include the performance and the availability that Kubernetes as a framework gives to applications.

For example, let's take a loan processing application at a bank. The organization wants to scale the application quickly because suddenly the fed has cut the rates and there is a long list of clients waiting for this application to be processed. With Kubernetes, it's easy to scale out without having to do much of anything in the application. The infrastructure provides those constructs.

Another benefit of Kubernetes is how easily developers can configure an application. Kubernetes allows developers to save configurations in a central location and makes sure when changes are made to configurations that applications also change or react accordingly.

Finally, the declarative nature of the Kubernetes API tends to be one of the top features that most developers would list as the things that they like the most about Kubernetes. With a declarative approach, instead of describing steps or instructions that are sequential or procedural in nature, it lets developers specify upfront the desired state of the system, or the desired state of the applications using a very well-defined, declarative set of resources.

This is a very elegant way of describing what they want, how they want apps to be configured, the kind of work that they want to be done, etc. And, it has also enabled new ways of thinking about continuous integration and continuous delivery.

Since Kubernetes is so declarative and the desired state can be specified using these files, it becomes very convenient to put those files in a GitHub repo, and then make a GitHub repo describe the desired state. Developers can then use Git's version control mechanisms to help keep track of version history.

Why is a declarative approach so beneficial?

A declarative approach makes development very repeatable. It's unambiguous. If there is a procedural or sequential way of describing work to be done, it's difficult to debug things when something fails far down the development pipeline.

Sequential ways of working leave developers asking, "where did things fail? What needs to be redone or undone?" Whereas a declarative approach is unambiguous. Developers can declare upfront, "Here's everything that I need. Try your best to converge towards that state."

When using Kubernetes or containers, it is easy to repeat steps on a machine or in a container onto any other environment. Portability is also a key benefit here. With the declarative approach of Kubernetes, developers can run applications the same way they are run on a laptop. This is a huge benefit from other tools where applications are typically distributed and there are people who are using multiple infrastructures to run their applications on.

The developer experience with Kubernetes can be complex and oftentimes feel daunting, but once implemented there are major benefits to reap. From performance, availability, portability and declarative approaches, the grass can be greener on the Kubernetes side.

With diligence and cross-team support, developers can master Kubernetes, overcome challenges and start delivering cloud-native applications with ease.

Roopak Parikh is Co-Founder and CTO of Platform9
Share this

Industry News

August 12, 2020

Datadog announced the general availability of Continuous Profiler, a low-overhead 24x7 code profiler that measures the performance of code in production.

August 12, 2020

Pulumi announced significant new capabilities for Kubernetes, including cloud native deployment automation options, ecosystem integrations and migration tools.

August 12, 2020

The Linux Foundation, the nonprofit organization enabling mass innovation through open source, announced the availability of a new training course, LFS268 - CI/CD with Jenkins X.

August 11, 2020

Datadog announced the launch of Incident Management.

August 11, 2020

Progress announced the latest release of Progress® Test Studio®, the automated UI load and performance testing tool.

August 11, 2020

Symmetry Systems emerged from stealth a year after raising $3 million in seed funding.

August 10, 2020

Red Hat announced the launch of Red Hat remote certification exams.

August 10, 2020

Signal Sciences announced an integration with Microsoft Azure App Service for the Signal Sciences next-gen Web Application Firewall (WAF) and Runtime Application Self-Protection (RASP) solution.

August 10, 2020

Copado announced Copado Government Cloud to help government agencies accelerate the time-to-value of Salesforce digital transformation projects.

August 06, 2020

Push Technology announced the launch of a new Kafka Adapter for their Diffusion Intelligent Data Mesh.

August 06, 2020

Appvia announced the launch of its Cost Prediction and Visibility tool, integrated within the latest version of its Kore platform.

August 06, 2020

LogiGear announced the newest addition to the TestArchitect™ family, TestArchitect Gondola.

August 05, 2020

Logz.io announced a partnership with HashiCorp, a provider in multi-cloud infrastructure automation software.

August 05, 2020

Digitate, a software venture of Tata Consultancy Services, announced the release of ignio™ AI.Assurance, an autonomous assurance product that enables enterprises to deliver better software faster, enhancing their business performance.

August 05, 2020

Harness acquired self-service Continuous Integration firm Drone.io, the creator of the open-source project Drone.