Skip to main content

5 Steps to Optimizing Cloud Value

Len Greski Chief Scientist
Reading: 5 Steps to Optimizing Cloud Value
5 Steps to Optimizing Cloud Value

In our ongoing series of articles about cloud financial optimization we have discussed the common experiences of customers as they migrate to the cloud, including challenges with the raw infrastructure, legacy application constraints, and inefficient engineering practices. We asserted that organizations need to stop treating infrastructure as a commodity and manage it as a key enabler of the organization’s business capabilities.

If you buy into the premise the next question is, “Yes, but how?”

There are five basic steps any organization can take to improve the return on investment in cloud computing, including:

  1. Implement policies and access control to eliminate wasteful spend,
  2. Move on-premises components to enable decommissioning of infrastructure and repurposing of associated operations staff,
  3. Enable continuous delivery of both applications and infrastructure,
  4. Strategic refactoring applications to improve resource utilization, and
  5. Replace expensive third-party components with cloud provider services.

Policies & Access Control

The first step to getting control over cloud costs is to establish policies and procedures to effectively govern cloud spend. First and foremost of these practices is to configure your cloud vendor’s spend management tool with budgets, alerts and ongoing monitoring of spend. A close second is establishing and enforcing a tagging policy for every cloud asset. The tagging not only aligns costs with the right owners and capabilities, but it also facilitates identification of “orphaned” resources. Finally, establishment of monthly reviews of spend with consumers of cloud resources to regularly ensure that the organization maximizes discounts and moves stable workloads to reserved instances or savings plans.

Decommission Now!

 As organizations move applications to the cloud, their on-premises data centers can become wastelands of underutilized assets. A key step to extracting value from a cloud implementation maximizing what can be shut down. That is, organizations must consolidate remaining on premises systems to fewer servers, virtualize physical servers, merge similar applications, and decommission outdated or underutilized applications without guilt or blame. As the physical footprint of the on-premises data center shrinks, pursue opportunities to release, sublease, or repurpose unused data center space.  Finally, with less infrastructure to manage, organizations can redeploy operations staff to higher value adding activities.

Make Build / Test / Deploy “Free, Perfect, and Now”

This next step, fully automating the build / test / deploy process for both applications and infrastructure, might seem counterintuitive because it is an investment in automating “build” work rather than runtime aspects of the infrastructure. However, many senior executives are surprised when they discover that every production release of an application requires as much as 100 – 300 hours of operations support, first to a development environment, then to one or more testing environments, then to a staging environment, and finally to production.

When we include manual testing labor with the operational labor spend, companies spend thousands of hours of labor moving a release from idea to production. Automating these processes not only improves quality, but also improves the cycle time for each product release. These benefits can be quantified and converted into cash, increasing your ROI on cloud spend.

Refactor to Improve Resource Utilization

Refactoring is the process of making changes to the internal structure of software to make it easier to understand and cheaper to modify without changing its observable behavior. (Fowler, 2019). When a monolithic application is migrated to the cloud, it brings its underlying inefficiencies along for the ride. Organizations can reduce the overall amount of infrastructure required to support an application by identifying components that have either higher use or more variable use, surround them with tests and make the underlying behavior accessible through an API. These components can be hosted on separate servers and autoscaled independent of the rest of the monolith, reducing the total cost of infrastructure for the application.

Replace Expensive Third-Party Components 

Finally, the last step organizations can take to optimize the value of their cloud investments is to replace expensive third-party components with services provided by the cloud vendor, or open-source solutions. High value opportunities for cost optimization include commercial database management systems, data management tools, in memory caching, application containers, and security components.

Security components warrant a special focus because the cloud providers invest heavily in certifying the security of their solutions, and the more a client organization leverages the cloud provider’s security mechanisms and tools, the cheaper it will be for the client to meet or exceed security requirements for its customers.

References

Fowler, Martin – Refactoring: Improving the Design of Existing Code, Second Edition, Addison Wesley, Boston MA, 2019.

Next Overcoming the Obstacles to Cultural Change

Leave a comment

Your email address will not be published. Required fields are marked *