To Code or Not to Code? Pursuing a Leadership Path in Software Development
True or false: The most effective leaders in software development eventually ditch coding to focus on honing their management skills.
False! While removing yourself from the building of the product might be the right path in other careers, successful managers in software development keep their hands in the code. If your long-term goal is a leadership position in software development, keeping current on your technical skills will ensure that you are an indispensable member of your team and a must-have candidate for organizations looking to hire.
This may be especially true in New England, where the bulk of software companies are start-ups or small companies with limited staff and tight resources. Managers of software development teams are most effective if they are right in the trenches with the developers. Not only can they closely monitor the code and output--troubleshooting, managing quality issues, hitting deadlines--they can jump in to write code or fill any other role on the team, if necessary. Hands-on managers carry greater credibility with other engineers and can make better managers because they can mentor, offer insight and guidance, redirect or inspire, and ultimately help to make their team members become better coders. Traditional management positions are typically only seen at very large companies (Google, Apple, Microsoft), and aren’t as in-demand. Of course, the industry’s most successful leaders like Bill Gates, Steve Jobs and Mark Zuckerberg grew up as engineers and kept their hands in the product throughout their careers. Those engineers-turned-managers who don’t keep up with their technical skills are at a severe disadvantage.
When thinking about career growth, some programmers believe they need to stop coding and get an MBA to ensure they become a director or VP. This is not true. A really good computer science degree can carry you through your career, as long as you stay current and hands-on with the technology. Employers are looking for candidates who have that balance of education, management experience, and technical expertise, with applied experience being the most desirable.
One of our recruiters recently had four candidates looking for leadership positions in software engineering. Three of them still did coding, either on the job or in their free time, while the fourth let his technical skills slide to focus solely on management. We were able to get interest in the first three people right away. The fourth is still looking for a job. Employers want candidates who have built products, written code and contributed to architecture.
Those looking to pursue leadership career paths in software development need to stay focused on the technology. They should also be aware of the evolution of all software and technology--even technology outside their vertical. If your position is development for an enterprise product, you need to keep up with changes in web-based and consumer-facing products, too.
Most engineers start out as coders because it is their passion. If you want to be a manager, you don’t need to give up your passion as you climb the management ladder. Keeping current on technology will make you a better manager and more marketable for leadership jobs.