views:

925

answers:

8

This is slightly different question to What do Team Leaders do?

I have worked on many different projects, working with a varying different team leaders/managers. Some were good and some were not so good. When not so good, I would always think, what would I do different?

In my opinion a good team leader has the following traits :-

  • Personality - can talk to all levels of people and different areas of the business
  • Likable - people tend to trust you more, if your likeable
  • Team Player - Will get involved in solving problems
  • Manage - Both team members and tasks well
  • Good Deflector - Deals with issues outsides the team and defends the team well
  • Can Code - This is obvious and can code very well
  • Understands the Technology - Can question and challenge the developers work
  • Understands the Company - Knows how the company operates
  • Understands the Industry - Knows what's hot and not
  • Makes things happen – Comes up with new ideas, work that can add value
  • Has Connections - Knows people company wide (and outside) to gain leads

Question is, What traits make a good team leader ?

+2  A: 

It is important that a manager is aware of what he does NOT understand and at the same time realises that is what his team is there for. You dont want a manager to second guess you and doubt you know what you are talking about. Being technical is what we do :)

willcodejavaforfood
+6  A: 

I would say someone that understands the big picture, a good mentor [knows his mojo], doesn't micro manage and can motivate you to do your best.

melaos
+2  A: 

Someone who is a good mentor and provides motivation and offers constructive crictism to his team and is willing to admit when they are wrong or unsure of a particular technology/issue etc.

CodeMonkey
+1  A: 

Keeps his word. If he says that people have to work hard (I mean reasonably hard, not like slaves), then he must actually do all he can to change or (if necessary) fire those who dont't want to work hard.

sharptooth
+4  A: 
  • Doesn't micro manage but is still available for help/advice
  • Actually cares about the project
  • Fights your corner
  • Leads by example but not obligation - i.e. it's them working 80 hour weeks but they never guilt you into it
  • Willing to listen to new ideas from the bottom
  • Strikes the balance between code quality (i.e. maintainability) vs customer value (i.e. how quickly it's delivered and how it will save them money)
  • Listens
  • Resolves conflicts quickly
  • Has the project by the scruff of the neck at all times

Edit: I forgot the most important point which is mentioned above. It is absolutely imperative the the leader of the project is coding. If they aren't coding they aren't in the project IMO.

Rob Stevenson-Leggett
Point 6 here is probably going to start another Corey Haines vs Steve Smith debate...
Rob Stevenson-Leggett
+1  A: 
  • Be able to admit one' own mistake.
  • Be able to point out developer's mistakes directly.
  • Help team member grow with one's heart.
  • Up-to-date with the latest technologies.
  • Willing to reward people.

Lastly, one can motivate people and establish a common goal for the all team members without micro management.

codemeit
A: 

I think a good start is having read "Peopleware".

DR
+2  A: 

Understands people - Gets to know what motivates each individual as well as what rewards may be more valuable than others, e.g. time off instead of a bonus may be preferable. Able to earn their respect and loyalty to get the best out of people.

Understands process and process improvement - How are things getting done and where can improvements be done.

Managing expectations - Knows how to communicate changes to deadlines or features delivered.

JB King