Tom deMarco and Timothy Lister wrote a superb book called “Peopleware: Productive Projects and Teams”. It's a book that has had a profound influence on software management. It is a book you must read, and read again. The premise is clear: the real issues in software development are human, not technical.
People want to do good work
When I first read this book, one of the statements that hit me hard was the belief that people want to do good work. To be honest, I've been sceptical about this at times — especially when dealing with a government call centre. But we all want to succeed at what we do. Despite academic criticism, Maslow's hierarchy of needs resonates with us. We have a need for esteem based on real achievement. We have a need to realise our potential.
I believe that everyone wants to do good work. In the past year I've recognised it in the behaviour of the man who works in our garden. It doesn't matter that he is only semi-literate and working in a menial job. He likes to learn to do new things, enjoys when he can initiate a task, and blooms when praised.
But I also think that we don't always believe people are trying their best. (And I don't just mean government employees.) Sometimes, deep down, we don't believe it of our own people. And I've been wondering why.
Pandemic jam in the two-way street?
Trust is a two-way street: you expect people to trust you, and you want to be able to trust them. In a work environment, trust is based on confidence: confidence that the other person will do their best, and act with integrity.
The pandemic has shown us that people can work from home. But it hasn't always increased trust. In some ways it may make trust a little harder. Without the usual cues of seeing and hearing people at work, we may wonder if they are putting in the hours. And in many jobs, it's difficult to judge from the outcomes. This is especially true during the pandemic, when there are so many new factors that play a role. And our increased stress levels make it easier to be negative and critical.
Many companies try to encourage loyalty through internal marketing. But trust is not built on branding, especially when retrenchment and salary cuts are a reality.
Building trust in software developers
I'm not an HR expert or a leadership guru. I'm sure there are people who teach how to build employee trust, and how to be a good manager.
But I do know that software developers are important. The world runs on software. And bad software affects everybody, from the user to the other developers to the client. If you play any role in the software development process, your work matters. That's why I believe that a code of ethics for software developers is so important.
And that's what builds trust. Not branding or online team games. Trust is built on a shared belief in the importance of the work, and a shared standard of quality and ethics. A sense of shared personal professionalism. And that also needs employers to recognise developers as professionals, and treat them accordingly.
It's not about your process or your methodology. If you want a professional software development team that you can trust, you need to start with the right foundation.
I look forward to your views on this.