4 ms·
“Staff” has been a regular title for SV software companies for quite a while now. It is basically the next level past “senior”. Whereas a senior will normally
by opportune 4y ago
“Staff” has been a regular title for SV software companies for quite a while now.
It is basically the next level past “senior”. Whereas a senior will normally report to a line manager, staff engineers will often report to a middle manager and have managers as their peers.
A normal range for a senior is 5-10 years of experience (but still many people will have more experience than that but not be “senior” depending on company), whereas staff is 10+ years. Obviously these are not wholly sufficient conditions but they’re common buckets, especially for external hiring.
There is some title inflation going on where staff engineers are typically acting more as tech/team leads as opposed to senior engineers. IMO it’s a good title because “principal” has connotations of doing really big-picture stuff that may involve some resting on laurels. Also the bar for “principal” varies widely across companies - at Microsoft it’s the same as “Staff” at other places, at some places it’s like the top <1% of IC engineers, others are probably even more lax than MS.
- denton-scratch 4y agoThanks for explaining! The last time I was involved with job-title hierarchies (a long time ago), nobody was a programmer, everyone was an analyst. The people who did telephone support were called support analysts. I graduated to senior sales support analyst (roughly, doing random free work for the prospect, to close a sale). We assumed we were superior to "engineers": they were the guys that swapped-out hard disks and cards, twiddled the fuses to do performance upgrades, and lifted heavy boxes. We were better-paid. I think of them in boiler-suits, but actually they wore business suits like me. I liked the engineers. [Edit: I guess maybe the difference might have been that we (analysts) had degrees, and they didn't - they got lots of training on the hardware. The attitude "we" had was obviously degree snobbery. I say "we", because the engineers were regarded rather as I would regard a gas-fitter, by just about everyone.]
- pedrosorio 4y ago> I guess maybe the difference might have been that we (analysts) had degrees, and they didn't Interesting nomenclature given that in many countries you can't even call yourself an engineer without an accredited degree and being licensed by the proper regulator.
- denton-scratch 4y agoDoes that apply to "Software Engineers" in Silicon Valley?
- nickm12 4y agoNo. The US does not generally require "engineers" to be accredited and certified, but there are some exceptions, like particularly civil engineers.
- opportune 4y agoIt is kind of the opposite now, at least in the US/SV. Programmers are “Software Engineers” and many programming-adjacent roles like support are given titles like “Product Support Engineer” Personally I think Software Engineer is a better descriptor of what we do than Programmer/Analyst, though of course not everybody with the title is actually engineering systems.
- denton-scratch 4y agoWell, I never pretended to be an engineer; if bridge-builders did engineering the way software is built, news about a new bridge collapses would become boring. I call myself a programmer, or sometimes a "software developer". But even the latter term is fishy, to me; it has connotations of "research and development", as if there's something blue-sky and innovative about building a commercial website. Incidentally, my dad counselled me to NOT go into programming as a trade[0]. I ignored his advice, and I did OK. [0] Yes, I consider myself a tradesman, not a "professional". Professions are trades that are policed by a professional body; there are professional bodies for programmers, but hardly any programmers belong to those bodies, and if you list your membership on your CV, it'll probably reduce your chance of getting an interview.