Monday, December 9, 2013

Let Them Tie Their Shoes

When my son was growing up, one thing I always tried to let him do as much as he was capable of doing. Was this hard? Yes, it was extremely hard, the hardest thing to do is watch someone struggle when you can easily solve the problem for them. At first when I was in a hurry I would watch him try to tie his shoes and especially if I was in a hurry, I would just jump in and do it for him. This got us out the door, but because I was focusing on him, I would take longer myself or forget things. So I changed my approach and allowed him a little time to get ready. I gave him a little time to struggle and learn, and he became independent. Then when we were in a hurry I would trust him to get ready and tie his own shoes so I could focus on things I had to do to get ready. It was a small investment in time at the beginning that paid off over and over again.

Similarly, the project management team must allow the development team to solve their own problems. If they step in and take control when the team is struggling, the team will never realize their potential. Management will second guess the team and in trying to get things done, shift priorities and focus. They team will become dependent on the managers, waiting on instructions instead of self organizing to fix their own problems. The managers will also have little time to focus on doing their job. They will spend the majority of their time and energy "fixing" the team and have little left to plan for future iterations and remove obstacles.

Am I saying they should just leave the team alone? No, I am not, but helping this way looks different and is more guiding than directing. For instance, if the team is struggling with a technical problem, say they are using a new framework and it's really slowing the team down. Management should provide the boundaries of the decision, we have to ship our product by December, or this is all the budget on this project is pretty inflexible. Let the team work within those parameters. One caveat is that they should be boundaries and not just assumptions, if you force false parameters onto a team they will make faulty decisions.

The project management could then facilitate the discussions, provide resources, force the team to make decisions, but don't tell them what that decision should be. Remember facilitate is not directing, its things like taking notes, rephrasing comments and making sure all interested parties have their say. Its very easy at this point to direct conversations or to inject opinions, so be wary of your language and try to be an observer not a participant. Phrases like "you can't possibly be suggesting we do X" or "are we just being lazy here" have a dampening effect on the discussion. Let the team drive and see where it will lead. Time box the discussions and force them to make actionable decisions, but if you let them work on solving their own problems, most times I think you will see, it is a better solution than you could have come up with on your own.