This comes however with increased risk, as the contracts are usually limited to 6 months, and because of "Scheinselbstständigkeit" (appearing to be employed, even though you are contracted out to your own company, or DBA) companies are prohibitted from prolonging those contracts, unless they want to pay horrendous penalties.
All is good and great, I understand why those laws were put into place (mostly to protect unskilled workers, like drivers or manufacturing line workers from being forced to sign more beneficial - to the company - contracts instead of work agreements), but the software engineers, with the employment gap will in most cases easily find a replacement job somewhere near, yet the companies necessarily undergo a brain drain, and the know how gets leaked out.
Just imagine, you need a couple of weeks to be able to actually productively add features to the product, then take a bit time off, some workshop, a ton of meetings, and basically your 6 months are off, and unless your client is willing to take the risk, your starting your offboarding - just mabye transferring all that you had learned in the meantime to somebody else.