My Tweets

  • in Austin, TX for the weekend visiting my in-laws...gotta do some tech support for my FIL as well.
  • @CalebJenkins: I think Trudy's in Austin skews that statistic big time...
  • @dpenton: agreed there's always value as it forces SRP and SoC. Dependencies always get abstracted out when unit testing is enforced too.
  • @dpenton: unit testing has value when reqs come from biz analysts. If devs/former devs are involved, reqs get more attention/thought.
  • @jbogard: Common scenario I've seen is when properties have an Enum that does a straight type mapping to the DB. Not a flexible design.

Xbox Gamer Tag

Developers who become Managers

Friday, July 06 2007 2 Comments

Rob Walling had an amazing post where he described his experiences and frustrations during his career when moving  from senior software development roles into management roles.

Much of Rob's frustrations stemmed from losing the creative satisfaction one gets from writing code despite gaining the money, power, and respect generally associated with higher level management roles.

This post struck a chord with me because I had many of the same thoughts while I was a management consultant.  I saw many colleagues that were great developers become terrible managers.  Many of these former developers were so accustomed to the fine degree of control one wields with code that they had forgotten that people are not as easily manipulated.  Out of frustration with this loss of control, many of these former developers resorted to becoming Taskmasters and were very disrespectful to their subordinates.  Much of the reason I left big consulting was because of not wanting to go down the same path.

However, things are not all bad for those who aspire to get to management but have some anxiety about not coding.  I have recently met a few rare individuals who are very successful at both the management side of things while still feeding their creative side by doing some programming work on the side outside of their management-based day job.  The work they do on the side may be in the form of User Group Contributions, Open Source Contributions, or just general on-the-side consulting work for friends and former colleagues.

It's been my experience that these types of managers are generally even better at their day jobs because they stay connected to the technology they are managing and are often very involved in the communities revolving around the same technology.  Additionally, they often have less trouble finding and hiring good developers due to their large people networks.

As one would expect, such outside activities usually require sacrificing some personal time.  But they give an individual the creative fix of coding while providing the prestige gained by going into management.  So for those who are willing, it's a very good option if you can survive with a little less sleep :)

Comments

#1 On July 07,2007 at 4:28 PM Kyle said:

Good points Karthik! A nice compliment to Rob's post...

#2 On July 18,2007 at 9:07 PM Tom said:

Karthik,

You stated it correctly. It applies to other management candidates outside of just developers. Individuals who are top performers in one area may not be the best managers moving forward. The top performers may be great at execution, but may not have the strategic mindset that is necessary to enable their subordinates. The real key to management is to develop the members of your team professionally while ensuring they have enough freedom to grow and innovate. You cannot gain the respect of your team if you are a taskmaster. You need to define expectations clearly, ensure that you support and guide your team members and allow them to grow professionally. This is something that requires work and even goes against human nature at times, but this is what is required to truly maximize the potential of your team.