I once talked with my friend, who worked in the field of virtualisation but in a proprietary software company, about work practice and code quality. His conclusion was that open source solution was not as well tested and organised as the proprietary one.
I actually agreed with him, because open source software seemed to be generally lacking investment. It's next to impossible for our project to have the equivalent amount of money invested in proprietary product. While many companies use open source projects for their products, they either don't have those projects being critical part of the products or have enough talents to essentially maintain their own fork if upstream projects go unmaintained.
Why should companies invest in upstream, if at all? Surely they don't want to easily give away their technology; on the other hand, they want useful stuff from upstream (contributed by other entities). Basically the incentive is to share as little as possible but gain as much as possible. The only concern is that their own fork might divert from upstream which then makes pulling in changes impossible. This is not insurmountable provided they have enough money to pay for the on going maintainence burden.
So I think open source software development model would only work if those companies who contribute to open source software projects are not directly making money off the software itself. Open source software can be a core part of their infrastructure (service provider), can be a basis of their offering (software company * ), can be a booster for selling their core product (hardware company).
Needless to say, open source software is important. It's utility now. As an individual who is enthusiastic in developing open source software, having relevant experience in the field should be enough to get myself a job. But then I am a bit pessimistic for open source software based business model. I surely don't want to start another utility company now.
- Note the line for software companies is a bit blurred -- one could argue that they are directly making money off open source software, but I disagree -- because the software is freely (as in beer) distributed, they can't or don't charge money for it, instead, they sell support contract.