Senior engineers write enabling code/scaffolding, and review code, and mentor juniors. They also write feature code.
Lead engineers code and lead dev teams.
Principal engineers code, and talk about tech in meetings.
Senior Principal engineers, and distinguished technologists/fellows talk about tech, and maybe sometimes code.
Good managers go to meetings and shield the engineers from the stream of exec corporate bs. Infrequently they may rope any of the engineers in this chain in to explain the decisions that the engineers make along the way.
Bad managers bring engineers in to these meetings frequently.
Terrible managers make the engineering decisions and push those to the engineers.
I’ve worked for startups too; everyone does everything all at the same time! Let the chaos reign! But it is fun in its own way.
I work for a large company now after the startup I worked for was acquired. Hierarchy, bureaucracy, layers, we’ve got it all. For worse and for better though, it allows me to focus and specialize on what I’m awesome at and furgeddaboddit (ahem! delegate) the stuff that I suck at to those who excel at those tasks.
People in the technical career track spend most of their time making software, one way or another (there comes a point were you’re doing more preparation to code than actual coding).
As soon as you jump into the management career track it’s mostly meetings to report the team’s progress to upper management, even if you’re supposedly “technically oriented”.
Absolutelly, as you become a more senior tech things become more and more about figuring out what needs to be done at higher and higher levels (i.e. systems design, software development process design) which results in needing to interact with more and more stakeholders (your whole team, other teams, end users, management) hence more meetings, but you still get to do lots of coding or at least code-adjacent stuff (i.e. design).
No, this is incompetent management.
Senior engineers write enabling code/scaffolding, and review code, and mentor juniors. They also write feature code.
Lead engineers code and lead dev teams.
Principal engineers code, and talk about tech in meetings.
Senior Principal engineers, and distinguished technologists/fellows talk about tech, and maybe sometimes code.
Good managers go to meetings and shield the engineers from the stream of exec corporate bs. Infrequently they may rope any of the engineers in this chain in to explain the decisions that the engineers make along the way.
Bad managers bring engineers in to these meetings frequently.
Terrible managers make the engineering decisions and push those to the engineers.
TIL my company has only bad managers.
There is a reason I keep refusing to take the “Lead” position. I know what I’m good at.
Now I don’t know, but I been told
It’s hard to run with the weight of gold
Other hand I have heard it said
It’s just as hard with the weight of lead…
Was lucky enough to work with one… once.
bruh, your company has money for all those layers in your lasagna?
your company has money for no one above mid-level engineers to be actually building the product?
I’ve worked for startups too; everyone does everything all at the same time! Let the chaos reign! But it is fun in its own way.
I work for a large company now after the startup I worked for was acquired. Hierarchy, bureaucracy, layers, we’ve got it all. For worse and for better though, it allows me to focus and specialize on what I’m awesome at and furgeddaboddit (ahem! delegate) the stuff that I suck at to those who excel at those tasks.
I came here to say the same.
People in the technical career track spend most of their time making software, one way or another (there comes a point were you’re doing more preparation to code than actual coding).
As soon as you jump into the management career track it’s mostly meetings to report the team’s progress to upper management, even if you’re supposedly “technically oriented”.
Absolutelly, as you become a more senior tech things become more and more about figuring out what needs to be done at higher and higher levels (i.e. systems design, software development process design) which results in needing to interact with more and more stakeholders (your whole team, other teams, end users, management) hence more meetings, but you still get to do lots of coding or at least code-adjacent stuff (i.e. design).