If you are a manager in a software development company, there is a good chance that you are not coding anymore. A typical organization does not expect managers to be writing code and contributing to products that are released. This usually results in managers stepping away from coding and the details that go along with it.
But is this how it should be? Let me tell you my story.
I have been in the software development industry for 25 years, and have personally been through these expectations. While I continued to remain technical, there was a period of around 10 years, where I did not write a single line of code that went into production. It was just normal, and I never really questioned it. My career, on the surface, was definitely following a good trajectory. But with each new role, I got further away from directly making anything.
I am not really sure what woke me up from this trance. Perhaps it was all the buzz around independent application development when the iPhone was released, or my newly acquired Livescribe smartpen that had a developer program. Maybe it was my realization that I was slowly becoming irrelevant coupled with the fact that work was not fun anymore. Whatever it was, I am just glad that it happened.
I was recently encouraged by my colleague, Ken Tabor, to see if I could put down my thoughts on why this is important to me.
There is only one reason why I got into software development in the first place: the creative and analytical challenge in creating a product was exhilarating. Knowing that someone (even just one person) found it useful, and was using it to improve their life in some way was a feeling that I had not felt in many years.
Coding, even just a little bit, helped me rediscover my passion for my work and rekindle my spirit. I am confident that my team and company are better from it.
Understanding Trends & Technology
Software technology has been growing and will continue to grow at an astonishing pace. I was standing still, and many of my experiences were just not relevant anymore. While I could theoretically understand the concepts, I needed actual hands-on experience to make them tangible. Without the experience, I was definitely not credible.
Coding was the only way I could bridge this gap, and get a better understanding of the disruptive technologies being introduced.
Being A Better Manager
A good manager coaches & motivates the team, evaluates & assesses talent, champions their cause(s), and removes impediments.
Coding helps me understand what we do, how we do it, and why it is important. It makes it easier for me to appreciate the talent on the team, and gives me a better grasp of our challenges. It allows me relate my past experiences to the current environment and be an effective leader. Most importantly, it allows me to grow with the team, and gives me the best chance to contribute to our success.
What Should You Do?
If any of my comments resonate with your personal situation and emotion, then I hope that my experience will motivate you to take action. Be prepared to challenge the norm and find a way to do what you think is important for you.
Rohit Gupta is the Director of the TripCase UI Development team. His experience ranges from programming microprocessors, writing games for the Sinclair ZX Spectrum, creating accounting software for the Windows PC environment, developing cutting edge communication software for wireless telecommunication networks, and now creating mobile applications. He has been a manager for 14 years, leading software development teams ranging from 10-70 people.