I'm interested in the differences in work flow, code management, tools you might be expected to be familiar with etc. Not stuff like "your code will need more rigorous testing", or "your code will need to be more readable/maintainable" or "getting paid"! These are obvious I think. Also, I don't really want a list of the pros and cons of one way or the other.
So I guess I'm more interested in how the process of writing a program changes and the tools used to facilitate that process when you're coding professionally rather than for recreational purposes. Also, are there any specific tools which are common/ubiquitous in commercial C++ development which are not used by recreational coders very often? In particular, how having more than one person writing a program affects the process.
If anything specific to C/C++ on Unix is particularly pertinent please mention it.
I hope my question is clear. Thanks