How does a Staff Engineer Continue to develop their career?
Posted by exact-approximate@reddit | ExperiencedDevs | View on Reddit | 2 comments
At my current company, after some time, I ended up becoming a staff engineer/technical lead. I lead a small team of 4 engineers and consult with another four teams of a similar size. The other teams span different parts of the tech stack.
From what I see, progressing into enterprise architecture, or management is starting to seem difficult at this current company and I have no support to do so (for several reasons, such as office politics). I already do quite some system design and architecture, and also some management, but it's not really in my job description (or only partly).
While I am not exactly unhappy, it has left me wondering whether I am working myself into a rut. These days, I rarely ever start and finish a single task end to end. When I code, I am either building proof of concepts, or helping someone debug. Moreover, I also pass on most interesting work to particular engineers to keep them motivated.
I am fine with all this, but I feel like I am becoming less sharp as a developer, and I'm not really pushing forward towards anything else.
When I look for jobs out there:
- Other Staff Engineer/Lead Jobs: Looking for a staff engineer on a stack which is similar but using different tech. (Think Python vs Java, AWS vs GCP etc.) - Unless I dedicate a ridiculous amount of time to learning a tech stack which I don't even use day-to-day, these jobs feel out of reach. As staff engineer, I somehow feel limited to having to bring some technical expertise, and if I can't bring that, how will I get hired? All these jobs seem way too specific to the particular company.
- Engineering Management: Typically looking for people with 3-5 years managing a team. I have not been in this role for that long, but even if I were, my current role is quite hands-on to be classified as "pure management". I am not even sure if I'd want this route, considering I never received any support to consider it.
- Senior Engineer: Given the the previous options, going back to senior engineer seems the path of least resistance. At least if I move to a company with a different tech stack, they will let me learn on the job (as opposed to joining as a staff engineer).
Given the above three choices, I feel like the "staff engineer" role is pretty much cursed or a poison chalice and I might need to take a minor pay cut (go to senior engineer) or go through a tough time re-skilling to appeal.
This feels unfair, and if it is really the case, I think I was kind of duped into thinking this progress was a good opportunity for me. I almost feel like such jobs are so tightly coupled to the company you work for, that they should come with a disclaimer.
Please change my mind and show me the way. I am very confused.
If you are a staff engineer/principal engineer/technical lead, or have been, please tell me what your career path is like.
galactic_fury@reddit
This might be harsh but you just have to accept the reality of having to learn multiple stacks. I understand how amazing it feels to be really good at one stack only to move to a different one and start from scratch but that’s sorta what’s expected in more senior positions. I suspect after you learn a few stacks this way your mind instinctively abstracts away the common patterns so it becomes easier with time.
Anyways, if you find the idea of learning new stacks exciting rather than a chore then staying in engineering might be your calling. Otherwise management or architect offer good paths as well.
SolidDeveloper@reddit
I’m in a similar situation as OP, so I’ll give my few cents: - I changed tech stacks, and while I learned a lot of new stuff, after a few years I am less familiar with my previous stack, and nowhere near as good with the new stack. This makes interviewing for new roles quite difficult. - For me, going for a job with another new stack at this point seems like an extreme chore. - Management is not an option, as I absolutely don’t want to have anything to do with people management.