> Negotiate hard on the salary.
Recent CS grads (who are the most common startup workers) don't really have the leverage to the do this. And experienced (or, ugh, "10x") developers can probably always get a better deal at a big company.
I feel like "working for a startup is almost never economically rational" is the elephant in the room that everyone is trying not to talk about. (As for me, I do take my own advice and deliberately work for BigCorp, but when I've tentatively brought this up to others I'm usually met with hostility so I don't do it in person anymore)
I've seen all sorts of games. One of the most common, which is surely a violation of fiduciary duty but no one cares to do anything about it, is when the VCs with 3 of 5 seats on the corporate board negotiate a sell-out that matches, down to the dollar, the amount of money needed to make the VCs represented by those 3 seats 100% whole, and not one dollar more.
In order for options to pay out, there are bunch of hurdles that all need to be cleared in a row, with no mess-ups in between, and many of them are not in your control at all.
You are just a naked call option for these VCs-unlimited upward potential, limited capital loss. It make sense for VC's to spray and pray to see what sticks.
I don't want my life to be a fucking call option for somebody to fulfill their ephemeral desires for more wealth with diminishing returns and benefit to society.
If you don't have the cash on hand to pay competitive wages, you should not be hiring the employees.
I would never again work at a startup for the unilaterally renegotiable lottery tickets they are somehow allowed to call "options", instead of salary. If they really, really needed to compensate me with something other than cash, maybe I'd do it for actual stock and retained copyrights in my code. Maybe I'd do it for bonds with a coupon rate 10% above t-bills. But they would definitely also have to do something to polish my resume in case the company fails early. Overblown job title. Gratuitous supervisory authority over someone not needing supervision. Authority to do a side project using a rising-star tech stack.
If you can't give me cash, you have to give me something of equivalent value. If, in the long run and in aggregate, people who have ever been startup employees are earning less than those who were always employees of established companies, the startups are simply not compensating appropriately. And in that case, "don't work for startups" is the correct advice.
It would be easier to support the claim that most startup employees earn less over their career than those who only ever work for BigCorp.. Though I've never personally seen data suggesting that's necessarily true. You have to consider length of career, job and city mobility, career mobility, etc.
"Economically rational" does not mean BigCorp > Startup career pay.. it means it's not rational to accept startup career pay. That's a much harder statement to defend (honestly, I don't think it's the case).
Startup compensation, however, is a roulette table you have to work to sit at.
Whether they balance unpaid overtime/stress, however, can be iffy. If you can get in without the bad parts, though, it can be good (but that's less start-up and more small company).
There are many other reasons why a startup would be attractive to some people. Professional autonomy, personal growth and learning, different work culture to name a few. For many people, once you're earning "enough" to cover your expenses the pay difference between employers is worth the trade off.
In the end, unless you're founding the company yourself you're always working "to make someone else rich". That's completely irrelevant to your personal choice of employer.