People are "ok" with it because up until very recently software jobs are heavily geography-centric. Microsoft and Amazon collectively own the bulk of the tech industry in Seattle, and both have similar policies. People signed these contracts because there wasn't much other choice.
In places with more diversity in tech employment (say, Silicon Valley) you will find less bullshit contracts like these, since there is more competitive pressure between employers. In Seattle it's Giant BigCorp A or Giant BigCorp B, with a smattering of smaller tech companies (or satellite offices, see: Google).
In the contracts I've seen with these kinds of terms, usually there's a way to disclaim things you've already worked on, such that those specific items are excluded from the contract. So, for example, if you were working on some open source lib already, you can enumerate it in the contract and that won't be covered. Of course, this still greatly limits your freedom to start new things while employed.
It sucks. It's a blight on our industry.
In places with more diversity in tech employment (say, Silicon Valley) you will find less bullshit contracts like these, since there is more competitive pressure between employers. In Seattle it's Giant BigCorp A or Giant BigCorp B, with a smattering of smaller tech companies (or satellite offices, see: Google).
In the contracts I've seen with these kinds of terms, usually there's a way to disclaim things you've already worked on, such that those specific items are excluded from the contract. So, for example, if you were working on some open source lib already, you can enumerate it in the contract and that won't be covered. Of course, this still greatly limits your freedom to start new things while employed.
It sucks. It's a blight on our industry.