An introduction.

Because management is such a black art and it can be so difficult to discern a person’s core beliefs and philosophy, I thought it might be useful to summarize my philosophy on leadership and discuss the principles I have relied on during my career.  But first, one of my favorite quotes from a very, very smart man:

Management is the most noble of professions if it’s practiced well. No other occupation offers as many ways to help others learn and grow, take responsibility and be recognized for achievement, and contribute to the success of a team.
Dr. Clayton M. Christensen, Professor, Harvard Business School

On Management Practices

Particularly as it relates to software developers, my mantra for how to manage them is actually very simple.

  1. It Starts With Respect
  2. Know Your Mission
  3. Hire Smart People
  4. Give Them Clear Goals
  5. Get Out of Their Way
  6. If Anything Else Gets in Their Way, Move It

Most projects aren’t blessed with enough good fortune to be able to get by with just these principles, which is where the others come in:

  1.  Humans Will Make Mistakes
  2. Learn From Setbacks and Move On
  3. Have Fallback Positions
  4. Praise Publicly, Criticize in Private


On Team Leadership

So much of what I do relies on mutual respect, so I give it generously and demand it in return.  If you don’t have an atmosphere of mutual respect, mark my words, you will start to have problems and your productivity will eventually break down due to interpersonal drama.  An atmosphere of mutual respect is the binding agent that allows a group of people to achieve more than the sum of their parts despite the fact that  not everyone is great friends with one another (and some may not even care for others at all).  Without mutual respect, the personal becomes the (un)professional.

Many leaders believe their job is to order people around, because their ego needs to be fed or because they mistakenly believe that without behaving tyrannically, the team will start to lose respect for authority.  I’m not one of those people.  I think you need to ask the people who are doing the work what they think and really consider their suggestions and concerns before making a decision.  With that said,  I am also not shy about demanding action and accountability if I feel the product or the customer is suffering.  No one’s ego must come before what is best for the product and what is best for the customer.

Despite our best intentions and aspirations, people are human and “real life” will often intrude into the day-to-day machinery of work.  It is at these moments of humanity and vulnerability that your leadership quality and worthiness of respect will be tested.  Failing to empathize, much less move heaven and earth to provide whatever help you and the organization can offer, will be felt as a betrayal.  Just “being there” for them, on the other hand, can inspire fierce loyalty.  Whatever you do, don’t fake it.  Pretending to care is worse than not caring at all.