site banner

Small-Scale Question Sunday for November 20, 2022

Do you have a dumb question that you're kind of embarrassed to ask in the main thread? Is there something you're just not sure about?

This is your opportunity to ask questions. No question too simple or too silly.

Culture war topics are accepted, and proposals for a better intro post are appreciated.

2
Jump in the discussion.

No email address required.

Until recently, one used to often hear people say that while software engineers had high salaries, they were actually only paid a small fraction of what they were really worth. If that were true, these mass layoffs probably wouldn't be happening, and they certainly wouldn't be causing stock prices to rise, as they did when Meta announced its layoffs.

Were the people who said software engineers were underpaid mistaken? Why did they believe this? Was it based on some naive calculation of profit per employee, ignoring the cost of capital, as is really common among people with no formal economics education?

In my experience, most people working in an organization don't know or understand the big picture. This causes them to both overvalue the contributions of their peers - since they can understand them - and undervalue the contribution of other parts of the organization - which they fail to understand the value they bring. See e.g. this exchange I recently had with @thomasThePaineEngine regarding what HR does for the company.

If you mostly talk to programmers, you'll get a distorted image of the importance of programmers and probably some denigrating image of everyone else - first-level managers, C-Suite, marketing, HR - who perform non-technical functions that are vital for the company's existence.

In truth, while (almost) every function in the org is vital, most people performing those functions aren't. This is true for every discipline, and as such includes programmers. At the very least 50% of the people in any one discipline could probably be safely replaced, with minimal overhead.

On the other hand, there really are some high performers who deserve a high paycheck for what they do. Not all of them get what they deserve, and that's a shame. Sometimes it's because those people aren't assertive enough, or because some company policy prevents them from getting a very high raise. Some other times it's because they're very valuable to the org they're in, but much less valuable everywhere else - which means they don't have leverage.

I think it's practically impossible for anyone to calculate "worth" in this sense. It's like when Marxists talk about "surplus value." Even for simple jobs like cashier—okay, we know we're paying them 12 and hour, now how can we know if this is more or less than their "real" worth? It's not clear to me market value is different from actual value.

Some software devs are in a position to make changes that save companies millions of dollars per year. I guess in that case you could make an argument that they are worth as much money as they saved for the company, but they could only do that once for one company. They can't go from company to company saving millions of dollars in infrastructure cost. They might not be put in that position in each company, and there might not be the opportunity to save that much money for each company. It doesn't seem right that they should capture all of the savings as salary year after year, so, given that and the stochastic nature of optimizations like this where it's easy to measure the impact in dollars, what's a fair salary? Probably near the range of salaries we have now.

Because the times are weird. Lots of tech companies went through a period of essentially free money reaching the apex last year with corona bux and currently collapsing. So hiring as many people as possible, starting moonshot projects and acquiring any remotely promising startup became a normal practice since everyone was trying to be the too-big-to-fail behemoth when the music stopped. Now they are reckoning with some of the excess and dumping dead weight.

There's a meme in software eng of the 10x programmer who does the work of 10 normal ones. In my experience, these people exist. But the 10x is more that the average programmer is lazy to a fault, i.e. the 1x is such a low standard that 10x isn't really all that.

So the answer is that the 10x are grossly underpaid while all the 1x are overpaid. And there's a lot more of the latter.

Its worth noting that the productivity of the 10x engineer doesn't mean he writes 10x the code or anything as such.

It might be that the "10x" engineer can just add 1 line of code that would take x engineers 10t amount of time. Or sometimes that one line of code could be incomprehensible to everyone but the 10x engineer, in which case even an infinite number of normal engineers wouldn't be a sufficient replacement of that one 10xengineer.

Viewing (engineer) productivity as something that can be measured is the wrong way to think of it. The correct way is "What is now possible with the addition of this engineer that was previously impossible?".

Einstein might have the raw intelligence of 50 toddlers, but even 50,000 toddlers couldn't do what Einstein did. IQ doesn't scale.


My hot take here is that every engineer is getting paid exactly what they should be getting paid. If your baseline calibration is the 10x engineer then yes some engineers should probably not get paid at all, and the inverse of that would mean the 10x engineer gets paid infinite money. Neither of those makes sense with even a minimal understand of marginal utility.

So, the market is probably much closer to the truthful salary than your intuitions.

"H1b slaves"

Yeah, won't disagree with the blatant one-sided class warfare. These dynamics are very salient to me given I come from a relatively poor and low status background and my technical skills are the only leverage I have, surrounded by nepotism and classism of the likes incomprehensible to most Americans. (I live in a shithole country).

I don't know which monster or Elder God symbolises this specific problem, it's not entirely Moloch. But whatever he is, I will forever live in his shadow, its etched into my mind, My (future) kids are going to go to the best schools and have the right tastes, because I didn't and I know the potent bullshit that comes along with not doing so.

Managers continue their wishful thinking

It's not that all engineers are not not fungible, some certainly are. But as you said, those whose work isn't are difficult to spot. A bad thing avoided can rarely ever be credited.

However this might be a good place for Hanlons Razor. A manager who doesn't know this is probably a bad manager. A manager (standin for all non technical people engineers have to deal with) might not know what a good engineer looks like, but he should know what a good manager looks like.

A good managers work is just an in-fungible as the good engineers. The fact that he might stay calm and hold the teams morale together by taking the blame himself when they are not working well together will not show up in the quarterly report.

Until recently, one used to often hear people say that while software engineers had high salaries, they were actually only paid a small fraction of what they were really worth.

Do you mean people here? Or just in people general? Can you link an example?

This is a bizarre statement to make.

Were the people who said software engineers were underpaid mistaken? Why did they believe this? Was it based on some naive calculation of profit per employee, ignoring the cost of capital, as is really common among people with no formal economics education?

If you put a gun to my head, and told me to make the best argument I can think of in favor of that statement, I'd go with something like: A lot of companies are bloated. You could fire a good chunk of the workforce, and be none the worse for it, which would imply you are overpaying the people who remain hired, and underpaying those that would remain if you got rid of the bloat.

...but of course, that doesn't necessarily mean software engineers would be disproportionately spared from being fired...

What would sales for a small startup look like?

Lets assume Startup X in making enough money to sustain 10 engineers and 1 sales person. So the 10 engineers hire an MBA. What does the MBA do?

I'm asking this because the activity of sales is completely opaque to me. I can intellectually understand that for a company of sufficient size, that work needs to be offloaded to someone who only does that. But for a small company I have a hard time wrapping my mind around it.

As David Mamet so artfully put it in Glengarry Glen Ross, [They] get them to sign on the line which is dotted.

The core competency is being able to be told no a zillion times while your pay depends on getting a yes and still sounding confident on the next call.

As an actual salesperson in the tech space, I think a lot of the other comments are misguided. Gone are the days of salespeople doing easy fun shit with clients like golfing or going to the pub to drink. Nowadays salespeople have to challenge their customers, essentially change their beliefs about what they know/need in their business.

Look up the Challenger Sale, it explains the history of sales well.

The Challenger Sale argues that classic relationship building is a losing approach, especially when it comes to selling complex, large-scale business-to-business solutions.

The idea is that sellers and buyers are in a perpetual arms race. Relationship building used to be the way to sell, and that's how it is now in the cultural consciousness. Unfortunately that idea is way behind the times. Excellent salespeople now have to be able to toe the line between pissing off a customer and convincing them that the salesperson is the authority, and knows better than they do, if they want to sell in a tough market or sell a lot.

For a very small company CEO and sales is often the same thing.

Otherwise it's not much different from a larger corporation except account management and front line sales will be the same person, and there won't be any support functions.

This is a point I keep coming back to, which is that many jobs without obvious arcane technical skills nonetheless require a skill, it just happens to be one which is hard to define.

Sales is a good example here. Sales people have to understand their clients, they have to understand how to take clients golfing or fishing or bring in a mobile barbecue trailer to their place of business, how to field client concerns- which necessarily entails being able to understand their product and then explain it in an 85 IQ way, because clients rarely have specific knowledge of your product- how to present as competent professionals representing their chosen field, and finally have to have good enough people skills to forge a meaningful connection with their client(this is usually but not always by discussing something completely unrelated to the product), move it into a discussion of the product, and then ask for the sale, all without the client noticing or feeling awkward. They also need to be able to get inside their client's head and figure out who to talk to.

All of this is a skill, it's a totally separate skill from engineering, and it's also a more or less full time job because sales guys need a lot of flexibility to respond to client needs which necessarily entails taking time out of doing some other job. All of these factors militate heavily against hiring an engineer to do sales.

All this schmoozing you're describing is generally a really inefficient/old-fashioned way of doing things actually. You'd still do it sometimes in high-level business development, or maybe high-end account management/partner management, but it's honestly very niche. >90% of sales people at big tech are not doing anything like this stuff.

There certainly is a minimum charisma/personability bar for sales, but it's lower than you'd think. The work of modern tech sales people is closer to, say, what those in the 2000s "seduction" community used to do: think about interactions in a very methodical way which is totally inappropriate for True Love but actually quite applicable for tech sales. Except with emails and video calls instead of, you know, bars and booze.

The key thing salespeople do that's difficult, is to cause an outcome they have no direct control over. Coping with that inherent uncontrollability/vulnerability is what most people hate doing (ie experiencing a lot of rejection despite possibly having done an objectively good job).

I'd also contend that outside Enterpise sales (this segment generally not the biggest money-maker for companies, though it's the most highly-paid and desirable role to sell in) it's rarely efficient to persuade a person; more generally a rep is looking to act as a catalyst for a course of action that genuinely is in a client's best interest, but which left to their own devices they might never bother to do/investigate.

I've heard it a few times, but only from a generalized "exploitation"/pro-labor PoV. I haven't seen any arguments that would apply to programmers but not assembly line workers (etc.), but maybe OP has.

Do you mean people here? Or just in people general? Can you link an example?

People on the internet say it often.