Live data from Hacker News

Why I Will Never Feel Threatened by Programmers in India

blog.jpl-consulting.com

41–50 of 143 posts

Re: Why I Will Never Feel Threatened by Programmers in India

#41
post #20

Outsourcing companies using a per-hour/day model don't just save on costs by hiring developers who are not very good at what they do, they benefit from it through increased number of hours required! It's the model, not the location/nationality.

This. Over the years I've been involved in cleaning up horrible messes created by US based consulting companies using US labor. The incentive is to sell you hours, not to sell you a working product, and the outcome is predictable.

I have not doubt you can outsource your programming work to India if you do it the way companies like Oracle and Google do it - go to India, hire your own management, hire employees, and give the local managers enough authority to manage the project in their time zone.

Re: Why I Will Never Feel Threatened by Programmers in India

#42
Based on this and many other similar stories I've read, I've formed a general law about offshoring: if you want it to succeed, never ask your engineers/engineering managers to do it.

I'm part of the management of a large product development setup in India, and here's my comment on a very similar story earlier on HN:

http://news.ycombinator.com/item?id=1481732

Re: Why I Will Never Feel Threatened by Programmers in India

#43
People are missing the underlying root cause of the lower quality programmers in India -- Culture. There, upward mobility is the goal, not being the best programmer. People take a programming job for a year or two, then look to "advance" into management/leadership/etc. So the result is a large number of junior programmers.

That, in turn, is why you need to give very explicit instruction, and why much of the work needs a lot of QA.

Knowing this also makes it a lot easier to interview firms or individuals, looking to their own personal motivations to see whether they match the overall cultural trends or not, and thereby you can build a better team.

Re: Why I Will Never Feel Threatened by Programmers in India

#44
I am from India and let me say you don't have to feel threatened by bad programmers in India. The problem with posts like these is they make massive generalizations which are not true. Not every body here is a genius and not everybody here is an idiot.

I have worked in extremely challenging projects which were billed for dirt cheap prices. Considering the cost at which finished the projects it was almost like we were giving our work for free. For every story like this there are a 100 good stories you will hear out here. There are also cases where people do endless work and those hours don't get billed. Yes, there are a lot of cases like this as well. There are 1000's instances where we do work without billing them because some one at onsite put a polite request. I used to work with a very senior person in the UK. During meetings he used to be shocked that we put that crazy hours and efforts for such low prices.

The problem some projects fail here in India is because of the same reasons they fails else where.

When you talk of all this, even manufacturing in China. You need to look that whole picture and then see how the statistics work. At volume, and that scale of economy, If you measure No of Failures Vs No of Success and measure them against money saved. It's a very different story.

One project failing somewhere doesn't talk of the whole outsourcing story.

Re: Why I Will Never Feel Threatened by Programmers in India

#45

Based on previous experience working with an outsourcing firm in India, and on what I know/hear from friends back home, here's what I've observed: - Although the raw number of 'programmers' in India is large, the percentage of good programmers is smaller than that in the US (anecdotal, as observed by me over ~10 years). So essentially, you get what you pay for because the good programmers can command (and deserve) sa…

I've worked with outsourcing both to India and Eastern Europe in three passed companies. Your comment of ratios of "good programmers" to not, particularly in India is spot on.

A lot of outsourcing to India started with Enterprise Java applications, MVC/CRUD type stuff that was simple, but also time consuming. So, it made sense to move the tasks that didn't take advantage of your strong programmers overseas to help with the burden. A number of outsourcing firms WiPro, Global Logic, etc. started with this model. Many, even well into the mid/late 2000s worked on these same Apps. It was their domain of "expertise". Teams were generally set up to have a "good programmer" as a lead/architect that was often your main contact and was responsible for one or more junior developers doing the work. Even if you had a strong set of requirements and a good relationship with the lead, implementation could suffer from the "chinese whisper" effect -- what you request gets distorted the further down the chain it goes. For CRUD apps that weren't performance dependent, this was fine.

As the push for outsourcing continued, from my experience, these formerly Java Enterprise app shops were asked to do more diverse projects. The majority of the ones I had to work with were a failure -- if they kept the same team structure -- i.e., remote lead who oversaw remote juniors. The biggest cause wasn't necessarily one of background, it was more turnover and drive. The churn was very high and developers were asked to do something boring or beyond their skill set (or, the still lingering issue of sticking to actual requirements).

One prior startup I was at outsourced non-core monitoring stuff that was a reasonable success. However, a local executive was all hung ho about outsourcing more core technology until a couple of us put our foot down and indicated the unaccounted overhead of the local work needed to fix things. That stopped that angle. At the same time, we had amazing success outsourcing targeted pieces -- an arm assembler optimization of a key piece of crypto code, being one.

The reason for the success? The coupling of a bounded small project that was sent to a team with that relevant skill set. This is the key area where outsourcing is successful. Bounded projects, targeted to a team with the relevant skill set, and good communications between them.

Where outsourcing fails is the generic skill set approach nd overhead that most of the big firms employ. Local management just sees the reduced dollar and doesn't account for the extra time -- to fix, to integrate, and to iterate on deficient deliverables.

This isn't an india / US issue. This is a good approach regardless of the topic. It just happens that India was the envouge outsourcing destination and the majority of US Management solely focused on the assumed reduced cost.

Re: Why I Will Never Feel Threatened by Programmers in India

#46

Earlier quoted context omitted.

The author had several good points that are specific to India - e.g., the language barrier, time zone differences, etc - IMO, those points are perfectly valid reasons to single out India.

Those points are not specific to India.

Because he was mentioning real projects done in India.

Re: Why I Will Never Feel Threatened by Programmers in India

#47
post #7

With all due respect, there is no reason that folks in India will not learn the same stuff the author learnt. They would (and probably are) on hacker news - learning the same subset of things. And, they live in a country where $2 still buys you a decent meal. I don't see why they wont be able to do a good job, for less.

You are making a good point. I'm from a third-world country, and I'll tell you why: they shouldn't be developers in the first place.

1. Communication: They fail to communicate not because English is not their native language. They'll also fail in their native language. Communication is a skill. English is a language. They don't invest to learn good communication, and also to learn the language.

2. Coding: They are bad coders. They don't produce good code because they don't want to learn version control, unit testing, and programming patterns. They are too lazy to open up a book and read. They are too lazy to subscribe to programming blogs and listen to podcast. They think that what they learnt in school and university is more than enough.

3. Creativity: Briefly, they can't look beyond their room window. They don't bother to know if the UX is good enough or the kind of audience for their product. They don't want to create. They prefer to copy/paste.

This is not India. This is most of the "developing" world, a also a part of the "developed" world.

Re: Why I Will Never Feel Threatened by Programmers in India

#48

Earlier quoted context omitted.

This is correct. Good programmers in India, like good programmers everywhere, cost more than bad programmers. If you would like to hire a decent shop, there are boutiques and larger firms available, but they will charge $40-50/hour, not $15. The problem isn't in the outsourcing, it's treating development like a $15/hour commodity. We all know that it doesn't work that way. The author described paying an hourly rate f…

But there are plenty of good programmers in the US that will work for $50 an hour, which ends up being about $100,000 a year. And if you can have your users, analysts, and programmers in the same building for what it costs to outsource, why outsource?

I suspect, depending on region, there are good programmers also willing to work for a bit less. The economy has hit a lot of people, but in some areas of the US, $40ish an hour is comparable to $75+/hr here in the Bay Area -- based on cost of living.

Not that people should undersell themselves, but there are smart people around this country that may be looking for a gig that are losing out on services like Elance/Odesk (if they even know about them) because $15/hr sounds like a good deal.

Re: Why I Will Never Feel Threatened by Programmers in India

#49

Earlier quoted context omitted.

Agree that communication (or lack thereof) is a key issue. That can be worked out but having 11PM conference calls or combined hacking sessions stretching to 2-3 AM gets old very quickly. Another is the fact that the culture within a lot of contract shops isn't exactly innovation-driven. I really don't understand how you could get an engineer/coder passionate enough to be interested in some stranger's project. Net ne…

I don't think however that big companies (Cisco/Microsoft: any company with a big India development center) will ever hire legions of US programmers again though. That train has long since left the station. Are you sure? Lots of US companies are hiring lots of US developers. Google comes to mind immediately, but I'm sure everyone else is too.

At the big company where I work they're actively getting rid of their US-based employees and hiring in India and China. My employer isn't one of the ones I mentioned above. But I know from friends working there, that this is the case there as well.

I think there are a number of reasons for this.

1. Many engineers just aren't interested in the old fogey US tech companies. Do you think a smart kid out of a US college would be more interested in working at Google/Facebook or at Cisco/Microsoft? As a result they have a tough time hiring. In India, people actually LIKE working for the man at big giant companies. It is a status symbol. So its a lot easier to pick up good talent there even if the company is regarded as a has-been in Silicon Valley.

2. At some point in a tech company's lifespan, decisions seem to be made purely for financial/cost-saving reasons instead of for product/customer reasons. This is usually the point at which good engineers start leaving the company because they realize the bean counters are running things. This is also when these companies start expanding their India ops. Word gets around, and hence this is somewhat co-related to point #1.

3. Empire building: For some weird reason, engineering managers love having a lot of reports. Its reasonably cheap and easy to staff up in India and China, which means an engineering manager at some loser company in the US can get to brag that he (its always a he) has 100 engineers reporting to him.

Re: Why I Will Never Feel Threatened by Programmers in India

#50

Based on previous experience working with an outsourcing firm in India, and on what I know/hear from friends back home, here's what I've observed: - Although the raw number of 'programmers' in India is large, the percentage of good programmers is smaller than that in the US (anecdotal, as observed by me over ~10 years). So essentially, you get what you pay for because the good programmers can command (and deserve) sa…

So essentially, you get what you pay for because the good programmers can command (and deserve) salaries close to what their American/international counterparts make.

Exactly. I think it has something less to do with India or the remote-ness than it has to do with choosing the cheapest possible team. Outsourcing is mostly premised on the idea that workers overseas are undervalued / perform the same task at comparable quality for less money. You wouldn't hire a US firm for 14/hr, but you assume that an Indian firm at 14/hr will be dramatically better. Once that's not true, the competitive advantage to outsourcing ends.

Post reply on HN