And clients, by and large, are fine with it; it's just a cost of doing business.
Only because they don't know better. When I was working for a language/IDE vendor, we saw project after project that was 3 to 10 times larger than it had to be. (The project that actually needs more than 12 people in a language like Smalltalk is very exceptional.) Why is it like this? Because they are structurally motivated to waste the client's money.
Such companies facilitate a transaction. (Charging hourly for a consultant.) They siphon a little money off of this transaction. Naturally, they are motivated to hire as many consultants as possible. Basically, big consulting company sends people who give off the right competent business-suit vibe. They talk their to the customers, who are usually suits themselves and know almost nothing about making software first-hand, into thinking that their problems are deadly rocket-science and that they are just the uber-competent people to solve the super-hard problem. Then, they turn around and hire the cheapest resources they can (often fresh out of school) herded by a few politically adept managers, and hire them out for the highest mark-up possible.
I've also worked at a software product company that actually made most of its money from body-shop consulting. I know it was body shop consulting, because most of their people were hired (by the hundreds and housed in several football-field sized floors) out of local podunk community colleges and didn't know any better than to rewrite doubly linked lists every time they needed a collection. Yes, the product had probably hundreds of doubly linked list implementations in it. It was so bad that one client's IT group wrote what they called "super-link" and heroically rammed it through against amazing amounts of push-back from their management and from the body-shop vendor. What was this controversial thing? A linked list library.
[cue dramatic music]
Paying for junior programmers to fix their newbie linked-list implementation dozens of times -- this is "the cost of doing business?" I think there's opportunity to disrupt an industry here. On the other hand, the fact that it's this bad indicates that there are very powerful forces maintaining the information asymmetry.
EDIT: Let me put it this way -- what if someone tried to bill you big company hourly consulting rates for a dozen newbies repeated debugging their linked-list programming project?
>EDIT: Let me put it this way -- what if someone tried to bill you big company hourly consulting rates for a dozen newbies repeated debugging their linked-list programming project
Yeah, sure, you and I would hate that. Anyone spending their own money would.
But consulting companies target the publicly traded. the guy making the decision, there's no upside in it for saving money. It gets done or it doesn't. If he hires a big name, he doesn't get fired if it doesn't get done. If he goes with a no-name, that's not so certain.
I think this is a natural inefficiency that happens when the decision makers spend other people's money. they spend a lot of that money on insurance.
Of course, I'm just bitter because I failed as a body shop, in spite of having very good people who were able to immediately move in to other body shops, getting paid quite a bit more than I billed out retail.
To clarify, not all consulting companies are "body shops." In my thinking, that's a term for companies that focus on image, sales, and marketing, but then turn around and try to sell the maximum number of low quality "units" to customers.
There are other companies that focus on quality and delivering actual and not just perceived value. Those are not mere "body shops."
When I say "body shop" I mean a company that hires you, then rents you out to someone else, as distinguished from a "head hunter" which finds you for a company, but the company hires you directly and gives the headhunter a fee.
>There are other companies that focus on quality and delivering actual and not just perceived value. Those are not mere "body shops."
If so, they are providing actual value that I can not see. I have never seen such an agency consistently deliver good people.
Or maybe I haven't seen the right agency? as far as I can tell, only the very best of them pay contractors on time.
The very best body shop I've ever worked for or seen was one guy who never actually met me in person. But he paid me on time, and the guys he sent to the client were consistently technically better (and socially worse; or, at least, more weird. Remember, this guy hired me.) than other body shops.
I think the main problem with quality is that all other things being equal, people prefer safe jobs with benefits. Even the really top end body shops that give benefits usually don't pay you for bench time, so a full time job is safer, and generally more desirable, so the people who end up working for the body shop (or contracting house or whatever you want to call it) are people who, for whatever reason, can't hold down a full-time job. the inexperienced or otherwise less desirable.
Yes, there is a premium paid for contractors by the client, but that is nearly always entirely taken as overhead or profit. So long as the contracting house doesn't pay significantly more than full-time work, this disparity will remain.
Only because they don't know better. When I was working for a language/IDE vendor, we saw project after project that was 3 to 10 times larger than it had to be. (The project that actually needs more than 12 people in a language like Smalltalk is very exceptional.) Why is it like this? Because they are structurally motivated to waste the client's money.
Such companies facilitate a transaction. (Charging hourly for a consultant.) They siphon a little money off of this transaction. Naturally, they are motivated to hire as many consultants as possible. Basically, big consulting company sends people who give off the right competent business-suit vibe. They talk their to the customers, who are usually suits themselves and know almost nothing about making software first-hand, into thinking that their problems are deadly rocket-science and that they are just the uber-competent people to solve the super-hard problem. Then, they turn around and hire the cheapest resources they can (often fresh out of school) herded by a few politically adept managers, and hire them out for the highest mark-up possible.
I've also worked at a software product company that actually made most of its money from body-shop consulting. I know it was body shop consulting, because most of their people were hired (by the hundreds and housed in several football-field sized floors) out of local podunk community colleges and didn't know any better than to rewrite doubly linked lists every time they needed a collection. Yes, the product had probably hundreds of doubly linked list implementations in it. It was so bad that one client's IT group wrote what they called "super-link" and heroically rammed it through against amazing amounts of push-back from their management and from the body-shop vendor. What was this controversial thing? A linked list library.
[cue dramatic music]
Paying for junior programmers to fix their newbie linked-list implementation dozens of times -- this is "the cost of doing business?" I think there's opportunity to disrupt an industry here. On the other hand, the fact that it's this bad indicates that there are very powerful forces maintaining the information asymmetry.
EDIT: Let me put it this way -- what if someone tried to bill you big company hourly consulting rates for a dozen newbies repeated debugging their linked-list programming project?