Hacker News new | ask | show | jobs
by ChrisRR 1966 days ago
In my experience, while Indian developers are much cheaper they seem to have a much different work ethic to many other countries.

It seems like their approach is more to finish the task as quickly as possible, with little care to the quality. Obviously this works for a lot of products, but if you're looking for a high quality, maintainable, or safety critical product then I've found India isn't the best place to go for that.

If you're looking for a product to get out the door asap and don't care about the quality of the code and/or UX, then India may be fine.

4 comments

My limited experience has been that you get what you pay for. I have worked with some really top tier developers based in India, but they were quite expensive (relatively).
I suspect YMMV, I'm currently working with a very good frontend developer and he takes a very proactive role. Tasks are finished properly and he gives his own input / vision on how to approach certain features / problems.
Generalization, much? (for such a huge diverse country)
Sure, I admit that it's a generalisation. I'm just offering my experience with outsourcing.
The biggest issue I've seen with Indian workers is they want to be handed everything so they can be left to the mechanical aspect of typing in code.

The first time you come across this it's a bit of a culture shock as I think most in the US are more used to having a back and forth exchange.

That does seem to show up often online, where you can see blog posts, forums, youtube videos, etc. you'll extremely commonly see indian developers asking for the author to practically do their entire project, or ask for a tutorial on doing their entire project.
You have seen it too! I have been noticing it online since the mid 2000's. It is not a spam bot either.
This comes around a lot when working with contractors. They are signing up for hourly work for an hourly rate, and generally don't care if what they are executing against is directionally correct. If you say build X, they will go off and build X and the success or failure of that engagement is largely determined by how well and clearly you defined X.
A lot of organizations would benefit from being more clear of what needs to be developed, even on this side of the world.

I probably lose 1/4 of my time to unclear specs and things that PMs assume I would know. Why they think I know anything about the industry is another question.

I have an analogy I like to use.

No one in their right mind would put an engineer on a factory line because said engineer built the machine. Yet people are completely ok handing off tasks to developers and asking them to do the mechanical part of the job.

In both cases you're only extracting half the value from that person that you could be.

That back and forth with your PM isn't wasted time, it's you digging in to better understand, and in doing so are given the opportunity to identify and make suggestions due to the expertise you have that the PM doesn't. I'll go one further. Your company should endeavor to put you face to face with the "customer" making the request if it's practically possible for exactly the same reason, and your PM shouldn't be involved at all outside of setting the priority for the work itself. This is of course ideal circumstances and there are always reasons why the reality can't match exactly, but in general this is what you should be endeavoring to do.

> Your company should endeavor to put you face to face with the "customer" making the request

Strongly prefer the current system over that :)

That's so foreign to me I just have to ask why.
Maybe it is different if the customer is technical, but non-technical people are often painfully imprecise.

A "bunch" is not a valid item count.

They are going to be dissatisfied by whatever colour "red" is chosen. Or with the sequence of steps to get to a goal in a paginated step flow if not ironed out first.

If something is going to expire, they need to specify the time along with the date and whether it is attached to the user's timezone or UTC.

They are going to say Firebase when they mean Mixpanel because they might have Googled something and badly misunderstood it.

You are trying to do a structured activity based on the thoughts of someone who often isn't.

Given the choice between writing code that gets tossed or a tedious and repetitive conversation where I am endlessly asking "can you be more specific?", I choose writing code. Someone else can have that conversation.