I think that from the recruiter's point of view, there is an argument for either side. I really think that the employee that has been with multiple companies is often more 'talented' overall but they are usually less loyal.
In software - It's highly desirable for an engineer to be adaptable - Changing companies is a good way to expose yourself to different environments/perspectives (and therefore become adaptable). It's hard to get the same range of experiences from a single company.
This is especially true if you want to become a technical manager/lead (or CTO/CIO) - You need to be exposed to different approaches so that you know what works and what doesn't. You need to have a clear picture of what constitutes a good engineering culture vs a bad one.
In software - It's highly desirable for an engineer to be adaptable - Changing companies is a good way to expose yourself to different environments/perspectives (and therefore become adaptable). It's hard to get the same range of experiences from a single company.
This is especially true if you want to become a technical manager/lead (or CTO/CIO) - You need to be exposed to different approaches so that you know what works and what doesn't. You need to have a clear picture of what constitutes a good engineering culture vs a bad one.