That's not about SW devs, more about data entry / dataset labeling / "turkers".
I did saw something that you described long time ago at a multinational company, where the employees were mostly managers and team leads, and most devs were contractors. But they gradually moved to a model were they have R&D centers in a lower cost regions were the developers are hired as local employees.
Advantages of hiring SW devs/engineers as contractors at big public companies:
1. they can be hired and fired with the short notice (elasticity)
2. the HR process is less scrupulous and/or bureaucratic (since it's not a permanent position)
3. usually contractors are still can be hired, even when there is a freeze on hiring new employees
4. it can be treated as a trial period for potential new employees
5. most contractors (i.e. those hired via agency, not self-employed) see employee status as a coveted promotion
6. public companies don't count contractors as employees but as service providers, so Revenue-per-employee / Profit-per-employee will be much higher