This has been a week of considerable progress for my current client and of significant personal achievement.
The story is that encouraging and actually getting progress in an organisation that is quite married to bureaucracy and manual processes is extremely hard. This week however I’ve enjoyed some success in this regard.
I can’t imagine I’m the only bright young(ish) mind who’s found themselves frustrated by an employer or client stuck in their ways. It’s easy to become disillusioned watching an organisation talking themselves out of improvement to processes and technology, and instead favouring an old fashioned, labour-intensive, expensive approach for fear of rocking the apple cart.
The truth is if it was up to me I’d bin the lot. Rewrite the entire eco-system in something modern and sexy, then ride out the transitional bumps in the road. That may be a bumpy road initially but its in a better direction long term.
The reality is of course that while that might be ideal from a tech point of view, its not commercially viable. Whatever the gains, customers and management can’t tolerate that sort of thing.
That said, do not underestimate the power of incremental change. An old Blue Peter saying comes to mind ‘think globally, act locally’. In my particular case a little bit of pull request action here, a robust unit testing strategy has made a massive difference and it’s only taken days to start realising the benefits.
Something else happened too. Others have become impassioned about it and are joining the push to improve. The developers on my team have really got into it. Useful alliances have emerged with the team responsible for the source control, continuous integration and deployment systems. The favourable effect on our weekly management report has been noticed and our new approach is being replicated for other project teams and the github enterprise upgrade has been prioritised.
That’s taken about a fortnight. In a traditional organisation, that’s fairly swift movement, and perhaps more importantly the alliances I’ve made open the door to further change.
Its still not exactly bleeding edge but it is a big step on the journey and there’s a sense of momentum and direction that wasn’t obvious before.
I suppose the message to anyone else in a comparable position is that building alliances is key. Start with small changes that will yield demonstrable improvements in quality or cost. Things that everyone – not just developers – can see the value in. Don’t try and change the whole universe upfront. Start with your project and maybe the universe will follow.