The American programmers I have known are typically the most creative, but least disciplined. Indian programmers are far better for being on time, following design guidelines, documentation, etc.
That's my experience, at least. (And I'm an American programmer...)
That is not my experience. I recently reviewed some
work from an Indian supplier (household name starting with W) which had pathetic documentation and total lack of
test results (other than a Excel spreadsheet alleging
compliance with specs).Discipline is what happens when
management sets performance standards and holds contributors
accountable.
I have known too many American programmers who have fixed Indians work.
Some Americans I know have been asked by Indian/Pak/Bang/MEastern programmers for copies of the Americans code for school projects!
Indian programmers are far better for being on time, following design guidelines, documentation, etc....also absolutely correct.
However (and you knew there was a 'however' coming.....)
My experience with any Indian workers - programmers, helpdesk, etc - is that so long as you "stick to the script" and tell them exactly what is desired, you won't find a better bunch of employees anywhere. Unfortunately, as soon as there's even a minor deviation...even so much as asking "well, what do you think?" ....forget it.
So long as my job requires independent thought and creativity (it does), I'm not overly worried about the prospect of being outsourced. However, the kid in my department who checks backups and does data restores....stuff that could be scripted in a day or two of documentation and training....I'd be worried if I was him. Particularly since he thinks that he's the only one who can do it, and doesn't have a whole lot of initiative to take on other projects.