Main problem is that the best developers don't go to TCS or we just don't see them.
However, if you're willing to pay for the quality (or you're a new client that they're trying to impress), you'll see some excellent people working for them.
But they won't be able to hire anything more than a few tens of people every year.
With several thousands of engineers coming out of colleges every years. Without mass hiring firms like Wipro, Infosys and TCS we are screwed. Its a fact nobody likes to admit.
Its also a myth that these companies don't have good work, I worked for one of them. If you are genuinely passionate, you can do far better work than what is portrayed.
And as I said, without these employers like these we would all be screwed.
Heck, without them doing all the work in the 80's and 90's we wouldn't probably even stand a chance now.
For all the years we had TCS developers working with the team, our developers stayed as developers and improved. Yet with TCS the status symbol there was to be a manager. We had a lot of churn over the years as the more experienced developers became with TCS, they stopped development and moved into a more "prestigious" role as a manager and stopped coding.
That's because just like every where in the world. Power centers and money paid is higher in the managerial levels than technical levels.
TCS alone, have 250,000+ employees..
In essence, several giant Java systems (+ Oracle usually).
But he surely can sell expensive systems to multibillion dollar companies and charge a lot of money, that's an important quality of his.
Did they contribute anything to free software? Did they contribute to the advancement of software development in any way (articles, libraries, books, etc?) Does Tata has the same level of employee attraction/retention as Google/Fb/Amazon or others?
There is almost no support from the government and people are either mostly lower middle class or poor. So its a little unfair to expect people like Richard Stallman or Larry Wall to have born in India.
It is possible in the US only because because bulk of work in building universities, infrastructure and exposure is already done by your government.
However when given the proper support Indians have always proved to be very hardworking people who go great heights.
Where does this leave us? Companies like these did a lot of work to put Indian developers on the global scene by first fighting a socialist kind of economy, building multi billion dollar businesses, training people and doing a lot of confidence building work for Indians.
May be the next generation you will see some genuine competition from India.
I understand Tata means for a lot of people having a job and a salary, and in India, given the opportunities Tata offers this is very important.
I'm not against people working there, what I'm against is the work model that is used in the majority of projects there. As others have said, some customers pay to have 'warm bodies' in the project.
As you said, maybe next generations will have more and better opportunities in India, let's hope for that and surely Tata and others are a step towards that.