Germany - Work Permit
EU nationals do not need a work permit to work in Germany. Non-EU nationals need a work permit.
In order to obtain one, you must first have your residence permit (see Residence card). Depending on the type of work you wish to do, there are different types of work permits, and different procedures.
For a contracted position, the company wishing to hire you must write a letter to the local "Arbeitsamt" employment office stating that you are the only person who can possibly fill the job. If the Arbeitsamt is not satisfied with your prospective employer's description of your unique capabilities, then they will send the employer a list of candidates that they must interview. If the employer chooses to reject any of these candidates (in favour of you) then they have to explain why to the Arbeitsamt. Because of this, many companies are presently unwilling to take on employees without a work permit.
If you wish to work as a self-employed person in a trade, you must register with the "Handwerkskammer" Chamber of Trade. To do this you must prove that you have completed the relevant apprenticeship, or you will be required to pass a German exam. To avoid having to sit the exam requires a copy of your qualifications and a certificate of experience.
For this certificate you need to be able to prove that you have over 6 years' experience in your trade.
To work as a free-lancer you need a separate permit "Gewerbeschein" for each field you wish to work in. (Teachers do not need this permit.) To apply for the permit, the company you wish to free-lance for must write a letter to the Landeseinwohneramt saying they wish to employ you. Further scrutiny of your unique abilities is not needed for free-lance work, yet it can take a few months to process such a permit.