Larger software delivery organisations should develop their people by offering secondment exchanges with non-competing organisations.
As a consultant, one of the most startling things I see as I move between customers is the individuality of each organisation’s culture and ways of working. Its assumptions on how work works and how best to produce its products.
Now some organisations are enthusiastic learners and sharers of ideas and practises. They (or their people) go to conferences, they hire from outside enough to refresh their ideas and they are equally relaxed about their people moving on, knowing that keeping that alumni network going offers them all kinds of options and access.
Others however present a monoculture. They have a very fixed idea of effective practise and strongly established heuristics for every situation. Some of this is accidental and just grew that way without challenge, and some is deliberate and explicit. Often it’s a result of learning from a particularly strong experience — positive or negative — and getting stuck there, as the original situation fades into organisational lore.
Some of the examples I’ve seen are:
- No test specialists: all testing is by developers in the team (of developers only).
- Strict separation of duties: no developer may ever run tests – they must always be entirely independent and black box. And if possible, from a different supplier, to keep each other honest.
- We don’t do Test Driven Development. Not now. Not ever.
- Every member of the team has their specialist area of the codebase. We don’t waste time writing documents; if the code isn’t self-documenting, have a face to face conversation with the SME.
- Comprehensive documentation is part of DoD. Ops won’t accept it without it.
- Legal must review everything before it is released, but will not review anything until it’s 100% complete. No early drafts, no designs, only the complete, tested and ready to deploy article.
And so on. Almost every dispute I’ve seen played out in the Software community is represented somewhere. Each of these situations had a logic behind it, and the organisation could quite easily rationalise the policy. And you’ll perhaps note that I’m not giving a value judgement on the individual merits of them. But each organisation was absolutely adamant that this was The One True Way that should be followed everywhere, rather than their own adaptation to their own circumstances.
Providing enough experience to challenge the assumptions and have them examined and validated (or not) in the light of today’s situation is part of the value that external consultants offer. And their ability to learn new things is evolved through practise. But external consultants are expensive. And you really don’t want them as a permanent part of your organisation.
Having a regular rotation of staff in and out as mentioned above can give you some of this. But changing jobs is risky for both employers and people.
So how do you get that cross-fertilisation of ideas seen in real action, beyond being talked about in a blog post or at a conference?
How about this for an idea (outrageously stolen from the academic sector): Why not find non-competing organisation — or several — and work out a secondment system, where a few of each organisation’s technical people spend a few months working at the other place. And send people you want to develop (that’s everyone, right?) and who are going to represent you well, and (crucially) want to take the learning opportunity. The people you get in return will be motivated and capable.
The other organisations could be using a similar technology stack such as mobile apps. They could be a similar size to you, or facing similar organisational challenges. Or you could choose the opposite of all of these things: large companies increasing their Agility could exchange with rapidly growing companies needing more structure simply to see and understand a different perspective and what life looks like on the other side.
When each secondment is over, you get all that learning back, along with people who have had a refreshing experience away from where they have been and will have been stretched to learn new things quickly. Yes, you’ll lose a few of them where they won’t want to come back. But you’ll gain a few too. And if it’s all done amicably, everyone gains a better network.
‘Developers’ in the title means everyone, but with better alliteration!