I have this dilemma at the moment. My company has a management and non-management track. I feel like the company is pushing me up the levels and that all focus across engineering is on getting promoted to the next level. My problem is now that I've got to Staff level I feel like I'm a manager even though
my manager insists I'm not. I hardly ever get to code, and my calendar is full of meetings. I spend a lot of time writing planning documents and having meetings about spreadsheets and OKRs and to be honest I absolutely hate it.
I've been trying to work out if it's like this everywhere, or if this is specific to my company. I spoke to a few people and they pretty much said "Yeah, the more senior you get the less you get to code". The articles I read about Staff Engineer level seem to imply it's more about architecture and planning.
I'm really tempted to demote myself back to Senior and just stick there, but I'd probably take a salary cut and I also feel like I'd taint my career and be viewed as a failure.
I thought we'd move forwards by creating twin tracks that means engineers don't automatically have to go into management to get ahead, but it feels like it hasn't changed that much. I know some people are great at that level of engineer role, and I can see why companies need it.
I keep coming back to the question: why do we take people who are good at coding and say "OK, you're great at that so I'm going to promote you into a role where you hardly ever get to do it"?
For what it's worth, I enjoy mentoring and explaining things, writing docs, and being involved in design of systems and influencing technical strategy. It's nice to be making technical choices. But when you're more familiar with a spreadsheet than an IDE, something has gone wrong.