There's also nothing wrong with plateauing for a while or even topping out, especially if you are generally happy with life and career. There's pride to be had in being a good individual contributor; not everyone needs to make it to Senior Super Special Principal :)
I keep being told I shouldn’t be writing code at my level and should be knee deep in design docs and estimations all day long. This is actually what happens but I would much prefer to be writing software and am wondering if I can even be happy in this career any longer. This industry has some real bizarre notions of career progression.
That’s my belief as well but there are managers out there that think staff engineers should never write code. It boggles my mind they think this way but many do.
Writing code means that your impact can be directly measured. Others can see quality, volume, and impact. If you stop writing code then you can't be measured. If your impact is measured by others, and you aren't bound by a team... then you can just float to where the wind is blowing. It's comparatively easy to surf in this manner.
There are other organizations that are trying to deflate titles as well. (Demanding the work of a lead, staff, or principal in a Sr without the influence to do so)
I might be doing same thing over and over. Time to make a radical change :/.