Or proof the organization mindset is flawed?
Is someone named Tech Lead in your team?
Is your company putting a Tech Lead in each teams?
What’s your thoughts on the role?
I am deeply convinced that having Tech Leads is a fundamentally bad idea, as I already mentioned in the end of my previous post about some common wrong Scrum implementations.
How to subtly fail at implementing Scrum
Thanks to the Scrum Life community for making me think!
Here is how I try to convince people of my view:
Let’s say you have a good Tech Lead.
She’s doing an awesome job on the team, helping the team as a whole, but also individual members of the team to become amazing.
Now let’s say that she is still on the team, yet you have no Tech Lead role in this team. What would happen?
Well, she would do an awesome job on the team too. I’m pretty sure that she would help the team as a whole, but also individual members of the team to become amazing — without being a Tech Lead.
And now let’s say that you have a bad Tech Lead.
As a Tech Lead, she’s holding back the team, and most things go wrong. The team won’t self organize.
And what if she is on the team, but without the Tech Lead role in the team?
Well the team might do great. The team might self-organize anyway. And maybe even that she would become better thanks to this team.
- Good Tech Leads are great team members who would do a great job even when not Tech Leads
- Bad Tech Leads can completely disrupt or even kill teams while the same people could become not-so-bad team members without the Tech Lead role
Having a Tech Lead is a useless bet.
What’s wrong with the Tech Lead role?
Mainly two things:
- It’s making self-organization harder
- Everybody on the team must behave as a “Lead”
Self-organization is harder around a hierarchy
How the development team is supposed to self-organize when someone is already appointed Tech Lead?
Isn’t the Tech Lead some kind of implicit boss of the team?
We’re back to my comment about whether he’s a good or a bad Tech Lead. A good Tech Lead will foster self-organization… While a bad Tech Lead will prevent it. Why not skip the Tech Lead role completely and let the team self-organize?
You need more than one “Lead”
Plus, is one “Lead” enough in the team? Why don’t you have several of them?
From my experience, the best teams I ever worked with had more than half of their members showing a leader attitude, providing a massive amount of momentum to the whole team, and displaying an awesome attitude. Were they Tech Leads? Well, they certainly would make awesome Tech Leads. But they weren’t on this specific team.
And that was great for them not to be Tech Lead, because having most team members acting as leaders was so much more awesome than having a single Tech Lead.
And what about the cross-functional teams?
One more example than having a single Tech Lead is counter-productive: what if your team is a truly cross-functional team?
You need everyone to behave as a leader in his specific area.
Again, you don’t have a single Tech Lead; everybody on the team is a leader.
It is simply that the leader is not the same depending on the situation. Sometimes it is all about the backend; at other times it is all about the design; and at other times it is all about testing.
The lead role moves smoothly from person to person depending on what the situation calls for.
Overlap with the Scrum Master role
By the way, is this Tech Lead role overlapping with the Scrum Master role?
- Technical expertise is best served by individual members of the development team. As previously mentioned, the leader depends on the specific expertise required by the specific situation.
- Fostering self-organization, ensuring that continuous improvement happens, and making sure that everyone feels good on the team are common duties of the Scrum Master.
And by the way… Scrum does not recognize this role.
From the Scrum Guide :
• Scrum recognizes no titles for Development Team members, regardless of the work being performed by the person;
• Scrum recognizes no sub-teams in the Development Team, regardless of domains that need to be addressed like testing, architecture, operations, or business analysis; and,
• Individual Development Team members may have specialized skills and areas of focus, but accountability belongs to the Development Team as a whole.
Scrum Guide | Scrum Guides
The official Scrum Guide provided in HTML format on the web.
What do you need, then?
You need awesome team members. You need people with a great mindset, people able to lead others — and maybe more than one in the team. You don’t need the specific Tech Lead role.
Tech Lead: proof of a bad mindset
Finally, I’m convinced that the Tech Lead is an organizational bad smell.
Self-organization is frightening. No hierarchy, really?
It is so comforting to have a Tech Lead in the team…
You know, only one name to remember.
The Tech Lead will make sure that everything works out.
No need to hire carefully every team members, or just let the Tech Lead handle it.
Plus if things go south, you just have to call the Tech Lead, he’ll explain everything.
Oh yeah, and if you need something special, or if some emergency arises, the Tech Lead will handle it.
Let me translate all of this:
- The Tech Lead removes the hassle to actually get into the team stuff
- If we’re looking for someone to blame, we can blame the Tech Lead
- If we don’t want to follow the process (that is, Scrum) then we just have to ask the Tech Lead
How practical Tech Leads are!!!
What it should be like instead
Compare this to working with a Scrum by the book team:
- We must be actively involved in what the team does
- The whole team is responsible for everything as a single entity
- We must strictly follow Scrum rules, starting with not adding work in the middle of the Sprint
You might be thinking…
What a headache!
That means I would have to get knee-deep into the trenches! I can’t: I have so much work to do already… You know, executive meetings and stuff…
Well… Yes. You have to get involved into the team, to understand how they work, and to stick with their processes. That’s how Agile is supposed to work.