Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

So...Indian programmer here. Well. I was just about writing some similar anecdotes for an article and I came across this. So, let me share what I have seen related to this.

Firstly, right now in India, programming(Computer engineering) is one of the most widely adopted courses. This obviously means a lot of programmers and a lot of web shops, IT services and whatever. More the companies, more chances of you ending up finding a mediocre one.

Most of these companies and their employees consider it as a 9-5 regular job. It is a chore. They do not care about you or your product. As long as project managers meet the deadline and programmers get their salaries, no one cares. Not everyone can be a "hacker".

You outsource to India to save money. You wont outsource to India if a developer/company charges the same as its US counterpart. So you end up outsourcing to mediocre companies eventually.

I have interviewed at a really big Indian IT company and their interview process made me realize that they weren't serious about hiring talent. They just wanted more people, whom they'd eventually train to 'get shit done'. For more clarity, I was asked about movies and stuff in my technical interview which lasted 15 minutes and then I was offered a job. No kidding.

There are some brilliant Indian programmers too. You probably wont ever outsource to them because they are expensive.

In a country of a billion people, where computer engineering is one of the most dominant fields and education levels are mediocre, even if 20%(at most 50%? lets not get our hopes high) of each class produces absolutely brilliant engineers, that still means a huge number of crappy engineers.

So while there are brilliant, good, bad and horrendous programmers in India, the math totally inclines towards you finding bad programmers more often.



This reminds me of a quote in Machiavelli's The Prince about Mercenaries:

> I say, therefore, that the arms with which a prince defends his state are either his own, or they are mercenaries, auxiliaries, or mixed. Mercenaries and auxiliaries are useless and dangerous; and if one holds his state based on these arms, he will stand neither firm nor safe; for they are disunited, ambitious and without discipline, unfaithful, valiant before friends, cowardly before enemies; they have neither the fear of God nor fidelity to men, and destruction is deferred only so long as the attack is; for in peace one is robbed by them, and in war by the enemy. The fact is, they have no other attraction or reason for keeping the field than a trifle of stipend, which is not sufficient to make them willing to die for you. They are ready enough to be your soldiers whilst you do not make war, but if war comes they take themselves off or run from the foe; which I should have little trouble to prove, for the ruin of Italy has been caused by nothing else than by resting all her hopes for many years on mercenaries, and although they formerly made some display and appeared valiant amongst themselves, yet when the foreigners came they showed what they were. Thus it was that Charles, King of France, was allowed to seize Italy with chalk in hand; 1 and he who told us that our sins were the cause of it told the truth, but they were not the sins he imagined, but those which I have related. And as they were the sins of princes, it is the princes who have also suffered the penalty.

> I wish to demonstrate further the infelicity of these arms. The mercenary captains are either capable men or they are not; if they are, you cannot trust them, because they always aspire to their own greatness, either by oppressing you, who are their master, or others contrary to your intentions; but if the captain is not skilful, you are ruined in the usual way.

Source: http://www.constitution.org/mac/prince12.htm


As interesting as Machiavelli's thoughts are read as a blog entry about tech consultants, don't you think it's a stretch?


As a tradition, no. Old books like this are often read in a management context. For example, at my local book shop, The Book of Five Rings is in the Business section[1]. The Art of War by Sun Tzu[2] can be applied to any context you want and it's usually still good advice. Re: The Art of War[3], wikipedia says:

> There are business books applying its lessons to office politics and corporate strategy. Many Japanese companies make the book required reading for their key executives. The book is also popular among Western business management, who have turned to it for inspiration and advice on how to succeed in competitive business situations. It has also been applied to the field of education.

Here's where I start talking out of my ass: If you think about it, aren't generals the original managers? They had to coordinate the actions of thousands of people. Sometimes hundreds of thousands. They have to delegate to their subordinates because it'd be impossible to micromanage everything. Also, I think it's more than a coincidence that the quote seemed to fit so well. Outsourcing is hiring mercenaries.

[1]: http://www.amazon.com/Book-Five-Rings-Miyamoto-Musashi/dp/15... [2]: http://www.amazon.com/The-Art-War-Liddell-Hart/dp/0195014766... [3]: http://en.wikipedia.org/wiki/The_Art_of_War#Application_outs...


For more "generalship as management," you can read another classic, Caesar's Gallic War. One caveat: a lot of modern Classics scholarship would rather take this less as an example of great generalship and more as an example of great propaganda. But either way it's a treatise on how to command, containing if not quite the unvarnished truth, at least Caesar's opinions of what good management/generalship ought to look like, as well as several anti-models.


The core concept in this paragraph is really a basic concept in outsourcing - don't outsource your business's core product, or you will be at a disadvantage when competition comes.

Notice, he doesn't say that you cannot use these extra forces in attacks. All he is saying is that if they are guarding your sleep, you are probably screwed. Similarly, if your core business is being a technology organization, if you chose to outsource that core tech, you are likely screwing yourself. Now, should outsource as much as possible the non-core aspects, either by buying software/services or by hiring consultants, while you let your core team focus on what they do best.

Of course, it's all easier said than done, and the line between core and non-core is often blurred.


You outsource to India to save money. You wont outsource to India if a developer/company charges the same as its US counterpart. So you end up outsourcing to mediocre companies eventually

Let me say that I've worked with some amazing Indian programmers, but this comment aligns with a realization that I came to a while ago. Some organizations see software development as a competitive advantage and while others see software development as a necessary evil. The "necessary evil" shops are the ones most likely to outsource based solely on cost.


It's said that more than half of all software projects fail, in that they're canceled, fail hard, or severely under-preform/under-deliver but victory must be declared. Many organizations can get by for years mostly failing in software development.

For a while I've wondered if the true attraction of this sort of outsourcing is that it's a cheaper way to fail.


Absolutely. If you're convinced that software development is going to be expensive, painful, and probably-doomed, you might as well pay as little as possible for it.


Long back, my very first project in a big Indian IT firm involved an Australian client. He was here, and we went for lunch together.

In a casual chat we asked him how difficult it was to hire in Australia. He didn't even hesitate for a second to reply, they had done everything thing they wanted to in Australia, and the projects failed. They are doing the same in India with nearly the same failure rates- at the end he said, he rather preferred doing that at a lower price.


>"Firstly, right now in India, programming(Computer engineering) is one of the most widely adopted courses. This obviously means a lot of programmers and a lot of web shops, IT services and whatever. More the companies, more chances of you ending up finding a mediocre one."

I am agreed with this. I have seen a similar pattern in Venezuela where the IT/Programming area is perceived as a high remunerated job (Not always true actually) hence a lot of young student take that path without actually being their passion. In the end, there are more people in the area that not necessarily fit in the career and that is reflected in the quality of their work.


Yes, in a developing country, there is a tendency for people to drift more towards the fields that are considered stable and secure at that point in time. This is nothing new at all.


>"Yes, in a developing country, there is a tendency for people to drift more towards the fields that are considered stable and secure at that point in time. This is nothing new at all."

That's not the interesting thing to notice, is the fact that economics incentives alone have a negative impact in the quality of the professionals.

It is in particular very interesting given the fact that there is a group of successful personalities pushing to people to go to the computer path. Given the examples that might actually hurt the industry.


I'd love working with programmers from anywhere in the world that are talented. The problem is that the there is a wide talent pool willing to work for bottom dollar which middle management teams can blame later for their failures.

It's a signal-to-noise issue that I hope fleshes itself out because stereotyping of this sort is bad for the industry as a whole. You _CAN_ hire a fantastic team in India to write your software and help you build a great product. Will you? The numbers say 'no', at least right now.


Indeed. There probably are great teams doing great things in India. But getting everything together in a way you want it might not be that easy.

But of course, merely stating that Indian programmers should not be hired or anything as such is simply wrong.


> There are some brilliant Indian programmers too.

I think that's clear. There are certainly brilliant Indian programmers who have lived in the US for a while. I assume they were also talented before they came to the US.

When people complain about poor talent in country X or country Y, one has to take it with a grain of salt. Some of it is backed up by previous experience (perhaps the team to which the work was outsourced was really bad; perhaps the communication was bad). Some of it is carping on what is perceived as an economic threat by someone who is in an insecure position. It's hard to ignore overbroad generalizations, but those who throw them around only discredit their own objectivity in the long run.


Also, for the western programmers losing their jobs from outsourcing, it's in their survival interests to broadcast and exaggerate ineptitude whenever possible. So don't take it personally.


IME, that's not driving this at all this at all.


there is a grudge in the UK at least...

http://www.theregister.co.uk/2011/08/03/pcs_offshoring_warni...

(see the comments too)


I'm sure it's a commonly held version of sour grapes, but IME, the vehemence here in silicon valley against indian offshoring (and indian onshoring - shipping engineers state side on loophole visas, paying them indian salaries and warehousing them 8 to a suite in extended stay hotels by the likes of Tata and Wipro) all come from people who have had to work with them.

Myself included.


Well put. Companies looking to save money - never outsource your core development work. Only outsource rote work like manual testing or if you're a service, live-site incident monitoring/troubleshooting and support. People working at these companies don't care about how boring the work is. Like OP says it is a 9-5 job.


I'm thinking of moving to India to do IT development for my company [1]

> There are some brilliant Indian programmers too. You probably wont ever outsource to them because they are expensive.

I would love to know: What is approximate salary of a brilliant programmer in India with, say, 10 years experience? What about the cost of hiring a brilliant graduate? What would these salaries be as a percentage of the corresponding United States programmer?

> Working at a small firm is very low prestige, unlike here. You want to have a big name you can tell to your prospective father-in-law.

How much extra would a small startup have to pay to attract brilliant programmers, compared to a Google or Microsoft?

[1] More info here: https://news.ycombinator.com/item?id=6308482)


>>What is approximate salary of a brilliant programmer in India with, say, 10 years experience?

That's pretty much a range. Anything that starts around 15 Lacs PA to 20 Lacs PA. But don't give into demands so easily. I would suggest you never even bother to hire job hoppers, which are super common here.

Look for- strong inclination for curiosity, past projects, and their interest in picking up good technical projects.

By and large the prices are a little lesser than that you would be pay to a 'Good' US programmer(I'm assuming bad programmers are everywhere).

Though being an Indian and staying in Bangalore. I would suggest you better try to get people from UK first and start up there. Regarding India operations, well these days you can't really be out of India and China(at least if you want a long term successful business). But that is for later. Start up in your own country first. You don't want to be dealing with other surprises when your company is so young.


15 Lacs PA to 20 Lacs PA = $24k - $32k per year


Interesting, is that before or after taxes?

That's quite a lot than the range you would have to pay for a Software Engineer in Mexico, which goes between $18K and $27K (gross).

I guess that's why more and more USA companies choose to outsource to Mexico, to take advantage of the closer time-zones and somewhat more familiar culture.


That would be before taxes. The reason why good Indian developers command a 20-25 lakh INR per annum in salary is in part due to the income tax. Indian income tax mandate swallows upto 30% of income from people who have an income exceeding 10 lakh INR pa. (=> effectively, it's only around 70-80% of whatever salary they get would be available to them).

I did not know that salaries in Mexico are in the range of 18K-27K USD pa; that sounds like a better deal for US based companies.

BTW, one should note that the major Indian outsourcing service providers (a.k.a the big three - TCS, Infy, Wipro) are already in Mexico.


The learning materials in India are atleast 5-10 years behind the trend in Silicon Valley and getting self taught is rare in India unless you have an excellent drive. Students pay cash and go to one of 'institutes' which promise you a job in 30 days. Its like feeding paper into a shredder. You can still get a top paying job in one of the Indian Consulting firms if you take a crash course is the 'latest' SAP module or Oracle DB.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: