Complexity And Resilience
This morning I woke up feeling great, full of the joys of spring and ready to walk and garden. Unfortunately by about 11am I had searing pain through my left leg and right arm. Luckily I’m used to this sort of complexity in my life, which I’ve designed to be as resilient as reasonable. I knew that after a flare I needed to expect ‘after shocks’ a bit like a decaying sine wave, so I didn’t walk far from home and hobbled back without the need for a rescue call.
Over the last year I’ve been thinking a lot about resilience at work and at home, which seems critical as we face every more uncertainty and complexity in the world.
I’ve always held that the strategies we develop need to be resilient to the uncertainties we face, but unfortunately they rarely are.
Companies typically develop a vision of the future that’s carefully crafted to be the perfect complement to their desire for order. All of their strategic partners’ products are a perfect match to their customers needs, they assume that their competitors offerings won’t evolve to out-compete theirs, they assume that customers will still want their services and they believe that CIO surveys accurately predict the future.
Vision and strategies are developed that are overly ambitious, the projects to implement them suck in all the investment and organisational bandwidth, leaving very little left for innovation at the small scale, for working with real customers on new and emerging opportunities. Big strategy has little room for reacting quickly and opportunistically, to failing fast when needed and scaling fast when things work.
I’ve started reading widely in this area, and have no fully formed ideas, but the broad framework applied to my working life is starting to emerge:
- Develop or use an infrastructure that allows for rapid innovation, for example Amazon web services provide pre-built infrastructure that allows for rapidly building services to meet emerging needs.
- This infrastructure should be as modular and simple as reasonable. Adding to much capability to the infrastructure constrains innovation and adds complexity (see below)
- Develop relatively simple modular services on top of the infrastructure, that are not overly automated or process constrained up front. Automation should be the product of success it’s not a pre-requisite
- Substitute for over automation and too much process constraint a resilient conceptual architecture with associated broad accountabilities, as scale builds allow teams to innovate and move from good practice to best practice to automation in stages
- Establish small high performance agile milti-disciplinary teams for each broad area of accountability and set them loose, within the constraints of the guiding architecture, include development and operations staff in these teams
- Establish the free flow of information and ideas between teams
- Put sensors (of various types) in place to look for problems and to look for opportunities to develop best practices and automation based on real experience
- Fail fast when problems are found, and scale fast when opportunities are discovered
- Develop capabilities in well defined units that can be tested and ideally used (its great if the dev team can use whet they develop while they develop) before other units integrate with or build on top of them.
- Avoid building a complex system that can only be tested and used when it’s complete!!
- Balance big strategic investments with small emerging technology driven and emerging customer driven experiments
- Don’t impose the use of common infrastructure services, projects with a business need should want to use common services (or not), not be forced to pay a ‘strategy tax’ to use them
- Focus investments and big strategy, best practice development and automation ONLY in those areas where a high degree of stability is expected
- Constantly look for ways that existing services and new services will be disrupted and find new emerging ways to add value to be nurtured
These are very early ideas!
The picture is of a container ship that ran aground on Cleveleys beach a few years ago as a result of a freak wave pushing it up the beach. It was never re-floated but at great expense had to be unloaded, cut up and loaded into trucks. A great example of the impact of the unexpected.