Pensions were a massive burden (just look at the auto companies who still have massive pension liabilities), so it probably made a lot of sense back then.
But now that corporate America has eliminated pensions in favor of 401ks, the contractor/employee juggling just seems wildly inefficient for anybody who's not a janitor.
It feels like now its just a case of the sheep following the herd, for no one reason anymore.
Anybody I talk to about this gives a nebulous response that basically amounts to "Hell if I know, that's just the way everybody does it!"
When I was at MSFT, one of the orgs I was in was infamous for having over 50% vendors. On more than one occasion entire teams would be laid off when budget cuts happened.
It is bad for FTE morale to regularly lay off 100 FTEs, less bad to lay off 100 vendors.
The corollary to this is that it's often a lot easier for a manager to hire a contractor or use an out-sourcing vendor, even if they don't see the requirements of the role being any different than that of a "permie" and even if it costs the company more money.
Not when HR has to tell an Executive how much money they saved by hiring contractors in order to justify their jobs. HR is one of the most despicable departments in every company. They are company designated Stasi. They provide no value but whatever it is they want in order to justify their paycheck.
I think the thinking at more knowledge based firms is that They want to Keep their W-2 employees people they perceive to be the top performers, that they want to keep retain long-term, and that have long-term potential at the firm, if the position is viewed to be more commodity ther can put them on contract with a staffing firm, and not have save marginally, but really mentally keep track of who long-term vs. temporary / commodity
From 1994-1999 I ran ibm.com (whatever that meant). For most of the five years it was just me, one other FTE, and a roving band of 5-10 contractors. Any time I suggested converting the contractors to FTE I got slapped down, even though it eventually meant the loss of a lot of talent.
All I can figure is that the companies want to avoid long term benefits commitments. Healthcare. Pensions or 401ks, etc. They rarely saved money, the burden rate for my team was easily 30-50% more than my burden rate (not that the individuals got that largess, it usually went to their "manager" in the contracting agency).