Citizens of the EU, EEA and Switzerland do not need a visa. They are permitted to enter Germany with a valid passport and take up employment right away.
Citizens of so-called third countries (not EU, EEA or Switzerland) generally require a visa for their entry. For stays of more than 90 days they also require a residence permit. A visa can be obtained from German representations abroad.
It may take four to six weeks for a visa application to be processed and approved and in case of visa for family reunification, even twelve weeks. Therefore, please apply for a visa early on, three months before your arrival at the latest.
There are only a few countries for which exemptions apply. A list of countries and the respective visa regulations can be found on the website “Overview of visa requirements/
If you are going to stay in Germany for more than 90 days and enter on a visa, you can take up employment right away, but have to apply for a residence permit at the local foreigners’ office before your visa expires. If you are going to stay in Germany for more than 90 days but do not require visa for entry (for example USA, Canada, Japan), you will have “tourist” status and are not permitted to take up employment right away. In order to start working, you first have to apply for a residence permit including a work permit.
Please note that a Schengen visa only covers short-term stays for touristic purposes. Holders of a Schengen visa are not permitted to take up employment. You are not permitted to change the purpose of your stay after entry or extend the Schengen visa to more than 90 days. Please be aware that the Schengen area is not equivalent to the EU!
A list of the Schengen countries can be found in the Schengen Agreement section on the website of the Federal Foreign Office. For example, a Schengen visa is not valid for Great Britain.