There’s no question that the cloud offers efficiencies and innovation opportunities that are near impossible to replicate on-premise.
In fact, Amazon reports that companies achieve 31% infrastructure cost savings, as well as 62% more efficient IT infrastructure management, when they move to AWS (and that doesn’t include the many other cost benefits — like improved security and on-demand services).
But the extent of those efficiencies can vary. Simply “lifting and shifting” an app into the cloud (or from any one kind of infrastructure to another for that matter) without some kind of refactoring, usually won’t make it more efficient.
Meanwhile, according to Gartner, “Through 2022, insufficient cloud IaaS skills will delay half of enterprise IT organizations’ migration to the cloud by two years or more. Today’s cloud migration strategies tend more toward “lift-and-shift” than toward modernization or refactoring. However, lift-and-shift projects do not develop native-cloud skills.”
As a result, companies are spending hours and resources trying to get engineers up to speed as quickly as possible.
So how are engineering teams supposed to even know where to start? It starts with gaining visibility into the cost to build and run the applications they’re working on.
Why cost visibility? It isn’t just about how you buy — it’s about how you build.
If you were to look at AWS’s basic cost optimization recommendations, they encourage you to buy smarter for higher discounts. You should buy infrastructure up front with savings plans. You should turn off what you don’t use. You shouldn’t buy instances that are bigger than you need.
Those are all good things to do. But if that’s all you’re doing to optimize — you’re missing a huge opportunity.
The promise of AWS — the story that’s sold to every executive who makes the leap to the cloud — is that you should be able to scale your infrastructure perfectly with your customer activity. In other words, your infrastructure should be highly available, because you have unlimited scaling power, while your costs stay in check because you can scale down when you’re not experiencing any traffic or utilization. That’s the theory.
But in order to achieve that dream, applications need to be purpose-built to do that. With next generation services, like severless or Kubernetes — there are even greater opportunities to achieve on-demand infrastructure nirvana, but it requires thoughtful architecture and specific patterns. Just ask the engineer at cardgames.io who ported his app into serverless and was shocked when it was 8x more expensive.
When you’re in the middle of a migration, you have the choice whether to port your applications over, blind to the cost to run them — or thoughtfully optimize their architecture to take advantage of the scalability and efficiency of the cloud. If you’re interested in the latter, keep reading.
Start by democratizing cost data to engineers working on the migration.
The key to a smooth and cost-optimized migration isn’t just about cloud financial planning or a fancy report — it’s about a cultural transformation, which starts with democratizing cost to the engineering organization.
The value of a fast feedback loop is well understood in DevOps. High performing engineering teams have all kinds of alerts and context built into everything from their CI/CD pipelines to their incident monitoring programs.
It’s also well understood that every broken build or PagerDuty alarm isn’t just about fixing a point in time problem. Every issue is a learning opportunity that gives engineering teams a deeper understanding of what they’re working on, which they can proactively incorporate into their future work.
This kind of thinking has been codified with run books and post mortems, but goes beyond the formal venues — it provides insight that helps engineers make better, day-to-day decisions. And over time those decisions compound.
So what does this look like for cloud cost during a migration?
Cloud cost should be treated like any other metric in DevOps. Engineers should have visibility into the product they’re working on, with the context they need to make sense of it and take action. Feedback should come in fast cycles to the teams responsible — and these also need context.
Here’s an example from a company we work with. An engineer was working on a SaaS app that pulled data from customer environments to report on it in a dashboard. He wanted to provide the best experience possible to the customer, so he built it so that an API call automatically pulled data every five minutes. What he didn’t think about was that each of those API calls cost money. With a fast feedback loop to show him how the cost of his app changed, he was able to see that the API calls were costing a lot of money. Instead, he worked with his manager to determine that for this feature, a nightly automatic data pull would be sufficient, along with a button that allowed the customer to refresh on demand.
Without that fast feedback, the engineer would not have known about the cost of the feature he built — nor would he have been able to make a quick adjustment.
Next, connect engineering decisions to business KPIs.
Since the very purpose of a migration to AWS is about ensuring your bills scale with your business — the next dimension of visibility you need is to understand how your cost aligns with your business.
Instead of simply focusing on how much you spend per AWS account or on EC2 instances, you need to ensure you have visibility into the cost of different parts of your business, like products, features, and customers. This will help you understand where your revenue model is aligned with your cost — and where you might be spending more than you’re making. This will help you make more strategic decisions about where you can optimize — and differentiate between healthy growth and excess spend.
CloudZero can provide you with visibility during a migration.
CloudZero helps you by aligning cost to the projects, features, or dev teams that are meaningful to you during your migration — then gives engineers the context and visibility they need to become cost aware.
Instead of traditonal optimization — engineering team are enabled with cloud cost intelligence that helps them proactively optimize their architecture.
This is core to our belief that cloud cost intelligence is the new way for companies to optimize their cloud spend.
Here’s how the principal technical architect at ResponseTap put it, “When we start projects, we can closely monitor the cost to make sure that they are what we expected them to be — and we can react quickly if they’re not. If we’re building a new service, we can see quite clearly how our costs are affected as soon as it starts to take traffic.”
Learn more about how CloudZero can help with your cloud migration here.
STAY IN THE LOOP
Join thousands of engineers who already receive the best AWS and cloud cost intelligence content.