How fucked is it that “career success” as a software developer means you stop developing software?
— Sarah Mei (@sarahmei) June 27, 2015
The typical software developer career progression goes
- Junior Developer (0 – 5)
- Senior Developer (5 – 10)
- Software Architect / Lead Developer (10+ years)
- Engineering Manager (Varies, but some can move into this position after 5 years)
- Engineering VP or CTO (Varies by company)
Both the junior and senior developer spends majority of their day to day responsibilities writing code. The software architect or lead developer may still have code writing responsibilities but is mainly responsible for architecting the solution and the mentoring and coaching of the junior developers.
It is rare for an engineering manager, vp, or cto to spend a majority of their time actually writing code. Instead, their day may consist of people management, recruitment of talent, report creation and presentations to stakeholders.
In my career, I’ve rotated in and out of developer and managerial positions, and prefer the former. I enjoy creating software, but on my terms, instead of within the boundaries of a company. I’ve been lucky these past few years to be able to do just that.
I am now 35 years young with 15 years experience of creating software. So, I am thinking about what’s next. To be clear (for the recruiters): I am not looking for a position. Just reflecting on what the upcoming years will bring and how I can add on to what I am currently doing.