Not so sure about that... Tech giants have the advantage of being able to pick from the best applicants out there. In the same way you could say "having these clauses is a deal breaker for me", it's very easy for them to say "NOT having them is a deal breaker for US".
The difference is that if you refuse the offer, you still have to find a jobs elsewhere (and I suspect that most giants will have the same clauses by default). But if they refuse the offer, there is already someone being interviewed that will accept the clauses.
Maybe I'm being pessimistic, but I think that unless these clauses are deal breakers for most developers out there, then this practice will continue to be done.
I bet most companies wish that was so. Probably it isn't, especially if you follow fashion and reject anyone who doesn't know how to invert a binary tree ;).
If you turn down a job because of a bad contract term the company is probably not going to have someone else waiting to jump on! This is one of those cases where market forces would probably indicate that it's worth negotiating but in practice companies will be reluctant for reasons of bureaucracy
There are lines of developers waiting for work?
Please let me know where I can find such lines. I could earn some hefty referral fees from the dozens of hiring managers I know who are desperate to find good developers.
You might get a waiver for a specific pre-existing project but probably that is about it.
I live in the UK and in the past when I've asked experts about this stuff they say: "It's an Americanism - don't worry about it - if push comes to shove a judge will think it's too strict and throw the entire thing out". Apparently in the UK there is some kind of rule where if a contract is excessively one-sided or otherwise onerous it can be voided. YMMV!
Maybe they filmed you while you read/interacted with the contract and required you to score high on a quiz about the contents of the contract?
Unless extraordinary measures were taken at the time of acceptance, there will be no real way to prove what the actual text was that you saw and allegedly agreed to. Presumably the text of the contract and the symbol of your acceptance are stored in some fairly standard database. Almost all computer data can be modified to look any way a party desires. How can we know that the contract Google presents as evidence was the exact contract you agreed to at that computer terminal however many years ago?