Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

This question already has an answer here:

What skills, knowledge and talents should a junior programmer aim to obtain in order to be qualified to become a team leader?

share|improve this question

marked as duplicate by gnat, Dan Pichelman, BЈовић, MichaelT, Kilian Foth Aug 9 '13 at 7:27

This question has been asked before and already has an answer. If those answers do not fully address your question, please ask a new question.

    
wrestling skills, most likely boxing. –  shabunc Feb 24 '12 at 20:25
1  
drinking, definitely drinking skills. –  gbjbaanb Feb 25 '12 at 14:54
1  
@gbjbaanb We resolve our problems with Street Fighter IV/Meat Boy drinking games –  blueberryfields Feb 25 '12 at 15:42

5 Answers 5

up vote 46 down vote accepted

The best team leaders I've seen have all been dynamite programmers. But they've all had several other qualities, which are harder to define: wisdom, good judgment, good people skills (friendly and pleasant but not a pushover), dedication, commitment, and — most important of all — knowing how to give credit to others. Such people are natural leaders.

The worst qualities you could cultivate are arrogance, always having to be right, always having to have the final say, being a glory hound, one-upmanship, having a huge, bruiseable ego, never admitting you're wrong, deflecting blame onto others while hogging all the credit for yourself, and, worst of all, competing with the people who work for you.

share|improve this answer
2  
Is it possible to become a leader in a team of programmers without also being the best programmer on the team? –  blueberryfields Dec 3 '10 at 1:43
5  
@blueberryfields: You don't have to be the absolute best, but you had better be top tier. You will have to help people solve, or at least think through, all kinds of problems. As a team leader you're not a god, or a king, but more like a Viking leader: the first among equals. –  Robusto Dec 3 '10 at 1:48
2  
I like this answer specially the first paragraph, there is one thing that I want to add which will be of much use. Make a conscious effort to be #1 or #2 in terms of delivery also. Other skills mostly get overlooked ifyou dont take care of the delivery part. –  Geek Dec 3 '10 at 3:14
    
+1 but looks more like the description of "manager" to me. –  user2567 Dec 3 '10 at 8:35
1  
@blueberryfields I would actually say having the best programmer as a team leader is wasteful. Depending on the team size, having your best programmer(s) spending time answering questions cuts way down on their productivity, when someone with better communication skills can rely on those best programmers to handle the difficult problems. –  Chris Jul 11 '12 at 11:21

Where I work, the title Team Lead is often a completely artificial title applied to developers that don't want to get on the management track and don't want to spend time managing direct reports.

You become a team lead by being the defacto developer on the team to ask when there are technical, business or process issues. And you know you have reached that point when you tell someone on your team No, I don't think you should do it that way and they respect your opinion enough to take your suggestion more often than not. Likewise, you know your manager sees you in that role when you can tell him Have Bob do that rather than Ted, Bob will do a better job and he adjusts the project plan because he knows you know the team better.

share|improve this answer

It will be tough to be the best programmer you are capable of and be a leader, so accept the fact that you may be spending time doing things you don't like to do when you'd rather be coding. Not that you can't become a really good programmer, but eventually, something in your time constraints will have to give. This does not mean you will be a respected development team leader if your code is crap.

Like everyone in power, you'll be tempted to think of them as your minions, but the best leaders are the ones who have something to offer those who are in their responsibility. Be a resource for programming solutions or at least point them in the right direction. Create an environment conducive to software development by making those on your team responsible for their code and run interference on the outside forces threatening your team.

Get in touch with your natural tenancies. If you have an aversion to the following, think twice about this career move:

  1. Teaching other developers and caring about their career development.
  2. Giving critical feedback; sorry, but one day you will have to fire someone (Or maybe you should be.).
  3. Justifying and standing up for your team to the rest of the company. They won't 'just get it'. You have to sell, persuade, and convince. Just thinking of them as stupid will hinder your team. Eventually, you'll have to toe the company line. Admit it to your team and don't come up with some illogical nonsense excuse why doing something stupid is the right thing to do. Hey, I know it doesn't make sense, but do it anyway.
  4. Stick to what you know is the acceptable workload, time expectations, and code quality without being deluded into thinking you use to be able to program for 100 hours straight with no sleep and zero defects.

If you don't want these confrontations and would rather be coding, just be a great programmer and forget about being a manager. Every project/team/company could use a bus load of those.

share|improve this answer
    
Are leaders-of-programmers typically also managers? –  blueberryfields Dec 3 '10 at 2:05
    
@blueberryfields - Not always. There are technical leads, project leads, and I'm sure others which aren't necessarily managers. –  Jeremy Heiler Dec 3 '10 at 3:18

You have to best the previous leader in either a challenge of strength or a game of wit.

share|improve this answer
1  
In front of you there are three gargoyles - one that only speaks the truth, another that only lies, and a third that kills those who ask tricky questions. –  blueberryfields Dec 3 '10 at 17:18
    
When you play the Game of Thrones, you win or you die. –  Dan Ray Feb 24 '12 at 19:50

a) Either show through time that you handle the material at hand with no trouble, have the necessary technical skills and are good with people in a way that you motivate them and lead them towards a mutual goal

b) or

alt text

share|improve this answer
1  
Sorry people, I know this is useless ... but I couldn't help myself the way the question was put ;-) –  Rook Dec 3 '10 at 1:27

Not the answer you're looking for? Browse other questions tagged or ask your own question.