I’ve been going through the book “Succeeding with Agile” by Mike Cohn. I like what I see so far because it talks about the various failures that happen to us all when we try to implement change in our companies and teams.
One specific bit of advice was very interesting, since I see various forms of this in many different teams.
You’ve coached your team into the point where they are, in many ways, self directing. You often see that the team is taking the wrong technical choices (either design choices, tool choices or anything that impacts the team or the application in the long term.
How to you influence the team to take better decisions?
The book states that this can come from two different problems: either all the people in the team are too similar in mind (so no one challenged the decision) or they are very different (so some decision had to be taken by force)
in the case mentioned in the book, the lead had decided to step into future technical meetings (which happen ad-hoc ish) and ask various questions to incite different opinions (she felt people did not challenge each other enough)
- What alternatives have you considered and rejected before accepting this one?
- What could go wrong with this approach?
- What has to go right for this approach to work?
- What could make us regret this decision?
- Is there any information we don’t have that would help us be sure of this?
Again, these seem as really annoying questions, but if a team never challenges itself you can use your leadership to start asking these and see who “bites” and answers these questions, thereby creating some disagreement or challenging the current decision, leading to a discussion that might be very productive leading to a better solution.
Some people might find all this very irrelevant. “you’re the team lead” they’d say. “Why don’t you just tell them what should be the right decision?”
Ah, good question. Because as a team lead your main job is twofold: grow the people in your team, and deliver product. You can’t just focus on one. That’s why you should not automatically give solutions to questions.
Other possible ways of dealing:
- Introduce a new team member into the team with much more experience, power etc.
- Ask hard questions to make sure different points of view have been met
- Change the team’s decision making style
- Encourage Dissenting viewpoints