If a company had a legal right to fire me whenever they wanted, and I had a mortgage or family, I wouldn't work for them unless they agreed to waive that right and give me several months notice (or severance).
"At-will employment is a doctrine of American law that defines an employment relationship in which either party can break the relationship with no liability, provided there was no express contract for a definite term governing the employment relationship and that the employer does not belong to a collective bargain (i.e. a union)."
This is the default employment relationship in the US. Most states, in particular California, have implied contract or good faith exceptions to this, where an employee has more protection, but the law is different in every state, and if you do not have an explicit contract, you should probably operate under the assumption that your company can terminate you at any time, without cause.
In Italy, companies, not the government, form the social safety net, because it's nearly impossible to fire people. This has created a huge mess - people are afraid to change jobs, people work for years doing stuff they're not good at or don't like, companies can't hire young people... It's a bad solution.
In general I think "at will" employment is a net win, but it's certainly not a friendly system.
I've experienced both sides of at-will employment (being "released to industry" because of a lack of funds and leaving a company for a clearly better job), and am happy to live with both. A savings account is protection against a company terminating my employment without notice.