> you'll never get notice you're being fired
In Europe you will. Or you’ll be sent home with the respective 3 months in salary anyway, but generally you work your 3 months.
To be fair, I’ve never seen a notice period longer than a month.
For many positions, the person isn't a positively contributing member for three to six months. A positive ROI on the expense of hiring them isn't realized until much later. Having signing and relocation bonuses be paid back if the person doesn't stay for a year is quite reasonable in that context.
"We didn't pay for your relocation to X just so that you could change jobs after a few months."
Two weeks notice is a courtesy.
The much maligned PIP is often a hint that you're going to be let go. Rarely is there a "you're being let go today, pack your desk" unless there is cause (the one time I saw it was because someone was using their desktop support credentials to snoop on the CIO's computer - that one they weren't even given the pack your desk) or the company is in trouble (and in which case, things like the WARN period kick in).
It's certainly a crushing feeling to be chained to a job. Even worse are these stupid 2 weeks or unimaginable 3 months notice. As everyone says- you'll never get notice you're being fired. It'll be quick like a mob hit.