This week we introduce you to Modern Cloud.
Modern Cloud is a phrase that we use a lot. It's hard to explain what it means without thinking 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. So you've got a top of the range data centre, but you're not actually benefiting from Cloud.
I spoke to a company a year or two ago, who had a five step maturity model for the cloud. And they asked me about serverless first. And when I responded they said: 'Oh, you've just described step seven!'. They hadn't moved beyond modern cloud practices.
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 that you have at your disposal to meet those needs. As well as choosing the right tool for the job. So a well optimised EC2 instance, for this particular use case may be perfect. You can justify the additional runtime and operational burden, because you have good situational awareness about your tech stack and the choices you're making. Teams that are operating in the modern cloud have that situational awareness, and they understand the trade offs for the technology choices they make. They can justify that all the way up the chain to the actual needs of the users.
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 that means we go back and continuously look at it, fix it or patch it. We haven't thought about the longer term or what its role is other than for this solution. You can have an EC2 container with operational capability around it. We're patching all the time, 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?
There's a mindset element which comes from teams working in a modern cloud way. A modern cloud team can do everything themselves. They rarely need to go outside their team for help. They're ‘fast flow’. There's very few handoffs, You still need, not necessarily a DevOps team, but you need enabling teams.
There's a good train analogy. The train driver and staff in the train 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. There's other things 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. Observability is critical for the team's to know how they're delivering with good radiators and good dashboards with frequency, mean time to restore and your lead time for change.
It's worth going through the flywheel that we talk about in our upcoming book. In the flywheel, we look at 'Purpose' which is the strategy of the business/company and 'Challenge' which is 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 ‘modern cloud’. Whether you're a CTO, an architect, or a developer, it's good to understand the art of the possible. What does good actually look like? What can we actually do? And the direction and pathway towards that. You don't arrive overnight.
Serverless Craic from The Serverless Edge
theserverlessedge.com
@ServerlessEdge