I have some friends who were in an Indian outsourcing company which shall remain nameless. One of them described how they had an "A Team" which was made up of smart, sharp individuals. When they wanted a contract, they'd send this A-team to really impress the clients. Once they had the contract in hand, this A-team would be tasked to get the next contract, and replaced with run-of-the-mill average (or even below average) talent to save on the cost. Rinse, lather repeat.
I don't think that's an Indian outsourcing issue, so much as an artifact of the dynamics of the consulting environment.
Your above average talent gets trusted with high stakes, client-visible scenarios like new business development, RFP pitches, and high-visibility fire fighting. The roles tend to be a combination of subject matter expertise, solutions architect, client management, and sales.
Once you have a contract in hand, theoretically the engagement is structured at that point. It no longer needs the independent competence of members of your A Team, but rather competent project/program management, client/engagement management, and execution resources.
That's the stage where a lot of problems get introduced, and it's not always a result of cost cutting or profitability measures. A lot of it comes down to operational competency (both for the agency and the client), as well as the structure of the contract itself.
The biggest thing I've learned in my time consulting is what to do (and not do) when structuring a contract for a consulting/outsourcing engagement. Everything else cascades from there.
> That's the stage where a lot of problems get introduced
At enterprise scale it comes down to how well the consulting team can understand and worm their way into the business processes. They need an inside ally who can enable the consultants to navigate the silos, and not just some internal PHB barking orders.
Every enterprise org chart has a different flavor of dysfunction.
I worked at a consulting/product agency where the requirement was always to work at the same place as the client, and to have a client stakeholder embedded within directly within the team. The projects that felt the most successful were the ones where we got these requirements really right.
I think the problem stems more from the nature of technology itself.
I run a marketing consultancy. I can't really offload my work to cheaper talent because my deliverables can be easily evaluated. Good writing and good design, after all, are universally accessible.
But unless you're a programmer, you can't really make out good code from bad code.
It's not only that. The main problem is that it's virtually impossible to come up with specifications, which are precise enough that they can be implemented 1:1.
Outsourcing companies will aim for the lowest common denominator, which the contract allows and with which they can get away with.
Case in point? I can exactly tell you what the specs for the first time reporting system I worked with at MajorCorp said, without ever having seen those specs:
Must be able to enter hours
That's exactly what we could do. Enter hours. Not minutes, not ten minute intervals, not quarter - or half hours, no; hours.
When I get such a spec I hit back with questions. Send that to an outsourcer and they won't see any need to provide a yota more than what the spec says.
In other words: You entering a world of pain, which looks good on spreadsheet but really only that.
> But unless you're a programmer, you can't really make out good code from bad code.
That's not always true. We recently dropped a small consulting company (~20 people, US based) that was awarded a small (but not necessarily trivial) project and really bungled things up. The end product was delayed numerous times, noticeably sluggish and riddled with bugs. It would have been an easy win for this company and would have led to more recurring work, but for whatever reason, they decided to assign the project to a single junior programmer without any oversight.
I worked for a company who outsourced a few times and found that the cost was actually higher in some cases and as you describe there would often be immediate turnover to folks who were far worse, and at worst a liability.... and even those guys would turn over all the time. They'd try another company, same result.
Most confusing was when things were straight horrible ... there was nothing anyone can do. I don't know if the contracts say "you give us your money and just deal with whatever we give you" but that's how people would act. The outsourced company could do all sorts of absurd things that would have serious consequences had it occurred with domestic support / new procedures and etc. But when the outsource company did it and it was as plain as day "nothing we can do about it".
That's part of the business plan of most consulting busineses and especially of big name consulting companies.
Principal consultants, who actually really know their shit, are called in for the contract negotiations. Those are of course not the folks, which you get to work on the project.
The actual contractors are usually rather junior, often fresh of a plane and range in quality from quite good to absolutely abyssimal. With big name consulting companies they can still be billed at a daily rate of 2K +.
In other words, and less politely put, the consulting business is pretty much a bait and switch.
This is a pretty standard approach, not just an "Indian outsourcing company thing".
eg I used to do contract work with Fujitsu some years ago, as one of the implementation people in their projects team. We'd get things set up and working well, document the heck out of it for the ops team, and then hard it over to said ops team for daily running.
It's done this way so the more experienced / creative solution finding types ;) (eg expensive) can be engaged to solve the initial problem + implement the solution. Once that's working it just needs people to run the daily playbook and look after minor issues that crop up.
I worked with some other outsourcing companies from other part of the world, and seen exactly this pattern: The initial team was sharp and smart, to gain stakeholder confidence, they stayed for a few months, setting up demo and prototype. Later they would slowly bring in other team members and started to withdraw themselves from the project. Eventually, those A-team was gone.
Those late-joiners had absolutely no clue on what was going on, and also didn't have the competency at all to hold the helm. Result? A much mediocre rewrite of the whole platform which never fulfilled the requirements.
They problem is that the "A team" can impress clients by cutting corners, rushing stuff and applying fairly generic solutions that won't work long term as requirements get more specific and more data goes in. Then they've moved on to new things before having a chance to learn from their mistakes.
This is the story of literally every single B2B service company in every industry I have dealt with (media, IT, ad-tech, analytics, catering)
Basically any industry where manpower cost is the biggest cost and you have a fixed-ish price B2B contract, the only way to squeeze out a higher margin is to lower manpower cost.