Jack Vanlightly

Team Leadership

AgileTM vs Real Agility - The Fight Is On

This series is about agile. Not AgileTM, not Big A Agile, not the type sold in three day certificate programs, not the nice neat packaged set of rules Agile, not the type mandated from above, not the religious kind.

No... this is a series about real agility. An idea, a concept that is more than a set of rules and roles. This is my contribution to help my fellow software developers out there, struggling against the frankly terrible practices being carried out in our industry in the name of Agile. This is a series about taking the power back into the hands of the real experts, the software developers. That is where agile began after all.

The Freedom Quadrant

What is it about programming that most programmers love? Creativity, problem-solving, analysis and critical thinking are just a few. However, when a senior developer explains to a junior, to the letter, how to implement something, we are taking away those great things about programming from the junior and we are taking away the opportunity for learning. But that doesn’t mean that we should give free rein to anyone in the team to implement solutions as they wish. It all depends on the level of the developer and the complexity of the problem/solution space.

"We"

As a team leader you are directly responsible for the moral and attitudes of your team. One of the most important things you can do is strive for an attitude of team positivity, comradery and togetherness. If you get this right then you are on track to having a successful team, get this wrong and no matter what else you do you’ll hit a wall and you won’t be able to progress. Not to mention that working in a team that likes each other and believes in what they do is really fun and rewarding.

Make mini technical leads

In a previous team of mine we created mini tech leads, this entailed taking a mid-range developer and making them responsible for a junior. So that means the mini tech lead is the first port of call for the junior when they have problems or questions. Mini tech leads need to perform code reviews with the junior and work hard to iron out early problems. The technical team lead coaches the mini tech lead and reviews the code reviews of the mini tech lead. The responsibility of the team lead has only changed in that they are now coaching a select few on technical leadership. 

Stop time wasters and protect your knowledge sharing culture

As a senior engineer or a technical lead you need to be there for your colleagues from mentoring to helping them out with obscure problems. If done right it can make your team a lot more productive, can help your career by showing management that you are an effective leader and is generally rewarding. If done wrong it will harm your productivity and spoil junior colleagues by creating dependence behaviour.