When helping software teams to be effective and deliver, we notice their struggles or successes are normally caused by 5 main themes – but often if you asked a struggling team how they could solve their issues, they look at just one, with a blind spot for all else. These 5 themes interfere with each other – for better or worse. If you can improve any of these areas, it will help with the others – but neglecting any area can lead to problems spreading and affecting the others. If you really want to be the best you can be, you need to pay attention to all 5, and direct your energy where it will be most effective.
The key themes are:
- Business value
- Team Dynamics
- Technical Strategy
In the teams we’ve seen who have been struggling, the instinct is often to look straight to technology (not necessarily in a strategic way). Teams often believe that if only they could switch language, or use the latest frameworks or tools, that their problems would all disappear. It’s understandable for people to think like this, it’s normally the thing people have studied the most, where they are the most comfortable. The thing is though that this can be at best ineffective, if not damaging and costly, without giving the expected benefits.
We strongly suggest taking a broader view of the team’s current position, taking all the themes into account. Often it’s easier and more effective to start with the non-technical – this is often under-developed. Changes here can set the team up better to tackle harder things, because they learn to understand why they are doing things, and learn to collaborate better and the best of what the whole team can offer.