Will Automated Cloud Optimization Replace Your DevOps Job?
Automated cloud optimization isn't going to steal your job; it will buy you time to do more interesting things than managing your infrastructure.
Join the DZone community and get the full member experience.Join For Free
Replacing human folly for algorithmic efficiency means faster and better service and a "perfect cheeseburger" every time. So what can you expect when automated solutions start making decisions about your cloud infrastructure? Well, with the tasks it can do, automation certainly buys you time to do more interesting things than micromanaging your cloud infrastructure.
I wrote a guide to help you understand the impact of automation on your job and whether it will really put your DevOps, cloud engineer, or solutions architect job at risk anytime soon.
There Are Not Nearly Enough Qualified Engineers in the World
There are some 794,000 DevOps engineers on the U.S. market. According to the Upskilling 2020: Enterprise DevOps Skills Report, finding skilled DevOps experts and retaining them are two top challenges today. HR managers are ready to participate in a round of Squid Game just to get you on board.
And the requirements in this area are only going to grow because merely building a smooth CI/CD pipeline is no longer enough. Also because engineers are tasked with ever more repetitive tasks to do. Even if automation managed to reduce some of these tasks, it’s nowhere near enough to solve the skill shortage in the field. Realistically, it could help you transition from doing the job of three people (as it happens now) to a process that is more sustainable.
One site based on the research from The University of Oxford gives DevOps engineers a meek 4.2 percent chance of getting replaced by automation.
The Path to Automation Is Unavoidable in Tech
Writing code is also getting automated. And this approach is already fostered by industry leaders like GitHub’s CEO Chris Wanstrath who expects that in the future, coding will be fully automated.
Then there’s Will Iverson, the CEO of Dev9, who uses automation to power a process he calls “Continuous Development” where small teams write code and AI does the automated testing and deployment. This speeds up the delivery rate and minimizes labor costs.
Cloud Computing Has Already Reduced Quite a Few Jobs
If your business uses the cloud infrastructure of AWS, you sure need to dedicate time to managing it properly. So, you hire software engineers and give this job to them.
But what if you never turned to AWS and its wonderland of managed services?
You’d have to build a cloud platform on your own – and hire way more engineers to take care of your infrastructure’s integrity, security, scalability, and more. AWS solved this problem for you. And then automated its solutions with managed services.
So, companies that use public cloud services no longer need to have an army of experts in data center, virtualization, storage, or database administrator teams.
But What About DevOps?
DevOps is all about enabling teams to release often and reduce bottlenecks. This is impossible without automated build or testing.
Automation has been the fundamental pillar of DevOps since its inception. And it works.
In the 2021 State of DevOps Report, an overwhelming majority (97 percent) of companies that are advanced in their DevOps journey agreed that automation improves the quality of their work.
But then some criticize DevOps as a justification for the “firing of a lot of people”. This opinion gained traction because of the general interest in how automation impacts jobs outside of IT and society as a whole. In case you’re wondering about that, the World Economic Forum estimates that by 2025, technology will bring about at least 12 million more jobs than it wipes out.
You need someone who can align this development culture with all the other processes happening in the business. And develop cloud-native solutions. And make sure that key customer services actually get better thanks to all that automation and orchestration.
All of the above is hours of thinking that automation won’t replace. But it will buy you more time to do it.
Cloud Automation Isn’t Going to Replace Your Job – It’s Going to Transform It
If you’ve ever been in charge of managing your cloud spend, you probably know how much time and effort goes into it.
Here’s a typical cost optimization sequence most of our clients followed before starting to use automation:
- Take a snapshot of your cloud costs at a specific point in time.
- Allocate costs to teams or departments to understand where they come from.
- Identify usage and growth patterns to clarify which of the costs make sense and which ones are good candidates for optimization.
- Examine your infrastructure in-depth to check whether you could eliminate any of your costs (like abandoned projects, shadow IT projects, or unused instances that were left running).
- Examine the virtual machines and other resources used by your teams to check for overprovisioning or underutilization.
- Come up with an optimization plan and reach out to the engineering team for buy-in and confirmation.
- Also, do your best to convince engineers that costs are just as important as performance when it comes to cloud resources.
- Once everything is approved, implement the infrastructure changes.
- Now it’s time to think about the future. Analyze your requirements and start planning how you’re going to get extra capacity or remove resources you’ll no longer need.
- Take a look at your cloud provider’s offer to learn about their pricing, forecast your costs, reserve capacity upfront, or negotiate volume discounts with the vendor.
- Establish rules for teams to follow to use the discounted resources you bought to the fullest.
- And then hope that your cloud bill is as high as you expect it to be at the end of the month!
It’s clear that allocating, understanding, analyzing, and forecasting cloud costs takes a lot of time.
And it’s not something you do once a month. To achieve reasonable savings manually, you need to constantly apply infrastructure changes, spin up new resources, and many other things that allow building a cost-efficient infrastructure that responds to the current demand.
An automated cloud optimization solution takes all of these tasks off your plate:
What Can You Expect from Automated Cloud Cost Optimization?
Typically, an automated solution will take care of these tasks:
- Selecting the most cost-efficient instance types and sizes to match the demand of your applications,
- Autoscaling cloud resources to handle spikes and drops in demand,
- Removing resources that aren’t being used to cut costs,
- Automating Spot instance usage by handling potential interruptions gracefully,
- Helping you to avoid costs in other areas – automating storage and backups, security, and various changes to configurations and settings.
Most importantly, automation means that all of these changes are applied in real-time. This is how you master cloud cost optimization which is a point-in-time exercise.
All of this gets done without adding any repetitive tasks. The solution keeps an eye on your application and the available resources 24/7 to identify new savings opportunities and scale things up or down instantly.
Don’t Spend Time Micromanaging Your Infrastructure
Manual cloud cost optimization methods like cost monitoring and reporting steal your time away from doing more interesting stuff. Automated cloud optimization is here to transform your job into one free from the burden of doing repetitive tasks you don’t enjoy.
Published at DZone with permission of Laurent Gil. See the original article here.
Opinions expressed by DZone contributors are their own.