News for hackers. Stuff that matters.
Re:The other kind of staff software engineer by adamgordonbell on Friday May 13, 2022 @07:57AM (#31366376)
Author here. Working at a tech company as a developer vs working at a non-tech company are very different.

These two types of roles were called line vs staff when I took a business school class and I think the differences between these two types of roles have a big impact on what the job is like, even if doing the same type of work. It's a bit confusing because it overlaps with 'staff software engineer' term.

I recall hearing stats before that the vast majority of developers work at non-tech companies, but I almost never hear their stories. They are the dark matter of software developers.

Re:The other kind of staff software engineer by anoy8888 on Friday May 13, 2022 @01:10PM (#31370167)
I am a Staff software engineer in a consumer goods company. I got quickly promoted to it manger , head of it and then CIO. The tech is shallow but it exposes me to production, supply chain , sales , finance and pretty much every aspect of the operations. I report directly to CEO. We typically buy erp but small softwares , I choose to write myself so that I got some practice on coding. I go to home before 6 and enjoy my weekends
Re:The other kind of staff software engineer by oblio on Saturday May 14, 2022 @04:26AM (#31376084)
That's nice, I think the question on everyone's mind is: is your pay comparable to FAANG?
Re:The other kind of staff software engineer by anoy8888 on Saturday May 14, 2022 @11:30AM (#31378915)
Nope. Much lower . Fanng salaries are crazy. And I live in a developing country. But the salary is comfortable
Re:The other kind of staff software engineer by noduerme on Friday May 13, 2022 @09:14AM (#31367158)
I think it's an interesting distinction, line vs staff, but I don't think it encapsulates the role of a dev at non-tech companies like myself. Certainly what I do is mission-critical on a 24/7/365 basis, and yet, I'm not working for "Thoughtworks" or a company that sells my expertise as a product. But nor am I "support staff" in the sense that a minor malfunction could go under the radar; in fact it could destroy a revenue stream if I slept on a bug.

The thing is that every non-tech company is now in some sense in the tech industry, whether they mean to be or not; a large part of their business is done online. As opposed to companies that specialize in building tech for other companies, many of them have nickel-and-dimed their way into their own hardware/software infrastructure and the maintenance of that has become crucial to their normal operations, to the point where instead of business logic dictating changes to it, it frequently dictates changes to their business logic. That puts independent devs for those companies in a kind of catbird seat to determine which stacks and which infrastructure are going to drive the next round of growth. Some people (like my friend who's a salesman for Salesforce) call this "technical debt", but really it's bootstrapping and the better and cheaper you can do it through indy devs, the better your bottom line.

So it's quite different than the normal software world, but it's neither what you're calling a staff position nor is it actually a line position.

Re:The other kind of staff software engineer by drdec on Friday May 13, 2022 @10:50AM (#31368409)
> in fact it could destroy a revenue stream if I slept on a bug.

There are plenty of staff positions where incompetence could be very damaging or deadly to the business. E.g. in-house lawyers or accountants, even HR in some circumstances (failing to act in the presence of a hostile work environment). That doesn't mean it's not a staff position.

Re:The other kind of staff software engineer by tobyjsullivan on Friday May 13, 2022 @04:55PM (#31372453)
It sounds like you are conflating “support staff” with “inconsequential” or low-value work. That is definitely not what the author says.

By the definitions of the article, the head of engineering at a tech company, or even the CEO, are considered support staff. Their success and failures will 100% map to the success and failures of the company.

Re:The other kind of staff software engineer by ncmncm on Friday May 13, 2022 @05:29PM (#31372721)
The author isn't saying it, but business schools are.

The business school mantra is invest in profit centers, nickel-and-dime cost centers. If you are so unfortunate as to be at a company run by an MBA and are in a cost center, woe to you.

Re:The other kind of staff software engineer by BrandoElFollito on Saturday May 14, 2022 @05:12AM (#31376246)
This is what happens to Motorola IT.

Some wise exec had the vision to outsource it to an external company and then Motorola (that was already on the path to its death) realized how much was done outside of the process (which is typical for such companies, fortunately or not).

Suddenly your threat of whatever happening if your thing is not fine had exactly zero value against "raise a ticket". Everything crawled to a stop because of that and "golden tickets" were used.

This is one true example of why you should think 20 times before outsourcing something you do not understand.

Re:The other kind of staff software engineer by waych on Friday May 13, 2022 @06:12PM (#31373071)
The author called out that profit centers and cost centers are similar, but different, to the staff vs line distinction being made.

Why equate them as the same here?

Re:The other kind of staff software engineer by majewsky on Saturday May 14, 2022 @05:09AM (#31376234)
Because a significant number of managers seem to fall into the same trap, and it only takes one such manager in the chain above you for it to be painful.
Re:The other kind of staff software engineer by ChrisMarshallNY on Friday May 13, 2022 @09:46AM (#31367527)
> They are the dark matter of software developers.

That reminds me of an article that was linked from here, a couple of years ago, titled “IT Runs On Java 8”[0].

I worked for hardware manufacturers, for most of my career, and can report that it’s even worse.

That’s because the company does have an engineering culture, but one with drastically different priorities and processes.

Our software shops were expected to run in hardware patterns.

[0] https://vickiboykis.com/2019/05/10/it-runs-on-java-8/

Re:The other kind of staff software engineer by cushychicken on Friday May 13, 2022 @09:06AM (#31367067)
The 'line' vs 'staff' distinction makes a ton of sense to me. I've been reading Will Larson's blog about staff engineers and trying to articulate what sets staff engineers apart, and I think you've nailed it. "Staff" more or less equals "support", but on an executive or strategic level.

A problem I deal with personally is growing into "Staff" style work. I'd love to have bigger, wider impacts on a more strategic level, but I'm so damn good at getting into line work and doing a good job of it. (I also understand myself well enough to know that I like stabbing away at a technical problem way more than I like a VP or C-level planning meeting.) I also feel like I've gotten so good at doing "line" style work that there doesn't seem to be org pressure to promote me. My perception is that I'm considered too good on the "line"; I'd be a loss to the org to move up a notch. This could also mean that I'm actually not as good as I think I am, or can't see the forest for the trees. It could also be a sign of what a brutal struggle promotion is for "line" style workers. (More competition, less routes up the ladder.)

Is there a path to grow there, or am I just doomed to be a Principal Engineer? (Not the worst fate, "doomed" is probably too strong a word there lol)

Re:The other kind of staff software engineer by kleinsch on Friday May 13, 2022 @09:34AM (#31367385)
I don’t think I’d try to mix those things together. Same word, completely different things.

In this article, a new grad who works on basic HR IT tasks for a factory is doing staff work. That’s not staff level scope in the Will Larson sense.

There are plenty of “staff software engineers” in the Will Larson sense who create strategy for new product lines and launch them - “line” level work. Also plenty who work on DevX - “staff” level work.

Re:The other kind of staff software engineer by cushychicken on Friday May 13, 2022 @10:49AM (#31368396)
I think we'll have to agree to disagree. My takeaway from much of Larson's writing is that staff engineers can do the line work required to launch new product lines, but generally don't, because the impacts of their strategic work is much higher than that of line style coding.

They direct and advise on technical strategy, but delegate execution to others, because having the 10k foot view is typically more valuable when deployed on strategic opportunities.

Re:The other kind of staff software engineer by triyambakam on Friday May 13, 2022 @01:05PM (#31370110)
I think you're missing what the above is saying, i.e. that the featured article uses staff in a different way than Larson and most discussions around "staff".
Re:The other kind of staff software engineer by ZephyrBlu on Friday May 13, 2022 @05:12PM (#31372580)
Will and this article use "staff" in a completely different sense. The author of the post even acknowledges this difference in his HN comment at the top of this post.

Will uses "Staff Software Engineer" as the rank of Staff (I.e. one above Senior).

This article uses "staff engineer" not as the rank, but as the type of engineer (Line vs staff).

Re:The other kind of staff software engineer by ncmncm on Friday May 13, 2022 @05:36PM (#31372777)
"Line vs staff" is a fundamentally bankrupt concept, as much so as "combat vs logistics". Wars are won or lost on logistics, as Russia recently discovered.

Money wasted in a "profit center" has exactly the effect on bottom line as the same waste in a "cost center", and failure of a "cost center" can have just as large an effect on your business as in a "profit center". The only meaningful distinction is that the return on investment in a "cost center" is gated by the success of "profit centers".

But, woe betide if you find yourself in a cost center at a company run by MBAs. Get yourself to a profit center, or to a better-run, less MBA-saddled company.

Re:The other kind of staff software engineer by dvtrn on Friday May 13, 2022 @05:56PM (#31372938)
as much so as "combat vs logistics".

First time I've ever heard these two things talked about as a matter of "this versus that" and not "combat and logistics".

I'd hate to be a CO or NCO under a General who looked at the two as somehow adversarial or mutually exclusive in terms of planning and resourcing.

Yours is quite an interesting analogy, here.

Re:The other kind of staff software engineer by Spooky23 on Friday May 13, 2022 @07:35PM (#31373659)
You’re used to reading about western militaries.

Look at the Ukraine War… Russia clearly completely ignored logistics and failed in their attempt at a “modern” war and quickly degraded to a WW1 style artillery duel.

And yes, being a NCO or field officer in the Russian army is miserable.

Re:The other kind of staff software engineer by chrisseaton on Friday May 13, 2022 @08:18PM (#31373891)
> First time I've ever heard these two things talked about as a matter of "this versus that" and not "combat and logistics".

Not sure if you’re being sarcastic? Or haven’t read much about the military and are assuming?

Combat vs combat support vs combat service support (logistics) is a very common and very significant distinction to make and usually matters a lot for a great many things.

Has a logistics branch officer ever led a major Army? We had an artillery officer in the UK and even that was a talking point at the time.

Re:The other kind of staff software engineer by the_only_law on Friday May 13, 2022 @09:26AM (#31367297)
> A problem I deal with personally is growing into "Staff" style work.

My problem is that you seemingly get locked into it. The only people who want to talk to me are staff positions, the “line” roles do not want me at all. Technically my current role is at a tech company, but in a “staff-like” position and happens to be one of the least recognized teams invoice department because the work is among the least visible and a very tiny percentage of the companies income.

Re:The other kind of staff software engineer by roland35 on Friday May 13, 2022 @09:54AM (#31367641)
"destined" may be a better word than "doomed" in this case :)

I have a similar feeling, I like doing low level work but I also mentoring junior engineers, hopefully that mentoring will multiply my overall output over time!

Re:The other kind of staff software engineer by cushychicken on Friday May 13, 2022 @10:41AM (#31368275)
Hah, yeah, mental note to reframe as "destined".

I also really like the mentorship angle. It's really cool to watch someone grow, and how fast they do when given stuff that's just outside their current capability level.

Re:The other kind of staff software engineer by pbronez on Friday May 13, 2022 @07:50PM (#31373747)
I look for folks with this background to join my team at my Day Job. I need folks with a solid hands-on technical background who want to stop building things and start telling me which people SHOULD build and which people ARE building those things so I can give those people money.

It’s tricky because I need hands on experience but the desire to switch to a more strategic, executive-style role. Plus folks need to have the core communication and people skills to manage a complex set of stakeholders.

Hard to find good people, but the people I find tend to be very very good.

Re:The other kind of staff software engineer by wreath on Friday May 13, 2022 @10:13AM (#31367901)
> My perception is that I'm considered too good on the "line"; I'd be a loss to the org to move up a notch.

At a previous company, they moved a lot of their top performer “line” engineers to staff level and they all felt unproductive and eventually quit.

Re:The other kind of staff software engineer by RHSeeger on Friday May 13, 2022 @05:10PM (#31372567)
This is a fairly well known issue Peter Principle (https://en.wikipedia.org/wiki/Peter_principle)

> The Peter principle is a concept in management developed by Laurence J. Peter, which observes that people in a hierarchy tend to rise to "a level of respective incompetence": employees are promoted based on their success in previous jobs until they reach a level at which they are no longer competent, as skills in one job do not necessarily translate to another.[

Re:The other kind of staff software engineer by wreath on Sunday May 15, 2022 @02:12PM (#31389597)
Yeah sure but the point being these people never wanted this role and not only t company lost them as productive ICs to some other role but they lost them altogether (great engineers with deep domain expertise)
Re:The other kind of staff software engineer by icedchai on Friday May 13, 2022 @12:30PM (#31369639)
Yep. I've see this happen. People who are good at coding may actually want to code, not write "tech specs" and have review meetings all day.
Re:The other kind of staff software engineer by phkahler on Friday May 13, 2022 @09:43AM (#31367498)
Two thing. One, I always hated the cost center vs profit center distinction. These are accounting terms. It's super common in places that have embedded software (auto industry is close to me) where any manufacturing plant is considered a profit center, and engineering is often a cost center. When things are tight they tend want to reduce "costs" not realizing that engineering can also be seen as an investment in the companies future.

Second, as we move to more open source for infrastructure software (the tools used by staff) the above becomes more clear. SAP is charging for something with zero marginal cost, therefore it's perfectly valid to say they are renting software and hopefully using the money to develop the next version.

As the world moves to more open source I think you'll see fewer line software people, as the staff will do both support of the business and push some changes upstream (equivalent to what the line guys at sofware companies do). Once software is mature the rent model is really obsolete, but maintenance still has to be done by someone.

Re:The other kind of staff software engineer by kqr on Friday May 13, 2022 @02:06PM (#31370759)
> engineering can also be seen as an investment in the companies future.

In fact, when things are tight is the very moment you should go all in for R&D.

Let's clear up something simple people forget: when things are tight for you, they are normally also tight for your customers. In fact, that's generally how they become tight for you.

So you can forget investing in production and sales when things are tight. Things are tight because the world is in a period where your customers aren't buying. You won't change that by trying to sell harder.

However, small research projects are an incredibly cheap way to learn things and invent new technologies. When you're not encumbered by turning things into products, you can discover at a frightening speed. So you spend on research when the times are tough, and then when things go better you have a huge backlog of technologies you can apply right away.

Re:The other kind of staff software engineer by jonny_eh on Friday May 13, 2022 @04:49PM (#31372404)
> However, small research projects are an incredibly cheap way to learn things and invent new technologies

And recessions are the time when this research is at its cheapest.

Re:The other kind of staff software engineer by phkahler on Friday May 13, 2022 @05:47PM (#31372860)
Saw this in interview at an RV company. Their market tanked in 2008 and the invested in engineering projects. Bought competitors after the recovery by selling newer better product.
Re:The other kind of staff software engineer by rubidium on Friday May 13, 2022 @10:16AM (#31367933)
“ I always hated the cost center vs profit center distinction.” You may hate it but ignore it at your peril. It’s how the company sees you.
Re:The other kind of staff software engineer by robertlagrant on Friday May 13, 2022 @12:33PM (#31369697)
I think the issue with it is that finance get to dictate how a company's strategy goes, which may not work well in any industry that's hard to understand (e.g. tech).
Re:The other kind of staff software engineer by OJFord on Friday May 13, 2022 @05:02PM (#31372505)
> I always hated the cost center vs profit center distinction. These are accounting terms.

But that's how it's meant when people use it like that. They mean they want to do the work somewhere where it's (considered by the accounting department) a profit centre; not cost. That doesn't mean it could be another way for that company or that nobody should work there, much the same way as OP isn't saying nobody staff vs. line is right vs. wrong nor vice versa.

Re:The other kind of staff software engineer by gernb on Friday May 13, 2022 @03:00PM (#31371330)
It's crossed my mind in the past that there are companies where often devs run things and companies where devs are just support for the real business. I don't think I ever want to work at a company where devs do not run things only because my spoiled experience has entirely been at companies where they do and I selfishly don't want to just be support staff for the real business.

You might disagree with these examples but:

A stock trading company, IT stuff are support for the real employees, the traders. You have a trader, you have a trading company. The programmers are just support for them.

Animated Movies (even pixar). Sure, there are important software devs but the real staff at pixar are animators. They can ship animations with off the shelf software or paper and pencil. In house software devs are super important but at the end of the day if all they had was animators they could still ship animation.

Lawyer firms, Medical Facilities: Yea, they need IT staff to help run things but they can function with just lawyers or just doctors.

VS say Apple, Google, Facebook, Microsoft. No devs, no company.

Video Game companies used to be and probably mostly still are this way. No software devs no product ships. That might be fraying as tools get better.

Re:The other kind of staff software engineer by filoleg on Friday May 13, 2022 @03:26PM (#31371624)
Fully agreed with your overall position, but I got a small correction in regards to what you said about fintech.

While you are correct in that at a lot of finance companies, devs just act as "support for the real business" (e.g., Goldman Sachs). But there are others where devs and quants pretty much harmoniously run the show.

Look at something like Jane Street and their tech blog[0]. Their annual "what our interns have wrought" blog posts grab my attention like nothing else, and from everything I read coming from them, it seems like engineering there is not just "support for the real business". And there are quite a few companies in fintech like this, they just won't be flashed in the mass media due to their relatively small size, but everyone in the industry (and plenty of people on the outside) knows about them. Out of all things, they are known as one of the largest contributors to OCaml language and its ecosystem.

Jane Street was just a singular example, and there are other fintech firms of a similar engineering-focused culture.

0. https://blog.janestreet.com/

Re:The other kind of staff software engineer by bcj7393nsk on Friday May 13, 2022 @06:10PM (#31373054)
> but I got a small correction in regards to what you said about fintech.

Market makers like Jane Street are not fintech. They are trading companies.

Jane Street in particular is still very much gut-feeling point-and-click trading, compared to Jump and Citadel Securities.

Fintech companies are more related to payments: Stripe, Gusto, Plaid, etc.

Another difference is pay/TC: trading companies pay significantly more than fintech and MAANG, even for SWEs.

Re:The other kind of staff software engineer by munificent on Friday May 13, 2022 @08:10PM (#31373848)
Since you mention videogames. I used to work at EA and one thing I found was that the company culture was not as developer oriented as you might expect. Obviously, they invested a lot in developers, artists, and other content producers.

But the overal company culture and the upper echelons of leadership very strongly reflected EA's history as a software publishing company founded by business folks, and not a group of game makers who set out to build their own company. It was very much about producers, money, marketing, etc.

I used to joke that EA was in the business of selling disks and that the games on them were merely an annoying chore that they were obliged to do in order to get people to buy them. It often felt like they considered the entire dev team to be a cost center.

Re:The other kind of staff software engineer by vvanders on Friday May 13, 2022 @08:53PM (#31374098)
Ex-gamedev and this totally rings true.

We had one title I worked on where the "interviews with the dev team" was all just interviews with the external producers(aka PM who came in from the publisher to keep everything "on track").

Never happened to us but the best one I heard was that the publisher puts a clause in your contract that they get the source+IP if you go bankrupt(protect their investments, their taking huge risk, etc....). However about 2/3 through development when the studio is at peak HC burn they would start denying milestones for trivial things. One, two milestones go by and the studio burns through all cash, folds and publisher gets source+IP. Publisher then hires the dev team, who just lost their jobs, at a reduced rate(most gamedev a don't have great savings...) to finish out the game, avoids paying any royalties and picks up the IP.

Happy to be out of that industry, some really interesting technical challenges and driven people but the whole thing is similar to the recording industry in the way they exploit people and passions for their own gain.

Re:The other kind of staff software engineer by dvtrn on Friday May 13, 2022 @04:12PM (#31372067)
A stock trading company, IT stuff are support for the real employees, the traders. You have a trader, you have a trading company. The programmers are just support for them.

Not the norm, but I suspect it probably happens more than it should...but this is the sensation I'm feeling about "Devops engineers" in the last few years. Which, yeah, we could sit here and talk all day about whether or not "Devops engineers" should be a job title at all, because Devops is a "way of working" or whatever but that's kinda the self-fulfilling problem isn't it?

Devops was supposed to be a way of working and somehow it got turned into "Help Desk for the App Developers" in way too many environments and orgs, where too many great Developers with Operational capabilities end up being on the receiving end of "the devs are working on feature x, we need someone to do this, and we failed to really figure out our engineering resourcing needs, so uh, I dunno give it to the Devops team to deal with".

Re:The other kind of staff software engineer by Aeolun on Friday May 13, 2022 @04:23PM (#31372154)
Feels like the opposite to me. A lot of ops teams got turned into ‘devops’ teams overnight without any change in mode of operations, leading to skewed expectations from developers that actually know what the ‘dev’ part is about.

At least, I was fairly surprised by how our devops team looked at what I was trying to push onto them until I learned their origin story.

Re:The other kind of staff software engineer by dvtrn on Friday May 13, 2022 @05:51PM (#31372899)
Chesterton's fence is a real bitch, ain't it?
Re:The other kind of staff software engineer by jimmaswell on Friday May 13, 2022 @10:33AM (#31368171)
I work at a non-tech company. I mostly write/maintain unexciting components for a website's CMS, and any tertiary work around that. Easygoing, remote, great work/life balance, good pay. Often go fishing or work on projects like an ebike for a lot of the day, sporadically checking the work chat and tuning into meetings from my phone. On the rare occasion something really important comes up I'm always ready to jump in and give 100%. Established a good reputation and get great performance reviews for what I do. I'd probably never trade this for a job at Google et al with higher expectations and stress.
Re:The other kind of staff software engineer by escapedmoose on Friday May 13, 2022 @02:40PM (#31371117)
My partner and I both have similar roles to yours, in non-tech companies. Sometimes we both feel like we’re not being ambitious enough… but we walk into town for two-hour lunches together 2-3 times per week, finish household errands on weekdays, and never have to worry about money. The initial transition from “working hard” to “hardly working” was difficult to settle into, but imo as long as we can keep up our skills with all this extra time, it’s a very enjoyable lifestyle.
Re:The other kind of staff software engineer by iguanayou on Friday May 13, 2022 @12:12PM (#31369425)
I've got the same type of deal here. I just worry about skills getting outdated since I'm only working on an in-house system and doing mostly maintenance. But perhaps that fear is overblown.

I could easily hop to a gig with more responsibility and more opportunity for increasing my skills - but also more stress.

Re:The other kind of staff software engineer by jimmaswell on Friday May 13, 2022 @12:46PM (#31369864)
I feel like you'll never be out of a job long with a good work history, good references, and knowing your way around overall web development. Might not be enough for Facebook but it seems like enough for us.
Re:The other kind of staff software engineer by sdsaga12 on Friday May 13, 2022 @01:21PM (#31370282)
What type and size company do you work for? And how did you find it?

That sounds like a pretty ideal scenario to me, but I'm not sure how to go about finding similar positions.

Re:The other kind of staff software engineer by jimmaswell on Friday May 13, 2022 @01:37PM (#31370428)
I don't want to make myself too identifiable, but it's a fairly big place and I lucked into it more than anything. Can't give any specific advice how to find a similar job besides looking for remote listings at non tech places.
Re:The other kind of staff software engineer by sytelus on Friday May 13, 2022 @08:37AM (#31366760)
I had not heard the "Staff" designation before Google popularized it. I believe in early 2000s, the popular job prefixes were "Senior" and "Principal". The "Staff" prefix always confused me and gave me a feeling that if layoff ever came "Staff" will be protected while everyone else was expendable. I don't think Google adopted this prefix in the sense it was popular in militery.
Re:The other kind of staff software engineer by photochemsyn on Friday May 13, 2022 @09:23AM (#31367262)
It's been common in academics forever. A 'staff researcher' is someone who is typically affiliated with an 'organized research unit' which is basically a facility that a lot of 'principal investigators' utilize, and which are likely funded by overhead on the PIs individual grants, or via bulk grants. Benefits are not having to sit around writing grant proposals all day, but they're basically never first or last authors on papers, so it's not a route to becoming a department chair or famous academic etc. Can be more interesting as you get to work with multiple research projects, although if the PIs in the department are the petty tyrant types with inflated egos (more common than not) it can be ridiculously political (who gets time on the big machine etc.). Typically called 'supertechs' by PIs, i.e. 'not real scientists'. Training grad students in techniques is often part of the job, too.
Re:The other kind of staff software engineer by nunez on Friday May 13, 2022 @11:08AM (#31368632)
the incentive structure is reversed in academia. staff are closer to adjuncts than full-time faculty positions in compensation and benefits
Re:The other kind of staff software engineer by morelisp on Friday May 13, 2022 @11:09AM (#31368645)
More confusingly, at my first (tech industry) jobs the progression was Jr -> no modifier -> Staff -> Senior -> Principal, "Staff" being the first level you could start coasting at, "Senior" being the end for most people who kept developing their skills, and "Principal" for extremely autonomous / R&D roles / "Leads" with no actual teams. In this case, "layoff protection" was exactly what the staff level was for; you were also expected to hit it in 3-5 years.

Now it seems to be Jr / n/a / Senior / sort of equal footing for Staff/Principal depending on whether you're a generalist or specialist? And Staff might also be Lead but also not? I've read Larson's stuff and I'm still not sure the moniker is useful in a way "Senior" wasn't, except to the degree other titles have inflated. (I've seen three resumes in the past week for "senior" applicants with 2y experience or less restricted to a single stack.)

Re:The other kind of staff software engineer by justinhj on Friday May 13, 2022 @06:43PM (#31373278)
In my experience I think of Senior as an autonomous builder of a thing that they are told to build. Staff is the same but may work across multiple teams and help define the thing that needs building. They will usually have considerably broad experience. They get thrown at random problems nobody is sure how to fix. Principals extend that concept but may be industry leaders in a field or at least deeply specialised.
Re:The other kind of staff software engineer by MikePlacid on Friday May 13, 2022 @09:44AM (#31367500)
In our company the prefix Staff was adopted when the CTO team got tired of creating (mostly fake) managerial positions for good software developers who have reached the maximum salary allowed by the CFO team for a “Senior” software engineer.
Re:The other kind of staff software engineer by sytelus on Friday May 13, 2022 @09:51PM (#31374386)
Most NYC finance firms did this. You will find lot of AVPs (Assistant Vice President) who are mere software developers getting paid more than $125k base (during early 2000s). It was fun to suddenly have “Vice President” in your title.
Re:The other kind of staff software engineer by chrisseaton on Friday May 13, 2022 @08:43AM (#31366821)
Google got it from industry research labs, the industry research labs got it from the national labs, who got it from the military.
Re:The other kind of staff software engineer by j7ake on Friday May 13, 2022 @09:04AM (#31367051)
The term staff scientist existed before google (eg at National labs) and it probably was derived from that.
Re:The other kind of staff software engineer by _the_inflator on Friday May 13, 2022 @08:31AM (#31366699)
Reminds me of C Sharp developers until I joined a purely MS stack using company. Also a silent majority in my opinion.
Re:The other kind of staff software engineer by sciuromorpha_ on Friday May 13, 2022 @09:08AM (#31367090)
I saw a post on r/ProgrammerHumor a while back saying something along the lines of "why does no one make jokes about C# here" and the replies were all the same - there's nothing particularly funny, and all the users are quietly plugging away at their corporate jobs. Made me chuckle.
Re:The other kind of staff software engineer by jsmith45 on Friday May 13, 2022 @02:04PM (#31370730)
Yeah. It's not a language you come across a lot ouside of corp work, it largely avoided the absurdity of AbtractFactoryFactory and similarly overdesigned architecture that is a common focus of Java jokes, and it did not suffer from language stagnation for enough years to make the alternate languages for the VM feel like actually competition, as opposed to things that are mostly useful in certain specialist scenarios.
Re:The other kind of staff software engineer by astrange on Saturday May 14, 2022 @06:25AM (#31376561)
It’s popular in games now because of Unity and il2cpp. Even though it started as a Java ripoff, it’s infinitely better because it has value types.

But my impression using it in school was the standard library was even worse than Java. Where Java buries things under six namespaces of reverse domain name, C# buries them under what looks like random technical terms chosen to impress people.

ie there is no reason for System.Console.WriteLine() or System.Collections.ArrayList to be where they are. It doesn’t make your program work better.

Re:The other kind of staff software engineer by rendall on Friday May 13, 2022 @08:11AM (#31366506)
Really nice article. Well done.
Re:The other kind of staff software engineer by Jach on Friday May 13, 2022 @10:50AM (#31368418)
For me the more useful distinction has been: how close are you to the customer? If you never interact with them, not even indirectly through a team manager directly interacting with them, you're probably working more in a "staff" role under this categorization regardless of who is actually using the thing you're building. Admittedly this has problems -- you have to figure out who the customer is, for one, but it's legitimate for them to be either internal or external, paying or not. And for many companies (perhaps especially "tech companies" and tech startups) it often ends up being both via dogfeeding. I think the presence/absence of the customer in short feedback loops alongside those actually making and maintaining things dominates the distinction of whether it's staff or line. Focusing this way does help avoid the sometimes difficult distinctions of what makes a company tech or non-tech and how reasonable people can disagree over some particular example, whether what you're doing is really important to the company's overall success, or whether something is a profit center or cost center (I find it more useful to think first about whether an individual employee is an Asset/Profit or Cost, and note that being a cost isn't necessarily bad but also types can change over time).

Still, even customer proximity is not always a useful distinction, and certainly doesn't have to be a static one. I wonder if this industry resists distinctions among people or groups like these due to something at the root of the hacker culture that created it, like a realization/commitment to the idea that the only really worthwhile distinction is the bit.

I'm not sure I buy the dark matter idea. In the US there are only on the order of a few million software developers, you don't have to go very far down a list of FAANG/FAANG-like high paying tech companies to reach on the order of a few hundred thousand US-employed programmers at those firms (~10% of the market, already exceeding ordinary matter's 5% of the universe). Decide on a consistent definition of tech company in general and add in all of the programmers from them and it wouldn't surprise me at all if tech company employees actually exceeded non-tech, though I can see it being the other way too, just not being "vast majority".

As for stories from roles at non-tech places, most are probably told orally (especially to fellow employees at larger companies as cautionary tales of the crazy messes out there that make their own current insanity look pretty sane) but also remember that at any given time like half of the professional market has been in it for less than 5 years (how many of them got into tech-company vs non-tech-company roles?). And remember you may have read stories from them but not realized it because the actual work regardless of line/staff or tech/non-tech company distinction itself for programmers can be so similar, so it's not always clear whether some story on e.g. The Daily WTF is from which (though sometimes it is or you can guess).