Virtualization Technology News and Information
DevOps is growing up - what will adulthood look like?

By Uri Zaidenwerg, DevOps Lead at Statehub

Demand for DevOps talent is booming

Many businesses have adopted Cloud technologies and DevOps methods in a short amount of time. The quick adoption timeline means that these technologies matured considerably faster than usual.

People keep investing in Startups that are sprouting like dandelions, resulting in increased investments. These companies compete for the same DevOps talent as big firms and aim to go-to-market and sell quickly; they can't afford time-consuming product development processes. These hyper-competitive, hyper-growth startups must be innovative just to survive. And DevOps and cloud technologies are a perfect fit for this environment.

The cloud computing job market is booming! Yet, it becomes more and more difficult to hire and retain DevOps talent.

With all the buzz about DevOps, demand for DevOps is on the rise, but supply can't keep up. A survey found that 43.3% of HR professionals believe they will struggle to find qualified DevOps engineers in 2021 because the demand for these roles has increased by 42% from 2018 to 2021.

The Growing Pains

No matter how tiny your project seems to be, DevOps is becoming a necessity; you're going to need someone who knows their stuff when it comes to DevOps tooling for application delivery, cloud architecture, monitoring, cost management, and more.

When a lot of various tasks pile up in the backlog, it creates an unhealthy scenario that makes prioritizing and accelerating difficult, leading to technical debt.

When we factor in the difficulty of recruiting engineers and consider all the fires that must be put out in a typical startup environment, we get a "Low Hanging Fruit" attitude. By that, I mean that startups often prioritize immediate over important. "Yes, we should get started on our disaster recovery plan, but our biggest client just requested a feature so we will get to that later."

Because of this mentality, important long-term infrastructure projects such as disaster recovery, proper version control, code flow, developing a scaling plan, and many others are delayed time and time again, becoming technical debt. This festers indefinitely until it snowballs into much larger issues, leaving the entire organization susceptible to risks such as data center failure or crippling cyberattacks.

What Can We Engineers Do About It?

When you consider all the above together with these additional variables: the low supply to demand ratio of qualified DevOps engineers, the increasing demand for "know-it-all" generalists, and pressure to get things done faster, it's no surprise that managed services are becoming more and more attractive.

Third-party solutions can amplify existing resources and make things easier for everyone involved. Managed services are fantastic tools that allow businesses to increase efficiency and reduce costs; however, they aren't perfect solutions for every problem. Before committing fully, or even partially (and paying a price), make sure the pros outweigh the cons.

I'm confident that managed services will be the answer, but it's critical to understand that not all managed services are created equal.

As in any decision resulting in a change in your environments, researching peer reviews and case studies is a given, but it's not enough. Here are some additional key considerations to guide your decision.

Reversible decisions are the best ones

Not all managed services are created equal, some will restrict you to a certain public cloud vendor, or a geographic region. A few good questions you should be asking are: What happens if you decide to revert a decision and go with another managed service? How long will it take? And what will be the cost? If you believe the answers to these questions will restrict you from switching managed services, check for alternatives or even a different implementation with the same provider. 

Operational flexibility

You want to have the ability to take your applications anywhere, at any time. For that you need to assure that the application, its data, dependencies, and configurations are agnostic to the public cloud infrastructure they are running on. Storing different application components on multiple clouds will not enable you to shift workloads between them. For that you need multicloud application portability - i.e., multicloud native applications that can shift location upon demand, assuring your application runs where you need it to run. 

Understand costs

Additionally, you want to make sure you understand the usage and cost metrics that will determine how much your company is going to be charged for this service, both now and in the future. This is often more complicated than it should be, making it easy to lose control over costs.

A few admirable services offer budget or usage limits depending on what type of package a client chooses - allowing companies more control over their spend.

Think of the future

Keep in mind that your needs might change over time and you may need to migrate away from the service. Choosing standard technologies could make future migrations less painful.

One of this strategy's main objectives is to enable hyper-scale, which means choosing effective tools so organizations can grow quickly while preventing major issues with scaling or performance degradation. You don't want to find yourself too far from shore with a boat that does not fit the sea weather conditions and without a way back to safety. This would most likely lead towards disaster!

It is important to make educated decisions, no matter how minor the workload seems at the start.

From my experience, managed services are not perfect, but they can be effective tools that allow businesses to amplify existing resources, increase efficiency, and reduce costs.

It is important to keep in mind what managed service providers offer, as well as the limitations of each solution before committing fully or partially (and paying a price). Ask around about managed services, do an in-depth proof of concept, understand usage and cost metrics, and consider your future needs and back-out strategies when migrating to managed services.


To hear more about cloud native topics, join the Cloud Native Computing Foundation and cloud native community at KubeCon+CloudNativeCon North America 2021 - October 11-15, 2021   


Uri Zaidenwerg, DevOps Lead at Statehub

Uri Zaidenwerg 

Uri is the DevOps Lead at Statehub, a multicloud data service for Kubernetes. An advocate of the "Run Less Software" discipline. As part of his job, Uri manages the Statehub's distributed multicloud systems and leads the development of the Statehub CSI and Kubernetes custom controllers.

Published Thursday, September 16, 2021 7:31 AM by David Marshall
Filed under: ,
There are no comments for this post.
To post a comment, you must be a registered user. Registration is free and easy! Sign up now!
<September 2021>