Like many companies outsource to India, my company come to realize outsourcing is not as effective as the business magazine claims. No one can escape from the fundamental law of economics, what you pay is what you get. Yes, going to India seems cost saving on paper, but it really sacrifice the quality of work, which often don’t show up in any project management matrix until it’s too late. This week, I doing code review for my Indian team. Their code is so bad that it is driving me nuts.
In the project status meeting, one of them claim his code is done, all the tasks are completed. However, when I review the code, it’s all garbage. The code is not doing anything, not testing what the program suppose to test. It is pretty much a glorify print statement that prints “PASS” at the end. I have tell him rewrite the code from scratch. Maybe we forgot to tell him on top of meeting the schedule, the program also has to work.
I review other code pieces from other Indians programmers. Well, the code works, but it is the ugliest code I have seen in a long time. Instead of writing a for-loop, one guy copy and paste the code 4 times and change the index in each code segment! Instead of using a single if-else statement, another guy split the code into a dozen if-else statements having exactly the same if condition. Maybe they were paid by the number of lines of code they write, so they purposely inflate to make the program look larger.
To be fair, a few of them are quite decent, but I found the majority are just simply annoying. I wonder is it a cultural problem that Indians are sloppy in general or I am just (un)lucky enough to work with mostly incompetent people?