One of my bosses once said there are two types of IT projects whether developed or deployed: those over budget and those about to be. Indeed, if you read the trends of the last few years, cloud computing is more expensive than most first thought, and it’s been challenging for project leaders to estimate what it will take to build net-new systems in the cloud or migrate applications and data.
Before we get into how to fix things, let’s consider the causes. This is likely your fault since you did not plan well and missed many things that became unexpected costs or delays. Also, there are known budget issues around migrating or developing new systems and how much they cost to operate after being deployed. We’re talking about both.
Not everyone is an excellent planner, but there is a discipline to project management, including metrics and estimation approaches, that most IT projects choose to ignore. They provide a rough estimate of how long and how much money should be needed to do something meaningful in the cloud. Ignoring these guidelines is never good, so let’s learn from our mistakes and improve project planning.
Many of you are thinking “Thanks for the dressing down, Mr. Obvious, but we’re now a million dollars over budget, and that typically ends careers at my company.” What can you do to recover?
Here are a few things to try.
Assess the scope and identify overruns. What factors contributed to the budget overrun? Identify the areas where excess spending occurred and assess if the original budget estimates were realistic.
The result of this exercise should be new metrics. We now know how much it costs to implement cloud computing security for migrated applications and data sets, adjusting for the complexity of the application. Make sure you use the new metrics going forward. I don’t know how often I’ve seen people make the same mistake twice or thrice.
Analyze the usage patterns of cloud resources to identify any inefficiencies. Usually, they are caused by a poorly designed cloud solution not leveraging the most optimized architecture; workloads burn through many more resources than expected from just a bad technology configuration.
The root of this problem is usually lousy technology and configuration decisions, such as picking technology based on personal bias rather than looking for the most optimized solution. You can take more tactical approaches, such as optimizing resource allocation, rightsizing storage, and using automation to schedule and manage resources effectively.
Prioritize critical workloads to ensure budget constraints do not affect crucial business functions. Identify essential cloud services and infrastructure and allocate resources accordingly.
By aligning spending with critical priorities, you can optimize the utilization of cloud resources, reducing expenditures on workloads that are low priority in supporting the business. In practice, this could mean running some things using reserved instances, which are typically cheaper, or even using scaled-down cloud resources, such as smaller processor and memory configurations.
Engage in proactive communication with your cloud service providers to discuss your situation and explore any potential options for cost reduction. Yes, this means begging for a discount. Providers may offer flexible pricing plans, reserved instances, or cost optimization guides since it’s their system.
Also, this may mean that you have to agree to future commitments for cloud service usage that may be out of this budget period. This could be an ethical or policy no-no at your company, so check with the CFO.
Benchmark your cloud expenses against industry standards and use cost management tools (finops) to track expenditures. This does a few things. First, you can identify areas where cost optimization can be achieved, such as utilizing spot instances for non-critical workloads or using serverless computing to reduce (some) infrastructure costs. Second, make sure that your spending is in line with industry standards. If you’re paying 50% more for object storage than the industry standard, something must be fixed.
Consider revisiting the project scope and goals. Can certain features or requirements be delayed or deprioritized to allow for better cost optimization? Reevaluate the project’s scope, aligning it better with the available budget and making adjustments to stay within it.
Maintain open communication with stakeholders, including the project sponsors, executives, team members, and sometimes the board of directors. Provide updates on the budget situation, explaining the challenges and the corrective measures taken. Too often project leaders hide this information from those paying the bills, which is likely worse than the budget overruns. These are hard conversations but they need to occur.
After completing the project, conduct a comprehensive review of the work done, resources used, time to complete, and operational expenses to identify the reasons for the budget overrun. The idea is to avoid making the same mistakes twice.
Learn the lessons and build strategies to avoid similar issues in future projects. By understanding the root causes, you can refine budgeting processes, improve estimation techniques, and implement more effective planning and ongoing monitoring of costs.
Budget overruns don’t drive me nuts. Budget overruns that consistently occur by the same people doing the same things are another story. IT people are the worst at budget (so I’ve been told), but now that we’re out of the early stages of cloud computing and focusing on how this technology can be productive, we need to get it right. Otherwise, no one will trust the cloud—and you, by extension.