I am a developer living in Canada (emigrated from India a long time ago) and I have heard of and seen many outsourcing horror stories. So I wouldn't say most Indians adhere to "industry standards" in code-quality, etc. They are just in it to make money and many times do a very shitty job. Also, communicating with them isn't very easy. Most Indians think they speak fluent English, but I would say in my experience it's business level, not fluent. And ditto for cultural sensibilities and work ethics. I have first hand experienced many new-comers just flat out lie on their resume to get a job and act like it's not a big deal.
The problem is with "outsourcing" in the first place; the incentives are totally different. I'd like to hear from Western companies who've hired remote workers in India... I used to work in for a non-profit that is based in the U.S. but has its dev team in Poland. I think it is an open-ended outsourcing contract that's still going on years after it was started, i.e. they are pretty much employees. When we've had problems with code quality we'd call them out on it and they'd clean up their act. That's something you can't get with touch and go outsourcing.
I fully agree with what you've said, and unfortunately it's a stereotype permeated by the IT Sweatshops of TCS, Infosys et al.
I was brought up in an Urban city, English is the only language I've learnt right from childhood and continue to do so, the language that I'm most fluent in. (yes I can't read or write my native tongue). I do agree that lying on resumes is widespread that some of us (who believe we're upto snuff in our fields) don't bother to bring resumes to job interviews, usually we're contacted by recruiters/hiring teams based on our past projects.
I grew up in Mumbai as well. You are probably from upper-middle class, so I don't think all Mumbaikars would classify as learning English as the only language. I think you are in the minority.
I'm going off on a tangent here, but even if English is the only language you speak, it doesn't necessarily make you fluent at communicating with Americans, because you aren't necessarily exposed to the same cultural and linguistic nuances. This can often lead to a lot of miscommunication.
I have met many Indians who are fluent in English and it's the "only thing" they speak and they wear it as a badge with pride. Ironically, these people are worse than the people who are not as fluent in English because they tend to speak English at extremely high speeds as if they are reciting something, which makes it just as hard to understand. And combine that with an accent, and you've lost all the advantage you have as a "native" English speaker.
I'm not from Mumbai, but from Chennai and have worked in Bangalore. I do speak other languages, English is the one I'm most fluent in. I don't wear this as a badge of pride, it's just the reality.
I do agree that there could be a little bit of a cultural disconnect, accent could be an issue as well. Although it's surprising that those "fluent in English" would have no ideas about stress, intonation, etc but I digress. I wouldn't class myself as a native speaker, only one who is able to communicate properly with a native speaker.
It isn't just lying on resumes, my Indian colleagues have horror stories of the levels of cheating they experienced doing their CS degrees at Indian universities. They all felt they had to do an MSc at a UK university, at huge expense, in order to be validated because those institutions are trusted.
Totally agree, I'm planning a similar route as well (albeit at American institutions). It's sad how stereotypes affect others who don't necessarily conform to them.