What worked yesterday, is painful today, is broken tomorrowPosted on by Richard Lennox
Over recent years we have seen British Cycling dominate the sport. They have maxed out the medal table at both the Beijing and London Olympics, as well as having two cyclists win three out of the last four Tour de France. Ten years ago this wouldn’t have happened. How? It has been achieved primarily through the adoption of the mind-set instilled by David Brailsford; one of improving absolutely everything by as little as 1%.
Looking closer to home, it is our jobs as engineers or product managers, as squads and teams, to focus on ‘winning’, and winning means continually getting better at what we do.
As Skyscanner continues to grow, the shapes and complexity of the engineering and technical challenges change and how we approach them must also adapt at the same rate. Ultimately we find that at scale, continuing to do what we did yesterday is not sufficient. The alternative is getting stuck in a broken cycle that ultimately means we cannot achieve our goals. We can be left with a feeling of wading through quicksand, slowing so that eventually we would sink. To continue growing at scale, it is necessary for us to apply a steady stream of Continuous Improvement to everything we do.
However, in a world where we are striving to maximise the delivery of value to our users and partners, stopping to improve everything is not an option – our time is equally precious. How do we make sure we are working on the right things? Skyscanner has successfully utilised the Theory of Constraints (as one of many tools), to direct our continuous improvement actions to ensure that they have the maximum possible impact.
The Theory of Constraints
Introduced in the book The Goal ,Eliyahu M. Goldratt created the ‘Theory of Constraints’ (TOC) as a way to apply Lean principles while focussing on the most impactful improvements possible.
It is a methodology for identifying the most important limiting factor (i.e. constraint) that stands in the way of achieving a goal and then systematically improving that constraint until it is no longer the limiting factor. In manufacturing, the constraint is often referred to as a ‘bottleneck’.
The path of software (from Idea to IDE to Production experiment to full roll-out and maximised value) flows through a pipeline, a set of (mostly) automated steps. While we at Skyscanner favour people over processes, there is no hiding from the fact there are processes involved in everything we do. As with any manufacturing flow, these processes are subject to the Law of the Minimum, and there is always a limiting factor. After all, we do not have infinite capacity!
TOC helps us focus on reducing and removing the bottlenecks within our processes systematically. Allowing us to focus on the current limiting factor of our process, and by working on removing or reducing the bottleneck, we can be sure we are directing our efforts to make the biggest gains.
Have you ever completed a retrospective action only to realise that you have made little or no impact to the next sprint, and been left scratching your head? Perhaps it is because you optimised something that was not the root cause or constraint on the process. TOC helps us focus on getting our actions right.
This is how one can apply the most basic tenants of TOC to processes.
An action to improve capacity upstream of the bottleneck increases the pressure and produces more unfinished work (waste).
An action to improve capacity downstream of the bottleneck does nothing to reduce the pressure on the bottleneck and is wasted improvement effort.
Only by maximising the throughput through the bottleneck (exploiting it), and putting everything on the cadence of the bottleneck (subordinating to it)…
…Then increasing capacity at the bottleneck (elevating it) do we get significant, impactful improvements.
Often the ‘exploit’ and ‘subordinate’ actions alone can have significant impact. For every improvement we do we will always have a bottleneck, so we need to continually restart the process in identifying bottlenecks.
Application and results
While this simplified introduction to the Five Focussing Steps of TOC highlights how it can be used tomaximise outcomes, it is through clear results that TOC has become a mainstay in Skyscanner’s toolbox. Here are some examples of the successes we have had:
- In Our Hotels Back-end Squad we have reduced bug throughput to < 1 week
- Improved delivery predictability through guided process changes with zero effort
- In our translations processes we have reduced turnaround time from upwards of 2 weeks to < 2 days and are now looking at < 24 hours
- Tripled the velocity in areas of our B2B tribe
Overall, TOC has aided our ability to deliver on continuous improvement and adapting to the pain we feel when, due to our continued growth, our process are struggling. Some squads now operate with every other retrospective being tightly focussed on working their constraints to maximise throughput, and they’re really seeing the benefits.