7 ms·
What Is a Staff Engineer?
- ethbr1 2y agoWas there until > ... you schedule meetings with... I get what the author is saying, but I think they chose a way that's likely to be misunderstood. A good >senior engineer: - Understands the problem space - Understands what the team has done - Understands the value goal - Has researched alternate approaches - Finds and introduces the right people - Guides the conversation productively - Ensures everyone understands post-meeting "The meeting" is a necessary but in no way solely sufficient component of that process. The staff engineer is providing value through all the other pieces. tl;dr - Don't just schedule meetings: engineer productive exchanges.
- codemonkey-zeta 2y ago100% agree, but I think the author was try to keep their description concise. I have worked with people who will readily schedule a meeting when an issue arises, but won't do the actual work to run that meeting, and it just ends up being a huge quagmire. Effective meetings require work to run, and someone needs to do it.
- fsckboy 2y agoof that group of people who don't do the actual work to run the meeting, are an especially slippery group of people who don't intend to do any of the work that results from the meeting either; you can often identify them because the best of their breed will volunteer to handle communications with the bosses.
- zug_zug 2y agoI never understood articles trying to put objective criteria on a system that’s as much a function of supply and demand as any inherent ability. Most companies have set percentages for titles and promotions, regardless of actual abilities.
- ninkendo 2y agoIt’s a title, nothing more. It means nothing, because there is no legal certification process for any of this. There is no guild of software engineers that puts requirements on what a staff engineer would need to be certified. There is no license you operate under that says you’re a staff engineer. It’s just a title, if your work wants to call you a staff engineer, cool. But you should probably care more about pay and less about titles.
- nocman 2y ago> It’s a title, nothing more. It means nothing, because there is no legal certification process for any of this. I believe I understand where you are coming from. However, that's not entirely fair. Most jobs have "no legal certification process", but that doesn't make their job title meaningless. Not everyone who wants to define what a title means is doing so to gain or assign clout, many just want to understand what a person with that title typically does. Granted, there are some titles (especially in technical roles, in some companies), that tell nothing more than "that person works in I. T." (or whatever your company calls it). For example, I've seen roles called "Systems Analyst", that varied greatly in responsibility -- some where all the person did was code all day, some where the person almost never wrote any code. Sometimes that was two people in the same group at the same company. So yes, titles can hold only a very small amount of meaning, at times, but that doesn't make them entirely meaningless.
- Spooky23 2y agoPeople with the “real engineer” chip on their shoulder want to die on this hill.
- davidgay 2y agoSome of us are both "real engineer"s (certified, legally protected, in Computer Science, etc, etc) and "staff engineer"s ;) But I'm definitely not looking to die on any hill.
- lolinder 2y agoI always point these people to Hillel Wayne's Crossover Project [0]. His interviews with "real engineers" who switched over to software engineering (and vice versa) are very enlightening. Also, watching Practical Engineering has had a huge impact on both my perception of "real engineering" and on my own work. He goes over a whole bunch of civil engineering topics and it's obvious that they're doing the same kind of work, just in a different domain, and with in most cases about as much due diligence as I have in my job. It's not a different universe, just a different neighborhood. [0] https://www.hillelwayne.com/tags/crossover-project/ https://www.hillelwayne.com/tags/crossover-project/
- ryandvm 2y agoA Staff Engineer is a Senior Engineer that has been doing this for a while and doesn't want to be a manager or director.
- keyle 2y agoHah this is a great definition, succinct and it fits my experience. "I still want to code, and less Microsoft Teams" Typically it means having a broad experience across product lines and being able to give pointers to the confused.
- scottlamb 2y agoYou're not wrong. A Staff Engineer might manage people, but if that were their main desired focus, they probably would have the title Engineering Manager instead.
- roskilli 2y agoNot sure but I believe it’s possible you may have read the parent comment unintentionally in the inverse? I might be wrong but I believe you posited their desired focus is to manage people from parent comment, but I actually think it’s opposite. They don’t want to manage people (especially career wise), instead they want to manage and guide the work of teams and people across one or many teams. My interpretation of it was to pursue the type of work and things you focus on as an Engineering Manager in terms of getting the most of out teams for the goals of the organization but doing so without the need to manage people directly. Which I would agree is nice since it’s really hard to wear the technical hat and also directly manage people, so separation of concerns makes for far less context switching and folks to naturally align doing the part of the job that they do best. I also agree with this definition since it’s how I think of it too.
- opello 2y agoI took the post you're replying to as to have interpreted the "doesn't want to be a manager or director" idea as that there are times others or a team may be foist upon them without such a people management role being the majority of the person's time during, say, a year. I'd also add "team lead" to the list of possible titles that indicate a primary focus on people management vs. individual contribution.
- lapcat 2y agoA staff engineer has a long beard, carries a staff, and performs magic.
- fsckboy 2y agoI remember learning back at the beginning of my career that at places like Bell Labs and IBM, everybody who was anybody had the title "Member, Technical Staff" which was designed to be a low key humblebrag with the uniformity designed to quell egotistical agitation/competition for more and better titles. Then everybody who didn't work at those places wanted that title too. In banking, the title is "Vice President". It means virtually nothing, there are hundreds of them in every bank, a reason I heard was "otherwise nobody will take your calls." Many people in their 20s who go to business school to get their MBA have already been VPs at banks.
- 01HNNWZ0MV43FF 2y agoTruly a tale older than me. In the business card scene in the film "American Psycho", all the guys are Vice Presidents.
- icedchai 2y agoThat's still very common in finance. It's a relatively low level title.
- caseyohara 2y agoIsn’t the hierarchy Analyst < Associate < VP < SVP < Managing Director? This is why I always laugh when people point out title inflation in tech like it’s unique or egregious. Finance has been like this for much longer.
- dh2022 2y agoThere is a method behind this madness (... or rather title inflation). This webpage explains it pretty well (it is a bit tongue in cheek but it is Friday). https://epicureandealmaker.blogspot.com/2013/03/curriculum-vitae.html https://epicureandealmaker.blogspot.com/2013/03/curriculum-v...
- aix1 2y agoA variant I've seen (at a couple of European investment banks): Analyst -> Associate -> Assistant VP -> VP -> Director -> Managing Director
- lumost 2y agoThese articles always miss the core deliverable of a staff engineer. Impact The engineer who wrote the MVP of the product and grew it's customer base to hundreds of MM ARR -> staff. The engineer who steers the ship for a 50 person org -> staff The engineer working in a corner on a novel solution to the companies perf/accuracy/security challenges -> staff. Everything that you do is in service of creating impact, but having a bunch of useless meetings or providing useless mentorship is exactly that - useless.
- MartinMond 2y agoI like that, but then what is a senior engineer?
- justsocrateasin 2y agoAn engineer that makes less impact than a staff engineer but more impact than a junior engineer.
- threatofrain 2y agoAn engineer who has been working some number of years, regardless of level of responsibility or skill, is a senior. If you've been working in the industry for 5 years and you're applying for junior positions then people are going to be really confused. It's the minimum level of industry credibility.
- dilyevsky 2y agoI expect seniors to deliver on smaller to medium projects without external help. If someone can’t do that they’re not senior and i don’t care if they have 2 or 20 yoe
- deleted 2y ago[deleted]
- dilyevsky 2y agoSenior eng these days is just someone who can deliver independently on a project of limited scope (within a single team purview)
- david-gpu 2y agoA staff engineer is somebody who is providing enough value to the team that management has decided to give them a promotion and better pay to reduce the risk of them jumping ship. Same as every other title.
- margorczynski 2y ago> Same as every other title. Is this really true? There's usually quite the big difference for line manager vs director, Head of XXX where you operate on much bigger scope, plan budgets, etc. For ICs it is true that many times "Staff Engineer" is basically the higher pay band for Senior Engineers. But many times from Staff+ you expect them to be able to lead projects or programs, act as an architect and advisor to management. In general bigger scope stuff than just being a specialist in a given technology.
- david-gpu 2y agoI am not saying that the role of a senior engineer and a staff engineer is the same. I am saying that the primary --if not the only-- reason people get promoted is because management figures that the cost of paying them more is less than the risk of them leaving the team. And, indeed, I believe that applies to every promotion up to something like the C-suite, where I have zero experience and can't comment.
- goalieca 2y agoIt’s a payband.
- booleandilemma 2y agoA title companies give out like candy to retain engineers they don't want to leave. That's it. Naive people, and managers who want to manipulate you, and people who write books about being a staff engineer will tell you otherwise. Don't believe them. Same thing for any "senior" title. ninkendo's comment is spot on: https://news.ycombinator.com/item?id=42091132 https://news.ycombinator.com/item?id=42091132
- summerlight 2y agoI 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.
- justsocrateasin 2y agoThis article feels a little bit pointless to me. ryandvm said it perfectly - a staff engineer is just what happens when you have a senior engineer who deserves a promotion, but wants to be a technical leader not a people leader. How that actually fits into the company varies heavily company to company, specifically size and maturity. I feel like this article wants to talk about the performance matrix through the lens of four pillars, and just arbitrarily chose "staff" as the role to talk about since it's a very senior engineer.
- renewiltord 2y agoIt’s named after the staff he carries around like Gandalf. If he doesn’t have one he’s not a Staff Engineer.
- indigoabstract 2y agoI think that's called a wizard. Staff engineers are not allowed to cast spells themselves, they just help keep the wizard's staff in good order and troubleshoot technical issues.
- paxys 2y agoA senior engineer is very good at writing code, hitting targets and executing under the direction of their manager. A staff engineer is the one who tells the manager what the targets should be. In all tech environments I've worked at the "status" of a staff engineer is higher than that of a bottom-level manager.
- namuol 2y agoShould you care what another engineer’s title is? These kinds of discussions bother me because it always implies some kind of worthiness of the title. Maybe it’s just my work experience but I’ve found very little correlation with e.g. the success of an engineer’s career trajectory and the success of the projects they’re responsible for. Going a little more off topic now but these discussions always leave me feeling a bit like how Richard Feynman describes his instinct to be repulsed by “honors” and everything like them: https://youtu.be/f61KMw5zVhg https://youtu.be/f61KMw5zVhg
- jinushaun 2y agoPeople care because it’s tied to salary bands.
- namuol 2y agoThis may be the best answer to the title question.
- VirusNewbie 2y agobut not between companies. Many a staff engineer has been down leveled quite a bit moving to FAANG companies, and they still get a raise.
- cdchn 2y agoStaff Engineer is a response to everybody having Senior Engineer titles and complaining they have no path for career growth.
- NomDePlum 2y agoA way of retaining someone who wants to be technical but not a manager.
- Ferret7446 2y agoI assume "staff engineer" parallels the concept of military staff [1], the people who serve directly under and advise the commanding officer. So in theory a staff engineer has directly delegated authority/trust under the VP or whatever of a large engineering area. And that reminds me of a quote from Rommel: Men are basically smart or dumb and lazy or ambitious. The dumb and ambitious ones are dangerous and I get rid of them. The dumb and lazy ones I give mundane duties. The smart and ambitious ones I put on my staff. The smart and lazy ones I make my commanders. [1]: https://en.wikipedia.org/wiki/Staff_(military) https://en.wikipedia.org/wiki/Staff_(military)
- nickm12 2y agoYes, very much this, and the article misses this critical job responsibility that distinguishes the sr engineer from the staff engineer levels. One of the responsibilities of a staff+ engineer is to be a high-judgement technical advisor to the leaders of large teams comprised of smaller teams. This role calls for high-level strategic thinking, talent development, as well as working with counterparts on peer teams to align the technical capabilities and strategies with the larger organization's objectives.
- msteffen 2y agoFrom the manager’s side, when one of the engineers on my team was senior and looking towards staff, the way I would explain it was “staff engineers are leaders of their teams, in practice whether or not in title. So you have to understand what the company is trying to do, what the team is trying to do within the company, and how to help when the team isn’t succeeding or the company isn’t succeeding because of the team. The more team- and company-wide problems you’re able to effectively fix, the higher you’ll go.” I liked the OP’s description of glue work because it matched my understanding of fixing problems. And I liked their discussion that glue work can’t be the only thing you do (I would argue that if it is, you haven’t actually fixed whatever problem created the glue work)
- misstercool 2y agoFrom my observation, staff eng is a person that has the capability to handle many type of tasks, like what described in the article: Eng, Idea direction, project management, risk management, cross-function communication. Not every eng can grow into this role. Many engs hate politics, talking and meetings. I felt only the large tech organization needs this role. For the small companies, engineer manager who manages less than 4 engs usually do not need a staff eng.
- robenkleene 2y ago> Eng, Idea direction, project management, risk management, cross-function communication. I'd consider everything on here an important for senior engineers as well. (Just putting this in numbers, if a company engineering is ~40% senior engineers and ~10% staff or above, if all the things listed have to go through that 10%, that's a big bottleneck.)
- debo_ 2y agoWhat is a staff engineer but a miserable little pile of secrets that keeps everything running?
- ilidur 2y agoReview: The article tries to define the staff+ role through the lens of 4 skills: technical, people, project, and product. The article then says that a Staff+ does all of them, both at architecture level and helping build up juniors in the team. Finally it describes them as glue between different aspects of the company. The article provides various blogs and a couple of books as reference for statements. Now onto my opinion. The Staff that I've met in my life are more of the solitary type, the Individual Contributor class of person who have decades of experience in their expertise and supporting skills. Yes they may have the responsibility defining the work for others, but that mostly happens as an architect. They herd seniors not mentor juniors. The article itself doesn't work hard enough to set the bar and explain to me why I should give the title to someone when in some companies these are just the responsibilities of a senior or at a stretch Principal. With extremely rare exceptions, this has become position inflation for the sake of looking good when going to VCs.
- ww520 2y agoStaff Engineer comes from the military. They are the advisors to the general. That means they have direct access to the highest office in an organization.
- spwa4 2y agoThe joke goes that it's a natural, unstoppable progression towards the end. Engineer Engineer 2 Senior Engineer Staff Engineer (You would not part an old man from his walking stick, would you?) Senior staff (now it's getting bad) ...
- jarjoura 2y agoFrom my cynical definition, it's a gate-kept level based on a senior engineer's actual sphere of influence within an organization. At any medium to large company, this role is usually the dividing line between someone who could be an EM, but doesn't want to be one, so instead given the same promotion (from HR's perspective) but get to remain in an IC role. "Leading without authority" It's impossible to define in any generalized measurable way, because it's whatever the organization wants it to mean at that moment. Usually, a staff engineer is hyper in-sync with the business needs and able to spot where the deficiencies are. They are also very diplomatic, great communicators, and people enjoy working with them. "Lifting you up, lifts me up."
- rpmisms 2y agoA staff engineer is Elon Musk. An engineering manager is Bezos.
- deleted 2y ago[deleted]
- fnord77 2y ago> this level requires deep technical knowledge in some specialty feels like every area that I've obtained deep technical knowledge has gone obsolete
- deleted 2y ago[deleted]
- techterrier 2y agoits a title that prevents a brilliant engineer who would make a terrible manager from having to become a manager in order to get a payrise. It's also kinda self feeding - why would you take on the extra hassle and responsibility of management without getting a payrise for it.
- sakopov 2y agoIn my experience -- I'm a staff engineer -- it's basically a senior engineer in a technical leadership role, but not a manager. I spend 50% of my time working on code and providing technical direction for seniors. The rest of the time is spent in architecture and planning meetings. I don't do 1-on-1s. I don't do personnel reviews. My manager handles all of that.
- indigoabstract 2y agoMy take from this article: so basically, what separates a staff engineer from a freelancer or company owner is mainly uncertainty or risk adversity. They must already have everything else it takes to succeed, since it's a requirement for the job. But the vision and drive to go in for themselves is not a requirement and if they don't have it, they will become a valued staff engineer. I'm not sure I buy it, but that's how it comes across, since a staff engineer is supposed to be blessed with all these wonderful talents.
- rsrsrs86 2y agoI’ve held the staff engineer title some times and when the company did so my role was to be a sort of backup if some team could not solve something. When I was not allocated to a specific team I collaborated with other engineers on specs and higher level planning. We also worked on internal libraries and tools.
- nickm12 2y agoThere are so many comments in this thread that amount to "it's just a fancy title". With respect, I think these comments (and also the original article) are missing the mark. Generally, the staff+ engineer role is accountable for the technical architecture and output of a large team over a long-term horizon. How large a team? It varies but I'd say at least 25 and often much larger. How long a horizon? As far as the organization can plan. They generally report to someone with a title like Director or VP and advise that person and their staff (typically managers and other staff engineers) or do high-level technical work needed, like evaluating a new technology or system that the team wants to invest in or depend on. The consequence of this is that the "day to day" of the role is highly variable based on what the org needs at the time. Sometimes it's hands-on development for tricky technical tasks, sometimes it's talent development, sometimes it's dealing with escalations or emergent issues. I think this high degree of variability plus the fact that a lot of the "staff meeting" work is not visible to line engineers contributes to the confusion about the role.
- gutt3r_punk 2y agoI’m a Staff Software Engineer and I don’t know what it is. This time last year my title was Analytics Architect Advisor. Before that I’ve had the Application and Solution architect titles. Between last year and now the company did one of those leveling exercises and wanted to match us with the industry. So now I’m a Staff Software Engineer. Almost feels like a demotion without my architect title, but I’m still paid the same.
- fragmede 2y agoHierarchy of Execution should help: https://phaven-prod.s3.amazonaws.com/files/image_part/asset/3073741/r4e62gEhHQPK4YyRKCFRP60zIaU/large_Hierarchy_of_Execution.png https://phaven-prod.s3.amazonaws.com/files/image_part/asset/...