There are many leadership roles in the software industry, such as Team Lead, Senior Developer, Architect, Technical Lead, Manager, and many more! This article is for all those readers who really like to lead the team towards success.
When I first started programming, I always had one goal to achieve, that is, just to deliver the assigned tasks. It was easy. But unfortunately, we cannot develop large scale applications alone, we need a large team. Even in this scenario, we still have a goal to achieve, however, now we have a lot more people that we need to think about. Here comes the real challenge!
Everyone knows what the goal is, conceptually. But in reality, what happens is over time, people start going in different directions!! Therefore, this is one of the areas that a Tech lead should concentrate on. For example, if 10 people work on a code base with a different attitude and different understanding, it will become very difficult for someone new to understand the code base!! He/she will be lost!
So, the solution is - the Lead should make sure that at the end of the day, the entire code base should look like it was written by a single person. In the IT world, we call it "consistent code". So, being a technical lead, our responsibility should be to train and direct people towards writing a consistent code and reaching that goal. Now, do you think it really happens in reality ? NO, but the bottom line is the technical lead should make sure there is consistency in code development by everyone in the team.
Here are a few points I feel the Lead should keep in mind, along with the above activity.
- Career growth for team members
As a lead, help team members to keep in touch with latest technology. Motivate the team to obtain certification in technology, and make sure you also have a number of certificates in your bag :). Keep sending useful hints, article links etc. related to current tasks. - Diversity
It's always important to value the diversity of the team we have. If a group of people work by themselves, it won't make any sense. The Leader should always focus on making people talk to each other and integrate their thought processes. As long as we have trust between each other, there is no looking back! The team will succeed. - Plan for Brown Bag sessions
Brown-bag session refers to an informal meeting, training, or presentation that happens at the workplace. - Plan for Pair Programming
Always try to see if pair programming works for your team. If yes, then go for it. - Join hands for coding
One of the elements of an effective lead is, programming. Generally at-least 30% of the time of a lead must go in coding with the team.
Most importantly, never expect someone to be outstanding in each and everything he/she does. Everyone has their own skill sets; so make sure to use them in the right place. If someone is good in JavaScript and not so great in C#, then do not assign them the task of writing C# Server side code. Try to make them contribute on client side logics.
Let's move towards advanced processes like Agile!
Now, what if you are following the Agile process ?

Purushottam RathorePosted May 23, 2017, 8:55 AM
Good article. all points are absolutely correct.
Satyaprakash SamantarayPosted May 2, 2017, 1:47 PM
Nice,..............