It may just be the battle of the century–Finance vs. DevOps. On one side, we have DevOps engineers who love speed and agility. On the other, we have finance practitioners who love careful planning and budgeting.
The battle often takes place on the cloud. DevOps–with their need for speed–often buy up new cloud resources on the fly to support their continuous flow of new customers and onboarding. These resources cost the organization money, especially if they are not being managed properly. And that’s where finance gets peeved. The cloud has a complex pricing structure — and if resources aren’t planned, budgeted for, and managed, cloud bills can get out of control and negatively impact ROI.
So can these two seemingly opposite pursuits coexist–or even better, be friends?
To get to the bottom of this workplace clash, let’s dive into the mindset of each of these key professions and explore possible areas for compromise.
DevOps and the need for speed
Speed plays a central role in DevOps culture and philosophy. In fact, the Agile Manifesto, DevOps’ founding document states:
“Our highest priority is to satisfy the customer
through early and continuous delivery
of valuable software.
Welcome changing requirements, even late in
development. Agile processes harness change for
the customer’s competitive advantage.
Deliver working software frequently, from a
couple of weeks to a couple of months, with a
preference to the shorter timescale…”
According to this statement, one of DevOps founding principles is to create valuable software quickly, continuously improving as they go along. DevOps engineers often measure themselves on how quickly they can release new features and how many updates are made in a certain period of time.
This does not mean, of course, that quality is compromised. The commonly used DevOps best practice of CI/CD (continuous integration and continuous deployment) ensures that changes in code are delivered reliably, on a regular basis, and at the highest quality.
So if quality isn’t compromised in this quest for speed, something’s got to give right?
Oftentimes, it’s the cloud bill. And here’s why:
Say you need to quickly release a new product or feature to effectively compete in the market. DevOps will work fast to create it, often without considering costs for compute and storage.
As you onboard new customers for those new products and features, your application compute requirements will change. But predicting these needs 1-3 years in advance is almost impossible. Afterall, how do you know how many customers you’ll get? This makes taking advantage of cost-efficient RIs and SPs a no-go. And as a result, you end up with low savings coverage and paying for costly On-Demand instances.
Finance: They work hard for the money
The goal of finance departments is to manage cash flow, plan budgets, contain costs, and help an organization stay or become profitable. Unlike DevOps, planning is a key step in their workflow as they constantly analyze, evaluate, and track costs of the organization.
Though most finance teams do not have technical expertise and therefore, may not understand product requirements, what they do understand is an AWS bill that is growing exponentially and harming the company’s ROI. Afterall, money talks.
For this reason, many organizations are implementing a specialized FinOps department which combines technical, financial, and business expertise. But in organizations that lack FinOps, the finance department must work together with DevOps to manage cloud costs.
This is quite the challenge as cloud vendors like AWS have complex pricing structures that require careful architecting, planning, and allocation of resources. Ideally, plans should be made 1-3 years in advance so organizations can take advantage of lucrative deals offered by pricing models like RIs and SPs. In finance’s dream, DevOps would be able to predict their needs ahead of time so the organization can avoid using costly On-Demand Instances. But that dream is easier said than done as application needs fluctuate.
To get on top of cloud costs, finance requires all stakeholders to take a step back, optimize cloud architecture for financial success, and plan and allocate as many resources ahead of time as possible. Finance would also need DevOps to take ownership over the resources they create, constantly monitoring usage, getting rid of idle resources, etc. Of course, all of this planning, monitoring, and management could interfere with DevOps agility, especially if it’s a smaller team. Hence, the tendency for tension and the finance vs. DevOps divide.
But is there a solution?
Resolving the DevOps-Finance Divide
At the end of the day, finance vs. DevOps does not need to be a battle. After all, both departments want the same thing–for their organization to be successful. DevOps does this by building quality, customer-centric products and features fast in order to deliver more value and increase business. And finance does this by ensuring the organization does not spend more money than it has.
Compromise is needed. DevOps will need to plan their resources better, no matter how painful it may be. And finance will need to make an effort to try and understand product requirements, so they can help DevOps come up with viable and cost effective cloud solutions.
Both departments need to work together to track cloud costs using a BI tool that is either native to the cloud provider or offered by an external vendor. This will help them find instances that need to be right sized, detect idle resources, eliminate waste, see opportunities to buy and sell RIs SPs on the AWS marketplace, and track and usage overtime.
For organizations looking for a silver bullet, AI and automation are just what the doctor ordered. If you implement tools that automatically delete idle resources for example, your organization can save millions of dollars depending on your use case. Looking into the future, it’s certain that AI will play a significant role in managing cloud resources as it will make it humanly possible to to maximize cloud efficiency at a larger scale.
We are already seeing the impact of automation in cloud management. For example, Renovisor automatically buys and sells RIs and SPs according to real-time application needs. As a result, DevOps engineers no longer need to forecast usage or manually sell RIs and SPs. Instead, they enjoy savings of 45% with zero effort on their end–a real win for DevOps!
And remember, when DevOps wins, finance wins because we’re all just one big team anyway. The battle of finance vs. DevOps is finally solved.