If you're European or American, you may find collaborating with Indian developers difficult. This is exactly because of the cultural differences. One should understand, "differences" is not a metaphor for "bad work". Here are some key aspects you may consider useful. The list below is not only a guideline on how to understand them. You should also act in a similar manner, otherwise there's a risk of losing respect.
Reputation is important in every culture, but the meaning of reputation is different: Western culture allows mistakes, but Indian culture does not. Instead, it focusses on people's harmony. Everything that intrudes into that harmony, is considered rude.
One should expect that people will tell you what you want to hear, not how things actually are.
Never Openly Disagree. Open disagreement is as rude and disrespectful as criticizing somebody else. If you can't agree, simply change the topic.
Never admit your mistakes. It sounds horrible for the Western culture as we've been taught to admit our mistakes and learn from them. In India, a single fact of admitted mistake would be much more harmful than finding a million excuses why a mistake has happened.
Also, never express your dissatisfaction with someone's work. In exceptional cases, you can do it in private, but certainly never let someone else to know it.
Never Say I Can't Do This. The same reason: if you say no, you admit you can't do something. Note that this applies to risky deadlines, requesting more time, or even just asking for help.
You should not expect for personal responsibility, even if a certain task is assigned to a certain person. In India, every transaction is negotiated, and therefore responsibility is most times collective.
There are other small mistakes that may lead to problems:
- Avoid calling people by their first names;
- Avoid certain topics in colloquial discussions (politics, castes, poverty);
This sounds horrible, is it even possible to work with them?
Certainly, it is possible.
I've noticed Indian developers can work as hard as their European colleagues, they often find better tactical decisions, and they often have even better results.
What you may do?
- Read between the lines. Craig Storti suggested that "This project is bigger than we have expected" literally means "we need more time".
- Don't criticize. Better convey your message as a hint or indirect suggestion.
- Be clear about the positions of the people you are working with;
- Address each issue with the proper person. If you go too low, you may offend the boss as he/she may think you're intruding into their field of responsibility;
- If you are building the team, do build a strong hierarchy. There's no chance for horizontal structure like many small Western companies have;
- Negotiate. Sometimes adding more people to a late project, a common mistake in a Western world, works better than everything else;
- Don't expect people to start punctually at 9AM;
The book Speaking of India by Craig Storti (link, paywalled) (summary) is a great resource to learn from.