5 ms·
I don't think there's a single easy definition of "Staff Engineer" and it's usually just a title. But it might be still good to think about why those folks keep
by summerlight 2y ago
I don't think there's a single easy definition of "Staff Engineer" and it's usually just a title. But it might be still good to think about why those folks keep talking about this specific title.
From my observation, there is a certain inflection point in a senior level engineer's career where their expectation rapidly grows in that no one can realistically match it alone. The quality of your work will saturate and it's physically impossible to "work harder". Some extraordinary engineers could delay that point a bit but they will be eventually there.
At the moment, they will need to figure out a consistent, reproducible way to scale their contribution. If they want further career progression. The most direct way is becoming an engineering manager. Someone may develop a technical and organizational skill to influence high level decisions and prioritization. Or just become an engineering genius...
There are many other possible ways to achieve this, but the point is that further contribution at this point usually needs a radically different way. I do see that many companies tend to grant a title of "Staff Engineer" to those folks able to figure out how to handle this situation.
- jvanderbot 2y agoI concur. It was a eye opening experience to move into management and staff/prin levels after research. The focus was very much more on "doing through others" rather than "doing yourself". For me this felt unnatural. If someone had warned me prior, I'm not sure I'd have made this jump. I'm happily now doing direct RnD again.
- mattgreenrocks 2y agoSame. Working indirectly saps my life force. Maybe some day in the future, but I'm about 80-85% hands-on nowadays. Seems right.
- oxidant 2y ago[dead]
- grogenaut 2y agoFor me if your a principal and you're only doing through others your either not looking at it right or doing it wrong. For basically everything I do, I ask myself the question: is this something that I should be doing directly, or something that other people should be doing, or something I should coach people up on doing train them, or build an organization around or whatever. In many cases I will build an organization and it will take 5 to 10 times longer than if I did it myself. But it keeps going for years after I move on to something else, as opposed to stopping the instant I stopped working on it. What I say to a ton of mentees as they mature into staff/pe, is the important thing is to always figure out what is the highest leverage thing you could be doing. if it's coding, code. if it's writing a doc to explain to other people why other people should be coding, write a doc. if it is slowly nursing junior engineers through a multi-year arc that you could do in a week, maybe that's what you need to do tho I'm seconding guessing that one. But you definitely shouldn't be hanging up the keyboard as a tech ic. Also as of this week at 9 years at a company, I have now shipped code in almost every language the company uses, and on all but: salesforce, an actual prod sagemaker model (all local prototypes), jira workflows, and SAP.
- CSMastermind 2y agoI have long encouraged engineers reporting to me to view the transition to Staff Engineer as not a promotion but a role change similar to the change of transitioning into being an engineering manager. I think that what you said is only true in the same way "there's no single definition of a manager" is true. Staff Engineers live on the critical path of implementation and directly contribute to their execution.
- Exoristos 2y ago> I have long encouraged engineers reporting to me to view the transition to Staff Engineer as not a promotion but a role change similar to the change of transitioning into being an engineering manager. Does this imply that becoming a manager is also "not a promotion" in your organization?
- CSMastermind 2y agoYes - becoming a manager is a role change; strictly not a promotion.
- BhavdeepSethi 2y agoAt a lot of places, sr. engineer and early engineering manager are same pay band, making it a parallel move rather than a "promotion".
- xp84 2y agoAt the risk of being obtuse, depends on what your definition of “promotion” is… I’d classify the dimensions as: - Compensation - obvious one. May vary by org - Authority - are you officially allowed to give orders? Hire and fire? - Respect and influence- in your org, do people specifically want EMs to be active in areas ICs are not, like strategy, etc. varies widely. - Alignment with personal Career goals - some people hate management-type duties - so for them, this EM title change would be “not a promotion” to them I’d say EM is a promotion in some of those ways and it varies a lot by org for sure.
- robenkleene 2y ago> Staff Engineers live on the critical path of implementation and directly contribute to their execution. What does this mean?
- Swizec 2y ago> There are many other possible ways to achieve this, but the point is that further contribution at this point usually needs a radically different way. I do see that many companies tend to grant a title of "Staff Engineer" to those folks able to figure out how to handle this situation. In my own experience it's also entirely common for your comp and responsibilities to grow and grow until your working peers are all directors, VPs, and heads of this or that and you're meant to act as their API layer to an entire team of humans executing on your technical direction, but your title is just Senior Engineer. Internally everyone understands this and treats you accordingly, but it sure looks bad on linkedin.
- MichaelZuo 2y agoIt’s possible to assign further ranks to subdivide titles appropriately. e.g. The most important senior engineer, with an equivalent rank just one level below the CTO, would be the ‘First rank X Engineer’, then the next level below would be the ‘Second rank X Engineer’, and so on…
- astrange 2y agoThere are usually tech industry levels above senior like staff, principal, distinguished engineer. I think the OP's problem is they didn't get a title increase.
- MichaelZuo 2y agoI know, hence why I wrote X as a placeholder…
- metaltyphoon 2y agoWouldn’t that be a Distinguished Engineer?
- bigtunacan 2y agoMy experience is those are generally technically immature organizations. Everyone knows that "John" is consulted across departments and pulled in by senior leaders, that he's guiding the technical of multiple teams ands areas of the business. But management can't quite explain what it is so they give John more money and his title remains unchanged.
- criley2 2y agoI don't personally agree with the idea that senior is basically the end point of writing high level code. Perhaps it's just a difference in terms but I think of seniors at the high end of their capacity as being able to release high quality features. But if I needed a whole new app greenfielded, would I trust a senior to not only get the job done, but execute at a high level, with a clear vision, clean design system, beautiful code base, all the right choices of libraries, following all the best practices, linting, style, etc? Of course not. To me, a staff engineer can deliver that application at that level, and can lead senior engineers in maintaining and enhancing it. We also consider a level above that, the principal engineer, who is primarily focused on higher level and longer term thinking and less about individually jumping into tickets and features. They re-envision the entire approach to implementing the business logic and scale the business in ways that seniors are mostly helpless at. They do work through others much more, and I do personally see Staff Engineer as the highest level where you primarily are still coding day to day.
- dasil003 2y agoIMHO greenfield vs new features vs maintenance/tuning/scaling are different skill sets, not level dependent per se. Plenty of junior engineers can spin up a reasonable greenfield app, and plenty of staff/principal engineers never have had to. The way I look at it is that levels only make sense within an organization that is big enough that a hierarchy is needed to scale. At that point staff+ IC levels are needed because you want purely technical people on the same pay scale and influence level as managers to counteract the incentives of empire building that can corrupt the entire architecture and lead to a Dead Sea effect of engineering talent if left unchecked. From this perspective most staff+ work is in some way generating influence and impact across multiple teams and individuals. Outside of certain specialties and specific R&D roles I think it’s pretty hard to justify staff leveling on purely technical work. Of course different companies calibrate levels differently, and they’re all subject to level inflation, but that’s my feeling for a traditional Google L6.
- criley2 2y agoIn my opinion, there is absolutely no way a junior / SWE1 could greenfield an app by doing anything other than following a youtube tutorial or similar step by step guide, and would have basically no understanding of the decisions made throughout. They would have no real experience with style, linting, no good opinion on libraries, no knowledge of accessibility, security, usability, nothing. They would end up with a basic 'hello world' application that would likely fall apart before you could even get your business logic in there. If you have a SWE1 that can literally just greenfield an entire application and do it at a very high level, then they are a unicorn / 10X developer operating at a ~SDE4 level already. I personally do not think the average SDE1 can meaningfully contribute to a quickly moving and efficient team. By the time they are even able to contribute regularly, they are SWE2/mid in my book. I do have much less experience in giant beaurocratic slow moving organizations so I don't have an opinion on how all of that rigmarole works, I'm speaking more to highly focused small teams delivering at a high level quickly.
- fnord77 2y ago> The most direct way is becoming an engineering manager. After 30 years of engineering experience, I tried to transition from engineer to engineering manager, and I hated every minute of it.
- WesleyJohnson 2y agoI'm 19 years into my development career. I've been promoted to some sort of manager position twice. Currently, I'm 7 years into a management role. I don't hate every minute of it; but I sorely miss every minute I'm not coding.
- pjmlp 2y agoThere is also the alternative to accept, like companies exponential growth doesn't last forever, and maybe one should be happy where they are instead of pursuing growth paths that will ultimately make them unhappy while getting more money they cannot ever spend, every day thinking why go to the office. Personally, I am happy to die as IC, having tasted management related roles.
- jakupovic 2y agoPeople forget this a lot. Yours truly has seen this thought slip .. is more really more?
- sieabahlpark 2y ago[dead]