You have been asked to start a new team that will be developing software. You know the team will start small with 8 or so people, but could easily grow to 50 or more over time. You’ve been asked to establish the “ways of working” for the team. Given that Agile is so prevalent in the software industry you’ll probably choose to base much of the team’s working practices on agile. So, which of all the varieties of agile is the best? Should the team do agile training? How do you know if you’ll need an agile coach? Can you be excellent without an agile centre of excellence?
Although I’ve attended agile training courses, enjoyed many agile conferences and read countless agile articles, some of the best advice about how agile practices comes from Bruce Lee. Before we get to Bruce; we should clarify - what exactly is Agile?
Agile has been a popular way to develop software ever since 2001, when it was published as the “Agile Manifesto”. Since agile itself is a broad set of principles, others have sought to codify in additional detail how it can be applied to teams building software. One of the earliest agile frameworks called Scrum (named after the rugby scrum) popularised the concept of a Product Owner that works with a team of developers to deliver a backlog of work in time bound periods called sprints.
While Scrum answered questions about how teams should manage their own work it didn’t have answers for how work should best be managed across teams. To answer these questions a new enterprise scale framework was created called SAFe (The Scaled Agile Framework).
In addition to Scrum and SAFe there are a multitude of other practices and frameworks designed to make teams more productive. Teams can choose from Kanban, various flavours of Lean, Extreme Programming (XP), Scrum@Scale or a combination of them all. Indeed if you have a consultancy working with you on your digital transformation, a new agile “way of working” will be a key transformation ingredient. The use of these agile practices has become particularly tricky within large companies. Enterprises love to standardise everything, creating agile centres of “excellence” and hiring teams of agile coaches to help teams better understand the one true agile path.
With so many potential choices, adopting agile can be confusing. This is where Bruce Lee comes in.
Now you may wonder how someone that lived well before people started to stand in circles to share their daily status updates could give advice on running an agile team. It’s a fair question, but first we need to go back to 1964. We are in Chinatown in Oakland California and Bruce Lee has just fought Wong Jack-man in a controversial private match.
Although Lee “won” the match, he was disappointed as he felt the fight had taken too long and he had failed to reach his full potential using his Wing Chun techniques. Bruce decided that the traditional martial arts techniques had become stale and had little to do with real world combat. To resolve this he created a new martial art that was designed to be more flowing and adaptive called Jeet Kune Do or the Way of the Intercepting Fist. The basic principles included: simplicity, directness and freedom (the form of no form). Jeet Kune Do required the mastery of both physical techniques and the associated philosophy. Students in the martial art needed to train both physically and mentally.
And thus we come to our first of three Agile lessons from Bruce Lee.
“The individual is of first importance, not the system. Remember that man created method and not that method created man, and do not strain yourself in twisting into someone’s preconceived pattern, which unquestionably would be appropriate for him, but not necessarily for you.” - Bruce Lee.
Agile isn’t the search for the perfect process. It’s the discovery of how to optimise interactions amongst people.
It can be compelling to look to other companies for answers on how you should run your agile practices. There’s no shortage of success stories from companies to follow including Lonely Planet, Google and ING. One popular agile success story comes from the music streaming company Spotify. Their “Spotify Model” of agile has become so popular that many other companies have also applied the same model. The problem is that even Spotify don’t use the Spotify model.
“Even at the time we wrote it, we weren’t doing it. It was part ambition, part approximation. People have really struggled to copy something that didn’t really exist.” - Joakim Sundén, agile coach at Spotify
Spotify, by the way, has enjoyed one of the highest employee satisfaction scores in the tech industry. So they have done many things worth learning from. Even so, implementing their “Spotify model” from 2014 probably isn’t one of them.
Any Agile framework, method or technique should help your team perform better and be more productive. Training is a great way to quickly learn many new techniques. Having experts to guide you can bring years of experience to quickly build skills and diagnose issues. Ultimately though, the feedback from your team will be the most important factor in your success. Are there too many set meetings? Do they run too long? Do the priorities need to be clearer? Only by experimenting inside your team will you be able to discover the techniques that work best for your team. Don’t assume experience from outside should be blindly applied without testing it in your own circumstances.
“Again let me remind you Jeet Kune Do is just a name used, a boat to get one across, and once across it is to be discarded and not to be carried on one’s back.” - Bruce Lee
Even though Jeet Kune Do practitioners learn particular martial arts techniques they are not the focus of the training. The key to mastering Jeet Kune Do is through continuously learning, improving, adapting, and growing.
Continuing to adapt can easily be forgotten as we become more successful over time. We can think that we know the best way of doing things and expect that our experience can be universally applied. We fall in love with a particular tool or a technique that has been successful in the past, forgetting the unique journey that made that possible. Yes, that boat was great for crossing the river. Now as we start to climb the next mountain, it’s time to leave the boat behind.
It can be difficult enough to learn from and move beyond previous failures. The ability to objectively examine successes and to decide when to leave them in the past is even more challenging.
“It’s not the daily increase, but daily decrease. Hack away the unessential.” Bruce Lee
In almost any discipline true mastery comes not by adding more, but by gaining the wisdom to know what can be removed.
Without care, agile processes can become bloated over time. Agile can move from something that shapes the work to simply becoming “the work”.
For instance if you… no longer have one board to give visibility to your work in progress because you have 30 boards that slice and dice data in a variety of important ways. Your single burndown graph has become a dashboard that has a dizzying array of vital metrics, line graphs and pie charts. New stories have 25 mandatory fields and must be aligned within a 5 layer delivery hierarchy. Each time a new team member starts they must attend a full day course just to understand your super amazing story points system.
If any of that sounds like your experience of agile then it’s time to ask what is really essential and what can be removed.
“Research your own experience. Absorb what is useful. Reject what is useless. Add what is essentially your own. “ – Bruce Lee
It’s true Bruce Lee may not have been dispensing agile advice at the time. Even so, his philosophies give some valuable lessons about how to improve your team’s agile practices.
Best of luck as you continue on your own journey along the agile path to greater team productivity.
If you are interested in learning more about Bruce Lee check out: