I'm a fan of the multi-track career ladder for developers.
Technical Individual Contributor
Technical Influencer
Technical Manager
Each track should be just as deep, but with a different focus, you definitely don't want to promote all of your best developers into non-developer positions because that will lead to brain drain. You want to keep your best developers developing, and you want a path for them to advance. What we do at $DAY_JOB looks a bit like this:
Technical IC: Dev I, Dev II, Senior Dev, Staff Dev, Distinguished Dev
Influencer: Dev I, Dev II, Senior Dev, Principal Dev, Architect
Management: Dev I, Dev II, Senior Dev, Team Lead, Manager, Senior Manager, Director
The individual contributor track lets you go deep into your technical role, keeps you out of meetings, and allows you to progress to the same levels as the other tracks. You become an expert in your field and most of your time is spent coding.
The influencer track keeps you technical, but you start to work more across the organization than just within your own team. Your reach is greater, but you're still a developer. You definitely attend more meetings than an IC on this track, but you should still be coding a fair amount of the time.
The management track is technical as well in our case, but you're not doing much development work (some of us do, because we love it, but we try to keep ourselves off of the critical path -- no one wants to be relying on their manager to deliver some feature) but instead you're doing lots of 1:1s, making sure your team is happy and has everything they need to do their work. You're also helping them figure out how they fit onto the other tracks and helping them grow their careers.
Ideally, it should be pretty easy to hop back and forth between the tracks, say you want to try being a manager, but then discover that you really don't like it and want to go back to being an IC -- this should be easy to do and encouraged.
Would love to hear what other are doing in this space!
Currently writing open source code and helping partner developers as an Integration Engineer at Login.gov. Author of Foot in the Door: My Self Taught Journey Becoming a Software Engineer
Thanks for your response! I think these tracks make sense except that I wonder if the people skills aspect should be introduced earlier than at the level of Team Lead. I think that developers could use more training in communication, but it's also the fault of the industry for not valuing those skills. Personally I find that the longer I am in a role just coding, the worse my social skills get which kind of sucks considering I used to have pretty good social skills.
For further actions, you may consider blocking this person and/or reporting abuse
We're a place where coders share, stay up-to-date and grow their careers.
I'm a fan of the multi-track career ladder for developers.
Each track should be just as deep, but with a different focus, you definitely don't want to promote all of your best developers into non-developer positions because that will lead to brain drain. You want to keep your best developers developing, and you want a path for them to advance. What we do at $DAY_JOB looks a bit like this:
Technical IC: Dev I, Dev II, Senior Dev, Staff Dev, Distinguished Dev
Influencer: Dev I, Dev II, Senior Dev, Principal Dev, Architect
Management: Dev I, Dev II, Senior Dev, Team Lead, Manager, Senior Manager, Director
The individual contributor track lets you go deep into your technical role, keeps you out of meetings, and allows you to progress to the same levels as the other tracks. You become an expert in your field and most of your time is spent coding.
The influencer track keeps you technical, but you start to work more across the organization than just within your own team. Your reach is greater, but you're still a developer. You definitely attend more meetings than an IC on this track, but you should still be coding a fair amount of the time.
The management track is technical as well in our case, but you're not doing much development work (some of us do, because we love it, but we try to keep ourselves off of the critical path -- no one wants to be relying on their manager to deliver some feature) but instead you're doing lots of 1:1s, making sure your team is happy and has everything they need to do their work. You're also helping them figure out how they fit onto the other tracks and helping them grow their careers.
Ideally, it should be pretty easy to hop back and forth between the tracks, say you want to try being a manager, but then discover that you really don't like it and want to go back to being an IC -- this should be easy to do and encouraged.
Would love to hear what other are doing in this space!
Thanks for your response! I think these tracks make sense except that I wonder if the people skills aspect should be introduced earlier than at the level of Team Lead. I think that developers could use more training in communication, but it's also the fault of the industry for not valuing those skills. Personally I find that the longer I am in a role just coding, the worse my social skills get which kind of sucks considering I used to have pretty good social skills.