FinOps: A burgeoning industry
Cloud FinOps, credit: copilot

FinOps: A burgeoning industry

I spent a day in the office yesterday, despite my entire project team being remote. It was nice to "cross pollinate" a few ideas with people on different teams. I enjoyed a conversation with Christian Avery on Cloud Financial Operations (FinOps for short) in consultancy, and how it really requires a cultural change to control cloud spending - which drove me to do a bit of reading about the state of FinOps today. Some gems that I have learned:

The FinOps foundation define six principles to begin the cultural change to control your cloud spending:

  1. Encourage teams to collaborate on cost decisions. Use incentives, reminders (e.g. alerts) and positive encouragement.
  2. Make decisions driven by the business value of the cloud; economic and value-based metrics can tell a truer story than aggregate spend.
  3. Give individuals ownership over their cloud expenses. Define KPIs for budget, and others such as "5% orphaned resources", "90% of resources tagged". Teams and individuals are accountable, and incentivised.
  4. FinOps data should be accessible and timely.
  5. A centralised team drives FinOps. They can encourage and support best practice, and manage things like rate negotiations to free up individuals to focus on optimisation.
  6. Take advantage of variable cost models. See them as an opportunity, not a risk.

The foundation also create an annual "State of FinOps report", where the results of an annual survey of organisations, globally but with most respondents from the US, are analysed to determine their key priorities in the FinOps space. This year for the first time since 2020, the desire to "Empower engineers to take action" fell from the top priority, to be replaced with "Reduce waste or unused resources". Perhaps this is a sign of the maturity of companies' use of FinOps - they have the skeleton processes in place and can now get to the point of making efficiencies.

The chart showing what actions companies are taking across various cloud resources is quite interesting as well:

You can see that there is no "one-size-fits-all" approach for FinOps across different services; so when a new service such as the various machine learning offerings are used, it seems that a new FinOps approach is required. But really, one would have hoped for a broader "automation" response across the board.

Compute spend is still the biggest focus for FinOps drives, although some companies are now starting to look at efficiencies in storage and database resources.

The skills of the FinOps engineer, whatever they are perceived to be, are in demand - open FinOps-based roles have soared 665%, 296% and 1200%, respectively, in the last three years. Backing this is Accenture's 2023 FinOps report showing that only 39% of respondents achieved their cost savings goals. There is huge scope for FinOps consultants to come in and advise on the organisational and process changes required to reach their goals.

From my own experience in developer teams, it is worryingly easy for a developer to obtain cloud compute, storage and SaaS credits without having to justify, or even to know, the cost. We do see many companies building a Cloud "Self-Service platform" above the AWS/Azure/GCP cloud interfaces, to try and allow their development teams the freedom to make use of cloud compute whilst still maintaining some control on spending. I think the FinOps report shows us how well this is working - it's a great step in the right direction, but is really only at the data-gathering stage to get a handle on spending rather than at a cost-reduction stage.

I think there are some further benchmarks that could be introduced to help people get to grips with the value of their cloud spend:

  • Does your development environment cost more than your production environment? For many companies this is a definite "Yes", and is a clear flag that savings can be made.
  • Do your non-production cloud compute costs drop to 0 at nights and weekends? Barring the odd automated test, they really should do.
  • Can your teams deploy to the cloud without using an automated pipeline? If the answer is Yes, you'll end up with orphans and services in "unknown" statuses which cannot be torn down. The principle of least privilege should apply to all services in the cloud.

Again, though, these simply help you to get a handle on what you are currently spending and whether it's too much, rather than actually reducing the cost. Going back to the six principles defined by the FinOps foundation, the interesting part of FinOps over the next year is going to be in how companies incentivise and motivate teams to follow the principles. Most likely to succeed will be a kaizen approach, particularly perhaps "Point Kaizen", where whenever someone discovers an orphan cloud resource or a non-ephemeral development service, they stop what they are doing and get rid of it there and then.

But what will incentivise people to do this? Can we monetise FinOps? Perhaps we can learn from some of the green initiatives used to reduce our carbon footprint. Cloud compute trading, where teams have a quota and can "sell" unused compute back to the parent company in exchange for bonuses? Cloud compute taxes, whereby the teams' cost of cloud services goes up at night and outside of hours when it really should not be used? Whatever the strategy is, it will be better implemented at the individual / scrum team level, in order to continue to allow teams full autonomy to take advantage of the cloud.


要查看或添加评论,请登录

社区洞察

其他会员也浏览了