First of all, if you go looking for market inefficiencies in tech hiring (across the board, not just at startups), you will find lots of them. Software development hiring is folkloric; traditions handed down from Sr. Mgr Software Developer to Associate Developer tracing back to the beginning of time (1982 or so).
Second, regarding the talent pool available to employers, two factors confound the analysis: the first and by far the strongest is stated preference vs. revealed preference --- to wit, good developers will make large concessions on comp in exchange for working at companies that seem more fun; the second is that software developers are as a demographic cohort terrible at negotiating.
> software developers are as a demographic cohort terrible at negotiating.
Yep. It's no real surprise that coders are mostly men with poor social skills, while HR is mostly women with good ones, most of whom those men find attractive. Classic Valley symbiosis.
HR people do not as a rule do salary negotiation. You have to be a particularly "special" degree of bad at negotiating to end up out-negotiated by an HR person.
I am sure there are companies that, by outward appearance, do have candidates negotiating with HR people after the interview is over. Step 1 in handling negotiation with those companies: realize that you are not negotiating with HR.
This is a weird bit of advice. From my experience I have to assume you're saying "HR isn't the decision maker when hiring in elite tech companies" but the fact of the matter is HR/Recruiting is going to present the offer to most people, and it takes a career worth of preparation to move the conversation beyond that offer.
Well, I'm happy to have moved you a "career's worth" of wisdom forward in a single comment. You aren't negotiating with HR. HR does not know what you do, and HR's best idea of what you're worth comes from those ridiculous salary survey sites.
This is a cogent point. HR may be your point of contact for your salary negotiation, but they are not the decision maker or barrier. Ask for more money and they will ask someone else for more money on your behalf. HR is almost never the enemy in less-than-huge companies (and even then only moderately at worst).
I've worked for 2 large technology companies. The first was a big one down in Southern California and HR there was as you describe.
The other was a big one in San Francisco, and their HR was insanely powerful... for some reason. It was quite a shock to me but to a lot of others used to Bay Area startups they made it seem like the norm.
So I guess my point is that not all HR is alike and there is probably some truth to this HR negotiating business.
But they are the ones having the actual conversation and working the rhetoric to close a deal. They aren't Deciders, but they are Negotiators ("salespeople").
Most of the software developers I've worked with in my career have had very good social skills, those that didn't, were poor developers as well... So are they bad negotiators because of they lack negotiating ability, or actual ability?
Is there data on the social skills of IT, HR, Gender breakdown etc... Perhaps what you are refering to is a U.S (?) phenomenon?
The correct answer is that developers do not have, and are resistant to, unionization. As individuals they'll always have very little bargaining power, and most developers are pretty easily replaceable (especially before they're hired).
In other words, you're telling me both people and organisations are imperfect?! Shocking.
Sarcasm aside: really, it is shocking how SW engineers could come to think that any of the inexact, data-free, human-judgement-driven sides of business are optimal--simply from the theoretical argument that a market is involved. A little economics is a dangerous thing.
I suggest starting from the assumption that everything can be improved, unless proven otherwise.
Second, regarding the talent pool available to employers, two factors confound the analysis: the first and by far the strongest is stated preference vs. revealed preference --- to wit, good developers will make large concessions on comp in exchange for working at companies that seem more fun; the second is that software developers are as a demographic cohort terrible at negotiating.