I am not a data scientist, but a software developer in Germany. At least in software development, in house developers usually earn way more, than developers at service companies or lended workers (Arbeitnehmerüberlassung). That is why there is the impression of first and second class jobs, because why would you take a job which pays considerable less?
However I know a bunch of people who are skilled, but just didnt get the opportunity to an in house developer job. So they first worked at a service company and waited for their opportunity.
That being sad, in my experience, it is not a blow out to work at a service company or regarded as bad work experience. It is just more impressive working as a developer at a big DAX company. It is however much better to take on any job related to your field than not to work.
Edit due to comments:
If they are willing to pay a competitive salary, they are pretty likely not a company, who is just used to outsource certain tasks because they are cheaper. They are much more likely a company with certain knowledge/skills which have a market value.
In my opinion, you dont ruin your CV, no matter what job you take (as long at it is field related and matches your skill level). If you have some good reasons to take the job (e.g. commute as you mentioned), then I do not think that a potential future employer will look down on you. Just make sure, they have projects which match your interests.