Skip to main content
Source Link
rabble
  • 111
  • 3

This is a fascinating topic. I've worked in SF and Silicon Valley, but also Europe for local clients, setup an offshore office in India and now run an offshore development shop in South America. I've even done a little bit of work with African developers.

Every region of the world is capable of producing great programmers. I've got a hacker friend in Malawi who's build amazing touch interface rails backed open source systems for HIV clinics, using and contributing to open source projects in important ways.

I've also seen American programmers working at name brand startups and major web companies who couldn't program their way out of a paper bag. People with masters degree's in Comp Sci from MIT and years of industry experience, who when it came to writing good production code, couldn't cut it.

There are very real cultural differences between Europe, Latin America, the US, and India. Then there is hacker culture, which is more or less universal.

The mainstream indian tech community likes to throw people at the problem. The hourly rate per developer might be less, but if the vendor believes in quantity over quality, you'll need twice as many dev's to get the code running.

Certifications. What the hell? India loves certifications, ISO, CMMI, etc... it goes on and on. It's meaningless ass covering. More to the point, it's not how you get good software developed.

The caste system. The caste system is illegal in india, and since independence there's been tremendous work at eliminating it, but it's still a living breathing beast. Most westerners ignore the existence of the caste system. I grew up in the US, but my father was born in India, anglo-indian as it's called, and my mother went to university there as a student, and then returned to teach much later at Indian universities. The caste system is very real, it comes from india and is old, but the british encouraged it and used it to maintain power. Westerners need to know, that they'll take the place of the british, at the top of the hierarchy. You'll get called sir, you'll not be questioned. Most indian managers see their role as telling their underlings what to do. Speaking back and offering alternatives is punished.

Not every indian development shop is like this, Zoho, has built an amazing indian business by breaking all the rules. They hire based on ability not caste or what university certification you've got. By doing so, they've bootstrapped a complete SaaS replacement to the MS Office Suite.

There's a vibrant hacker community in India as well with meetups, mailing lists, small conferences, and the like. These developers are world class good. They often find it hard to get work within the mainstream indian software development industry. I myself found two python dev's for our indian office, they were great, and then our indian manager insisted on hiring a dozen freshers, new graduates to fill out the team. After a few months the hackers quit, their manager had made their lives hell. We were left with a dozen young and enthusiastic employees, most of whom didn't know how to program very well.

The best of the freshers was a young woman who'd built an IDE for dev on embedded systems. Nobody wanted to hire her because she came from a conservative family and Indians thought she'd be forced to quit her job once she was married off.

There are great dev's in india, but the value structure is setup to push them out, and to promote people based on things that have nothing to do with creating great code.

The other big problem is the timezones. It's not an advantage, it's a huge problem. It means there is no constant direct communication between on site and offshore teams. This causes huge misunderstandings, and forces you to write reams of documentation. It makes agile very hard to pull off.

The sad truth is a huge amount of the software produced by indian corporations is low quality. You hear dev's all the time talk about how indian engineers are crap, it's not true, but it's a reflection of the quality of large traditional offshore companies. It's the fault of the business culture in India, not the developers themselves. The dev's are stuck in a bad system which rewards the wrong things.

Post Made Community Wiki