Regarding the worker rights: Not only do you get a decent amount of holidays (around 30 in most companies, with additional free days for parents), but you can also take up to 14 months leave after childbirth (both father and mother, but combined not 14 months each and one person has to take at least 2 months to get the full amount). Your company has to offer you the job if you come back.
You can't get fired on a whim if you didn't do anything wrong. Most jobs will have to give you a 3 to 6 months notice (depending on how long you were working there).
Companies have to pay at least 8,50 Euro per hour.
The law says that you are not allowed to work more than eight hours a day, however exceptions are possible to some extend.
It's generally a good idea to have longer periods of job security but for someone who can (in theory) get rehired quickly the laws can get in the way, too.
There's also inflexible stuff that gets in my way quite often. For example I have to rest for 11 hours before I can work again and can only work 11h/day without bureaucratic hassle. I get that it's meant to fight abuse but I'd prefer to have an easy way to waive these rights.
I would totally expect this to happen for basically every minimum wage job if you could waive your rights like this.
An easy way to waive those rights would mean that effectively no one would have those rights. Quite frankly, it is better to err more on the side of caution in these things. Work will still be there tomorrow.
I think some of this could be solved with different regulations for different kinds of jobs. More "thinky" jobs probably need a lot less regulation than say manual labor.
If you work in shifts, some other rules apply but at the end, you cannot go over the 48h/week on average and have special "recovery" days.
But in Germany you have a lot of agreements for let say metal workers or people in the chemical industry. In some cases, the official week is only 37h or even 35h long.
I'd say that other than civil servants, people working in the "Handwerk" (a German concept that includes various industrial jobs and skilled crafts, literally "manual labour" but often implying specialised expertise) have it best as they typically work under union contracts and have fairly tight regulations.
OTOH loan workers tend to have it worst: loan workers bypass a lot of the labour laws and often get all of the drawbacks of being self-employed without the benefits of actual free agency. They're often hired to replace permanent employees, so they're sometimes met with hostility from their colleagues and they have no job security and often no way to transfer to a permanent position (both because that's often exactly what they're there to replace and because they're often under non-compete contracts that forbid them from doing that).
Agency work also tends to be pretty bad, especially for designers: you're often expected to work unpaid overtime and there is a lot of pressure keeping people from exercising their rights or asking for a raise. I've routinely seen designers work weekends and massive overtime (think 12 hours, not 10) for months on end. The worst story I heard was of a 32 hour day (working on a regular day until the next morning and then leaving "on time" the next day).
Note that not every agency is like this, but they exist and it's taken for granted that you have to "eat dirt" if you really want to work in the industry. This especially used to be a problem with internships but thanks to some changes to a few laws interns have it pretty good these days (e.g. "voluntary" interns have to be paid minimum wage, making them a lot less cost efficient than they used to be).
Also, of course, almost none of the labour protection laws apply to leadership roles (typically C-level jobs). The reasoning behind this probably being that if you run a company having to take time off can get in the way. Sadly this also means there are some strange corner cases for founders (e.g. you get almost none of the maternity protection).
It's probably hindered a bunch of people from starting companies in the region and makes getting a job much harder because employers have to be extra careful.
By tradition, first 6 months of employment are on probation ("Probezeit"), with 2 weeks' notice possible on both sides. Companies can opt out of probation time, though, if they want.
I very much doubt it. If you were really wanting to start a company, you're not thinking, "I'd do this totally awesome thing! If only it wasn't so hard to fire people!"
You quickly realize that because of investment money and running a company, that running it in germany isn't that great and you move the company to the USA.
It happens more than you think.
Another option is to hire someone who is self employed. It is a popular method since the crisis. Fire an employee, then hire him back. However, if the employee only has one client, you can go to court and prove that in fact nothing has changed, and the judge can reinstate your old contract. I don't know if this happens a lot, but it has happened.
When you have a fixed contract (no end date) and work somewhere for five years, the law says the employer can fire you but has to pay you five months salary. Because of common law practice, this will normally be doubled. He has to prove that he has good reason to fire you. This is in general too little work, or malpractise, or distrust or something that disturbed the work relationship. If this can't be proved, the only option is negotiation about extra money to leave. If they can't agree on this, they can ask a judge. That will cost money as well, so most of the time that path is avoided.
Only in the case of theft or when you're drunk at work, say bad things about your boss or company, can they fire you right there and then without pay. Still they have to prove that.
When unemployed, you can get unemployment benefits, normally 70% of your last salary (average over last 6 months), but you have to search for new jobs and prove that. This will last maximum 24 months, after which you go into welfare, which is super, but little money and you have to sell your house etc.