How to use the Cloud and not just a Data Centre
"If you lift and shift to AWS (or any of the cloud providers) and don't modernise your architecture, all you've got is a fancy data centre", Gregor Hohpe.
Modern Cloud is a phrase we use often. It's easier to explain what it means if you think about legacy cloud. Gregor Hohpe has a great description. He says, 'If you lift and shift to AWS (or any of the cloud providers) and don't modernise your architecture, all you've got is a fancy data centre!'. You've moved your old data centre to a cloud-level data centre. You've got a top-of-the-range data centre, but you're not benefiting from Cloud.
Watch our listen to this episode on our YouTube Channel or Podcast
Going beyond 'lift and shift.'
We spoke to a company a year or two ago with a five-step maturity model for the cloud. And they asked us about serverless first. And when we responded, they said: 'Oh, you've just described step seven!'. They had yet to move beyond modern cloud practices.
Continuous style architecture
‘Lift and shift' is where we lift what we have in there, and it's now running. But are you taking advantage of all the capabilities within the cloud space? To take advantage of those things, you have got to operate in a certain way.
There are modern cloud operations that we've talked about in previous episodes, like well-architected and what serverless teams do. It's about being able to take advantage and get into continuous-style architecture, but doing that sustainably and safely.
It's about reducing time to value sustainably, so you're not accruing technical, organisational and process debt. Suppose you're leveraging the modern cloud to its maximum and following a serverless first approach. In that case, you can go fast and sustainably over a decent period because you're not building up technology debt that you have to pay down. If you're in a modern cloud, doing serverless first, and leveraging well-architected, you'll feel the benefits, and your business will see the benefits.
Graduation of IT
Nicole Forsgren called it out in her book: 'Accelerate: Building and Scaling High-Performing Technology Organizations'. The modern cloud is like the graduation of IT into the actual business by moving away from being a department to driving the company forward. You have the speed to drive the company forward and be involved in the business conversation instead of being 'in the wheelhouse shovelling coal'. So it's about the graduation of IT and the change from being a cost centre to value generation. There is an interesting point about modern cloud and technical debt.
You don’t create tonnes of technical debt when you set up well.
With continuous architecture, you're operating in the modern cloud within the modern cloud paradigms like event-driven architecture, leveraging managed services and well-architected patterns, so you're continuously evolving what you're building. You've got great observability when you treat code as a liability and have well-architected teams working in a modern cloud. They're constantly rebuilding, refactoring and evolving to build upon what they've done in previous projects on the platform.
And by using strategies like 'pioneer, settler, town planner' and 'innovate, leverage, commoditise', you tend to refrain from holding on to anything you're not leveraging. You are not accruing a lot of debt. You're continuously modernising, which means you're constantly managing that side of your architecture.
Your ability to adopt new capabilities
Because you're optimised, when new capabilities, features or services come along, you can rapidly innovate and leverage them for differentiating value. If AWS or Google release a new service or feature, when you've managed down your code liabilities, and you're working optimally, you can embrace that rapidly within days. We have examples in our careers. A Cloud Provider announces a new service, and our teams are leveraging it the next day or the following week. When you have an excellent modern cloud stance, that's possible. If you don't, then it's going to take years down the road for you to be able to embrace those new features and capabilities.
That could be the difference between your business and not making it! You can gain a real business differential by adopting a modern cloud approach. You will have a more significant business impact if you're higher up the value chain. You're more visible to the business because you're driving business success.
One of the things that is very hard to define with the ‘modern cloud’ is technology. Some companies using Lambda are in legacy because they're using it wrong. And people are using EC2s that are working in a modern and progressive way. You have to be clinical about your technology choice to use it well.
Wardley Mapping enables the Modern Cloud.
There's no such thing as a good or bad technology choice. It's how you use it to solve your problem. So it's not a matter of saying Lambda is good and a Container is terrible. Many people outside technology find it hard to deal with quickly changing technology. It's nothing to do with the technology choice. It's about how well your teams are planning to use it.
That's where Wardley Mapping comes to the fore by allowing you to understand the users, the user needs and the value chain of technology you have at your disposal to meet those needs and choose the right tool for the job. So, a well-optimised EC2 instance may be perfect for this particular use case. You can justify the additional runtime and operational burden because you have good situational awareness about your tech stack and your choices. Teams operating in the modern cloud have that situational awareness, and they understand the trade-offs for their technology choices. They can justify that up the chain to the actual needs of the users.
Spotting the inertia
We always describe inertia in Wardley maps and spot teams and tech that suffer from inertia. Inertia can be not looking after something within a lambda function, which means we go back and continuously look at it, fix it or patch it. We have yet to think about the longer term or its role other than for this solution. You can have an EC2 container with operational capability around it. We're constantly patching; all our dependencies are up to date, we're getting ready to move mobility, we're always thinking about the next thing, and is this the right piece of kit for the problem we're trying to solve? A mindset element comes from teams working in a modern cloud way.
DevOps going from infrastructure to DevOps to SRE, to 'you build it, you own it, you run it', is complicated because it's changed so much over the past ten years. One of the acid tests is how you talk about DevOps in your company. If you've many handoffs and developers are sitting waiting on other teams, that's a bad sign. A modern cloud team can do everything themselves. They rarely need to go outside their team for help.
The need for enabling teams
They're ‘fast flow’. There are few handoffs; you do not necessarily need a DevOps team, but enabling teams. There are complicated sub-system teams to ensure that your streamline teams or fringe stack teams have all the experience, expertise and capabilities to do what they need to do without talking to anybody. As Team Topologies say, you set up your streamlined teams for success, and they can move without friction, without handoffs or dependencies on anybody. You have given them the organisational structure to ensure they do it appropriately, and the guardrails are the right ones for business.
There's a good train analogy. The train driver and staff can drive the train from A to B. But they still need someone to lay the track, work the signals and repair the train. You're not doing it on your own. Other things are providing other services. Well-architected is a factor as well, which we've talked about. And there's 'time to market' and how fast the team can deliver.
The value flywheel effect
Observability is critical for the team to know how they're delivering with good radiators and good dashboards with frequency, mean time to restore and your lead time for change. The DORA four key metrics are part of that, as well as the well-architected pillar and your adherence to them. Teams should have a good understanding of where they are on that journey. It's critical for teams adopting modern cloud to know their current status and how well architected they are to understand how to evolve and improve.
We talk about how to be effective in the modern cloud. In the flywheel, we look at 'Purpose', which is the strategy of the business/company and the ability to challenge, have an environment for success and the right culture in the organisation. 'Next Best Action' is from a developer's point of view and looks at design patterns, processes and DevOps. 'Long Term Value' is about architecture, data security and sustainability. It's interesting to look through those lenses at the ‘modern cloud’. What's our goal when we talk about the modern cloud? Do you think it is well understood? Or is it changing so fast that nobody knows?
You don't arrive overnight.
Whether you're a CTO, an architect, or a developer, it's good to understand the art of the possible. What does good look like? What can we do? And the direction and pathway towards that. You don't arrive overnight. If you look at AWS, for example, getting people into the cloud, there's a seven-step process. Initially, there's a 'lift and shift'. But once you're there, what next? There are many ways to evolve. It's good to have a conversation to acknowledge and accept it. You must accept it just takes time, and you have to keep your eye on it.
We aim to start sowing seeds by putting questions into people's heads about what is possible and what good looks like. Hopefully, we can shed light on what works, what we have experienced in our careers, the benefits, the pitfalls and the things that are good for when you're going down this path because it's not easy, but it's well worth doing. In today's competitive global landscape, you must leverage the modern cloud properly.
Originally published on The Serverless Edge
Check out our book, The Value Flywheel Effect.
Follow us on Twitter @ServerlessEdge