When teams start a new project in the cloud, budget management is typically far from top of mind. Here's how it typically plays out: the CFO is the one who decides and oversees the overall budget. The product owner sets a go-live date for a project and is laser-focused on keeping everyone in the team on track. Before provisioning resources for this new project, cost isn’t represented in terms of monthly budgets or overall cloud hosting cost expectations - just delivery timelines. Developers need resources and operators are busy trying to iterate and provision for their needs while staying on top of security. The most pressing priority is delivering a secure application by the deadline, not trying to understand confusing, complex cloud services pricing and utilisation.
The costs continue to pile up, unnoticed, until the monthly bills start coming in and the CFO wants some answers on why cloud costs are so unexpectedly expensive. By then the damage has been done, and application teams struggle to identify the source of the haemorrhaging budget because none of the resources have been tagged with useful information. This cycle continues with no one taking complete ownership of costs or keeping track of how much cloud services are eating into the allocated project budget.
Cloud initiatives are expected to account for 70% of all tech spending by the end of 2020 so, as companies spend more, it’s increasingly important that organisations are able to come to grips with confusing cloud pricing and take back control of budgets to optimise spending.
How can you get costs under control?
There are two effective and possible ways that teams can start predicting and managing their cloud costs: 1) Re-think your approach and have a process that adds costs into the design up-front or 2) Utilise a product that will streamline cost data and open up visibility for you.
1. Adding costs into the life-cycle
In order for teams to manage costs on their own internally, budget awareness needs to be built into the application design at the very beginning and remain a priority. Costs should become part of the life-cycle, just as much as delivery.
Upfront thinking of how you want to improve transparency on costs is important. If you are mixing your cloud accounts with a few teams, then you can no longer use the cloud account/project ID as a segmentation point. This means that you will need a rigorous tagging methodology and a good tangible business taxonomy around the cloud service provisioning for people to make sense of what cost is proportionate to what team.
When it comes to knowing about how much you’re spending, who is the right person to be informed? Setting budgets in the cloud to notify the budget holder and the development team is critical to encouraging the right engineering behaviours. Breaking down your annual budget into monthly segments will help set budget targets for the team. All cloud providers have mechanisms for this, but without a good granular tagging structure, you won't necessarily understand how to react to the budget as your insights are lacking on what service is responsible in which environment, for such a large bill.
2. Managing costs with a product
Implementing the above process in a way that will work takes time, effort and upfront thinking on strategic approach. There’s no universally adopted process for managing cloud budgets, and companies need to either prioritise internal management processes or look towards a product to streamline that cost visibility. You can put practices in place yourself to keep teams and budget in check, but it’s incredibly manual and requires continual maintenance of tagging and reviewing. For it to work, teams need to come together to understand cost just as much as the release cycle.
You probably lack those behaviours in your team, and don’t want to put mass amounts of resources into planning, tagging, consumption behaviours, right-sizing and budget management. You want your team to be freed up to iterate and deliver faster. So you reach a fork in the road: Do you want an optimised budget or an agile team?
Developers are traditionally out of the loop when it comes to the financials of a project, but they’re the ones with the skills and understanding of the build to be able to assess where costs can be saved. Using a product to provide your team with increased visibility removes the need for them to spend time researching costs and tagging services. Instead of the typical aggregated view, you can be provided with spending insights for each project to help optimise budgeting and prevent out-of-control spending.
Deciding on the right approach
There’s no universally adopted process for managing cloud budgets, so companies need to either prioritise internal management processes or look towards a product to streamline that cost visibility. You can put practices in place yourself to keep teams and budget in check, but it’s incredibly manual and requires continual maintenance of tagging and reviewing. For it to work, teams need to come together to understand cost just as much as the release cycle.
In understanding the bottleneck for teams, we created Kore Cost to take all of that time and pain out of cloud cost management. Kore Cost, predicts cloud spend and provides a granular price breakdown for projects across AWS, GCP and Azure clouds is the newest feature in our self-service multi-cloud developer platform, Appvia Kore Operate. The increase in visibility removes the need for teams to spend time researching costs and tagging services. Instead of the typical aggregated view, you’re provided with spending insights for each project to help optimise budgeting and prevent out-of-control spending.