Dr. Maneesha Asundi
Senior Principal IT Product Management at Mr. Cooper
By Maneesha Asundi
Beginning with the Cost Allocation capability, our work in implementing the FinOps Framework organically led to developing other capabilities such as Managing Anomalies, Decision and Accountability Structure, Forecasting, and Budgeting. As we matured in the cloud journey, we witnessed a transition from manual execution of these tasks to their current state of automation.
Billing information from multiple clouds and on-prem is ingested daily on a common BI platform. Each Cloud Service Provide has a billing API that sends respective attributes in the billing data. So for example, the Azure Billing API identifies Subscription Groups, Resource Groups, Tags, along with the cost; the Google Billing API provides the Project ID, Service, Labels, etc..
Mandatory fields in the tags / labels of our terraform scripts when workloads are deployed make it easy to identify the individual department that incurs the cost. However,we needed to get a granular view of cost allocations to better manage our cloud expenditure and determine the value of our cloud investments. We used the following fields for further breakdown.
These are standard fields in Azure and Google that may or may not be applicable to your organizational needs:
|Function||Azure Field||Google Field|
|Department||Subscription Group||Project Name|
|Team||Resource Group||Project Name|
Allocating costs to specific departments was not sufficient to understand the business value of the cloud investment. The costs rolled up to a department and did not provide deeper insights into the cost drivers.
Secondly, excel sheets used for noting cost allocations had become obsolete. Some of the costs continued to be attributed to projects that did not reflect the changes in the business for these allocations.
Lastly, some teams created their own Power BI reports to slice and dice data in their unique ways and these were not accessible to others in Finance, Procurement, or even within the department. Hence as with many organizations, we faced the challenges of reporting inconsistency.
We needed a single source of truth for cloud financial management and decided to use the BI tool that ingests billing data daily. An additional mapping in the BI system identified the team within the department whose projects incurred the cost. When a new Resource Group or Project is created in Azure or GCP, that line item goes into an “Unassigned” bucket within the Department. It automatically triggers an email alert notification to update the mapping sheet. This way we have been able to account for cloud costs much more accurately.
Cost visibility has also helped us manage our resources more efficiently and augmented the following FinOps capabilities.
Currently we are exploring the AI capabilities of the BI tool to automatically provide forecast adjustments so finance teams can use that information in almost real-time. Our organization is additionally aiming to expand these processes to other teams, thereby establishing robust cost allocations and harnessing other capabilities that emerged as a byproduct of this sound approach.