Contrary to common belief, software developers are actually better prepared for some leadership roles than is often thought.
A common “myth” is that software developers don’t usually make good team leaders. It is clear that some skills needed for the two jobs often differ, eg hard analytic skills vs soft interpersonal skills.
A development background can however help in three main areas:
- Developers understand scaling, delegation and processes: As a developer you are constantly creating processes and delegating tasks, ie telling the computer what to do so you don’t have to do it yourself. You then step out of the way and leave the computer to run by itself without constantly checking it. As a manager it should similarly be your goal to setup the processes, delegate work and then step out of the way and let your team get on with it.
- Logical analytic thinking: There are plenty of management tasks that benefit from the same rigorous logical analytic thinking that developers are used to.
- Deep understanding of the developer mindset. If you were previously a developer then you can fully understand the needs, pains and frustrations of development tasks in a way that a non developer will probably never be able to do. I think Ahmad Nassri’s sums it up well in his article Becoming a technology team leader:
“A good leader understands the field of battle, while a great leader not only understands the field, but is also leading the charge!”
It would be hard to really lead a development team if you had never been a developer.
So, overall I coming around to Noah Brier’s view from his Tech Crunch article.
“ despite their reticence, engineers are actually better prepared for management than almost anyone else in the organization”
As a newly promoted development team lead this doesn’t mean you don’t need to invest time in new skills, but you can be happy that your technical background has given you a good basis as you progress into management.
Your arguments might be true for some tech leads. But what about the arguments why developers don’t make great leaders? Would be a great topic for your next Post 🙂
I like the idea, I will have to make that the title of one of my next posts 🙂
But to answer your question I would start my list with poor presence in meetings and not being able to give good estimates. You can read further about
how to act more confidently in meetings here or better estimates here.
Please add further points in this comment thread or email me your ideas firstname.lastname@example.org
just some of my thoughts:
– techies like to analyze problems and are not able to make decisions until they fully understand the problem
– since they have the skills to learn the needed technologies and often have a broad knowledge, they don’t like to consult other people for making a decision
– they like to add extra complexity just for the fun of it (look what a great designer I am!) and not to solve a certain business problem.