

Ask HN: Is setting up a remote team of developers in India worth it? - starter

Market wages are currently dramatically lower. Potential hires seem to speak really good English considering it&#x27;s their second language. I still want to make sure there isn&#x27;t some kind of catch!
======
geophile
Assuming you aren't trolling: No, absolutely not.

My experience, at two companies, is that what you save in development costs,
you quickly pay for (and then some) in management overhead, and low code
quality. Some of the code we got was simply not salvageable. (And of course,
it consumed time on our side to review the code, reach this conclusion, and
document the suckage.)

If outsourcing has any chance of working it is for rigorously specified
requirements. If there is any wiggle room, or even if you expect common sense
to apply to fill in the gaps, you will be disappointed.

Why is the reality so bad?

\- You have little choice about the actual developers you work with. Would you
hire your own development team by phoning up a headhunter, asking for a half
dozen developers, and then taking whatever the guy sends over? Of course not.
Why should this work any better from an outsource agency?

\- Any marginally competent developer at an outsource firm gets moved into
management quickly. (At least in the companies we worked with.)

\- Distance sucks. Do you really want to schedule meetings with 10-13 hour
time differences? Deal with any required travel to and from India? Really?

Outsourcing is a clueless executive's idea of how to get software written. It
was a new business trend in the early 2000s, (so long ago that I wonder
whether you're trolling), and it was weird: I kept challenging the decision to
outsource, and the rationale kept changing. Basically, it was a trend, so the
executive making the decision wanted to do it, reasons be damned.

~~~
starter
Not trolling, 100% serious. I don't actually want to do outsourcing, per say.
My interest lies more in leveraging low market wages in India and actually
setting up a foreign office with it's own management etc.

You still think India's bad for business?

~~~
geophile
From other comments here, having someone on-site there improves the odds. But
why bother? If you're a startup, you are creating one more unnecessary
problem. Also, if you're a startup, you probably are going to be changing
things frequently, resulting in constant software updates. In my experience,
outsourcing works best (or least awfully) if the task you are outsourcing is
completely specified, with no ambiguity. If you are going to be changing specs
on them, it won't work so well.

I understand a startup needing to save money, but doing it this way seems
crazy to me. I've done five startups by now (four with successful exits). If I
were to join another, outsourced software development would be a red flag --
I'd stay away.

------
davismwfl
Having worked with a number of Indian firms since 1998 and having friends
there this is my take.

It is no different then the US, some suck, some are good, some are awesome.

The problem isn't India vs US, it is distance, communication and numbers. And
the reality is it truly boils down to a numbers game, if you don't know
someone, you are more likely to have nothing but headaches. Also the time
difference seems minor to manage at first, or even an advantage, but you soon
find out it is a pain in the ass.

Overall, even knowing there are great people in India, I won't use it as a
primary source of development for anything. Too many times I have had issues,
so I just won't do it. If a friend that lives there has some spare cycles, I
will do that in a heartbeat because I know they can/will deliver.

Also, as a whole, we pick up more failed projects from eastern areas than
anywhere else. My 2 cents is this isn't because they aren't capable, but the
communication isn't clear, and people are trying to seek out the lowest cost
person/firm. Seeking the lowest cost to me, means no matter where you are at
you are not getting quality, but what you paid for.

~~~
starter
Do you think there's any chance that the latest advancements in video calling
might change that? Things like "living on video"... Streaming the remote
office and maybe distributing Google glasses etc.

~~~
davismwfl
I think even just Skype and technologies like that really positively impacted
it and has helped (logmein, gotomeeting too).

Depending on what you are trying to do there could be lots of good/bad. If you
are thinking of renting space out and hiring 10 people over there and sticking
them in an office and they are solely your team then you have a greater chance
of success. But you are going to have to learn to do business in India, learn
their rules, learn how to get what you need there etc. That means how to hire,
fire, discipline, manage and deal with local authorities. If you think it is
hard doing that as a startup in the states, try doing it in two countries at
once. Oh, and you will need to be there every few months in person to make
sure you are getting what you want, price that airplane ticket * 4-6 times a
year. :) I have been asked a lot why I feel face time is so important with
remote teams like India, Brazil etc. Frankly the #1 reason is our cultures are
different, so interpreting the nuances of spoken phrases or the unspoken is
much harder unless you spend time with them. This is by no means bashing
anyone, but it is a reality, you need to learn their culture and respect the
differences so you can work with them successfully.

If you are thinking of trying to let them work remote out of their house, I
have not had 1 good experience trying that as many will sell their time to 3-4
companies this way and do a mediocre job at best and generally a horrible job.
This is the numbers game I was referencing, you might luck out, but more than
likely you will hit the game of numbers constantly cycling through people.

And if you are thinking to use a dev shop over there, that has its own
problems. Most specifically is you rarely will speak to the guy writing the
code. They insulate the teams so much that the guy sitting in front of a
keyboard has had 3-4 layers of filtering done. Not saying this is true for
every place, as I know there are some that are not that way. But in general I
saw a lot of this going on.

And even if you go to some of the smaller shops that promise the opposite,
then you get the issue of the 11+ hour time difference and the fact that your
communication and documentation will need to be excellent to get good results
out of them.

My whole team today is basically remote, we work in different cities etc and
that works because of technologies like IM, Skype, Hangouts etc. But we are
all in the US and all have similar education, understandings and backgrounds.
And the team is motivated to produce high quality because it is their
name/reputation on the product too. Of course they are also not paid a 3rd
world wage either which helps. And even with all that, we still have to get
together, hash through things and solve problems in the same room sometimes.
So far no technology I have ever seen will replace sitting in a room with 4-5
smart people and a white board. Even when I worked with Indian firms for some
of the larger projects I was on, I flew there regularly to meet with the team
we hired over there. And we did have video conferencing already. It is really
hard to get people that are 8k miles away to have the same level of passion
about your project as you do unless you show up regularly to get them
involved.

I am not bashing remote work out of India or any other Country, it is just
that the problem is hard to solve, and for a startup it is a very tough
problem unless you already know people in the Country you want to work with.
If you look at Oracle, Microsoft, GE etc, all have dev shops in India and
other places. And every one of them has US based personnel that directly are
in Country or make regular visits there to manage the shops. They also have
significant budgets and staff to write super detailed specs etc. And frankly,
if you have seen their dev timelines, it shows.

------
RealGeek
I am original from India (now in New York), and I have hired over 40
developers, designers and marketers in New Delhi over the past few years.

You can hire good developers in India for $1,000 to $2,000 per month. It is
viable to hire team in India, but hiring and managing them remotely is a
nightmare. Remote teams in India are unreliable and not committed.

In India, you need hustle with your team to get shit done. The only way it is
going to work is if you have someone one the ground.

Hiring good developers in India is difficult, retaining them is worse. Good
developers are constantly bombarded by recruiters with very lucrative offers.

My 2 cents, It can be worth while if you want to go to India and build a
development team. Stay away from outsourcing companies, they are only going to
sink your time and money.

~~~
starter
Thanks for the tip! Isn't $1-2k per month pretty high for direct pay? My
estimate for starting salaries was substantially lower.

~~~
sergiotapia
Wow - you want to pay less than that for a software engineer who speaks
English?

~~~
starter
Yes, isn't that possible with direct hiring instead of paying more to go
through outsourcing firms? My understanding is that roughly $500 monthly puts
an Indian in the middle class. Double that and I figure we would be really
attractive to young, entry level programmers.

~~~
lgieron
You're not in middle class if you need your month's wage to buy a smartphone.

~~~
starter
Maybe not in America but India's different and remember, smart phones made in
third world countries have different markups since manufacturing is cheap and
nearby.

~~~
RealGeek
Smartphones and other electronics are more expensive in India, almost twice of
US prices.

------
wusatiuk
From my experience, and I started all my projects with freelancers. I was very
lucky with russian and ukraine developers but also polish & czech developers
seem to have kind of the right working attitude.

The main issues I had with indian developers is the "yes yes culture". It
seems that their culture does not allow to say "no, it won´t be ready" or "no,
it will take longer...". They always say "yes, sir", "for sure, sir". this is
something I can not work with.

------
hkarthik
Setting up a remote team of developers anywhere in the world purely to save on
costs isn't worth it.

You should hire remote because you simply don't have access to the talent
locally, or can't assemble a local team quickly enough. And you should have at
least one seasoned technical leader who's worked with a distributed team
before to guide you through the process.

Hiring remote devs halfway around the world because you can save 80% on wages
is a pennywise and pound foolish decision.

~~~
starter
Thanks for your feedback. Just curious... Have you tried it or do you have
some sort of negative experience with remote devs? I'm going to need to do
something sooner or later.

------
curiousquestion
My 2 cents, from what I've been able to gather, the best resources in other
countries are being paid comparably to US, or they've already migrated or set
up a work visa with a US company. Talented developers know they're talented
and will seek out other people who can weed them out from the group. It is a
rare case that you run into a highly qualified developer in any country who is
working for pennies on the dollar.

~~~
starter
What about taking advantage of the back log of denied or pending, highly
skilled U.S. Visa applicants? It seems to me that tech companies can't import
them fast enough. I'm thinking it's time to go to the source instead.

~~~
curiousquestion
It will be interesting to see how this goes for you...

------
couchand
I've never worked with a team in India, but I do have experience with
outsourcing to eastern Europe. I don't doubt the other comments that say it
can be done, but in my experience it's tough.

The development cycle goes roughly like this: \- Early morning call to discuss
requirements \- E-mails over the course of the morning covering parts of the
same requirements \- Next morning call to discuss the same requirements (seems
like we've got it this time) \- Code review uncovers missing requirements...

Between the time difference, the multiple hand-offs and the communication
problems we would spend an order of magnitude more time on a task than it
would take an in-house resource.

I don't think it's completely impossible to get the formula right, but you
need to be explicit about everything, which doesn't really work in an agile
development cycle made of tight feedback loops. However, if you're operating a
more waterfall process and are able to code up a suite of acceptance tests, it
could be workable.

~~~
EdwardDiego
> but you need to be explicit about everything, which doesn't really work in
> an agile development cycle made of tight feedback loops.

We're a scrum team based in Oceania working for a German firm, and we have had
similar issues which we've resolved by usage of proxy product owners and
regular backlog groomings.

It'd doable, but it takes some investment in relationships and knowledge.

------
girish_h
It depends on what kind of project you want the developers in India to get
done, combined with the location(city) in India that you are planning to have
your team work out of.

If its something like a mobile-first product, it will be better if you can
have one of your trusted team-mates, who understands both the product and the
aesthetics of your product, sit in India and operate the team: the reason
being this team-mate will need to be hands-on with the developers on the
product features and also add a lot of value on the aesthetics of the app.

In most cases, the developers in India lack these skills. As long as you are
able to address that, you will be good.

The other most important question to ask yourself - are you looking at this
team simply to save your development costs (or) are you looking to really
collaborate with them and look at them to add value to your product? If its
the former, then a lot of brickbats are thrown when the deliverables are
getting delayed and you _may_ end up in a bad state and write negative reviews
about developers from India. But if you look at the India based team to add a
lot of value to your product, then the guys will go any end to deliver the
product for you. It becomes a happy ending for everyone. In this case, you
wont even mind the 10-12 hour timezone difference.

~~~
starter
Great tips, thanks! I'm really looking to collaborate with them as equals, not
merely remote assistance. It just seems like a great people policy.

~~~
girish_h
Its really good then. I am so happy to hear that. Hope you identify a great
set of developers / testers with whom you can collaborate with. Let me know if
you need any assistance. I have done that before for a couple of product
companies in the US and one in Singapore... Will be more than happy to help
you.

Also, wishing you a great success with your product.

------
tom_b
My friend, of East European descent (immigrated to the US as a teen), has
started a company with a small number of software engineers from his home
country. He is US-based and seems to be having success with these engineers
building a platform and finding business.

The big win though is that he speaks the language and has direct hired his
employees. This could be a catch for you if you are considering working with
an outsourcing company. My friend is successful with his hires because he has
the intangibles in place - speaking the language, occasional trips back to
visit with them, works hard to direct hire (and keep) smart engineers, and he
is personally vested in making sure he shares the "spoils" of the business
with his employees. He also hacks on the platform, although not as much as in
the beginning.

It sounds like you are considering a similar option, so you might be
successful. You'll be putting in _a lot_ of time though - frequent conference
calls, code reviews, dealing with the occasional bad-fit, etc. In many ways, I
think it would be harder than finding someone local to you.

~~~
starter
Thanks for your feedback! I'm not an Indian native but I am taking language
classes in anticipation of doing something in the future. I'm hearing that it
really depends on the people.

------
porlw
Don't forget (and this applies to any outsourcing contract, anywhere in the
world), the first people you encounter will be the A-grade talent.

Once the project kicks off the they will one-by-one be moved off to the next
deal, and replaced with less experienced juniors and trainees.

You can try to contractually lock in particular people, but that's impossible
to guarantee if the team is remote.

~~~
penguinlinux
I totally agree with this. This has happened at two places where I worked. We
had to bring back development in house because once the project got started
the main guys we talked to the first time where no where to be found.

~~~
starter
Thanks for the tip!

------
scdoshi
It really depends on whether you want to outsource development or actually
want a remote (but in house) dev team in India.

Most comments here are already inherently considering the remote team to be
code monkeys who will churn out software based on specs. There is no magic
here, to get good code, you need devs who are invested in the idea, and not
second class citizens in the company.

Invest the same amount of resources into hiring people as you would here, pay
not just a good but a great salary, make the Indian office a good place to
work, where employees actually have a ladder to climb and have input in the
product, and all this can work.

And yes, that most likely means having someone on the ground in the early
days.

You can't expect in attract great talent with half assed hiring measures and
an intent to get code on the cheap. Those people are happy doing their own
startups or working somewhere else.

~~~
starter
You hit it, thanks! Not interested in outsourcing, per say. My goal would be
to leverage low market wages in India by setting up a foreign office with it's
own management etc.

How far above average pay do you think I would have to go?

------
flarg
I've worked with teams in India (and Poland, US, UK, Australia, Spain) for
several years and quality depends on how well you manage the hiring and how
well you manage the communication - remembering that communication is harder
with anyone the farther you are away from being in the same room with someone.
You may need to hire someone local to you to do this for you as communication
is a full time job (a solution architect is the sort of role you'll need).

Don't expect miracles, 'cause miracles cost money - but it's got a 50/50
chance of working out OK.

------
coppolaemilio
What I know is that the quality of their code is very outdated and even being
cheaper to hire you are going to spend lots of money fixing the code.

Nothing like having quality code!

~~~
starter
Thanks, are you saying they tend to be lower quality coders or just outdated
coders? Maybe you're saying both. We're talking as more or more than 80% worth
of discounts in compensation packages when compared to American programmers.

~~~
yourapostasy
Possibly cue South Park Super Cool Ski Instructor meme. If your first-stated
reason "to talk" is "more than 80% worth of discounts", then you're going to
have a bad time if the work you are outsourcing is at all highly-skilled. For
highly-routinized process work by ops staff, sure, knock yourself out; but
you're going to find extremely qualified folks for that in the heartland of
the US working for wages competitive with the offshore outfits as well.

How logical is it that you will find someone smart enough to hack full-stack
or even a Fabrice Bellard-grade hacker, but not savvy enough to sift through
sales channels until they command a rate commensurate with their demonstrated
delivery capabilities? This is unicorn-hunting. They do exist, you can land
them, but in the meantime your competitors are focusing on Getting Shit Done
by not wasting time trying to prematurely optimize their expense structure. If
these unicorns were so easily abundant, and if it was that easy, then Google
would have long since abandoned recruiting at American universities.

You might have better results if you specified in more detail what you are
looking for. Generally, my experience is that coding talent is roughly evenly
smeared across the global pool; I'm looking generally for devops types that
know their OS's, basic data and control structures in an Algol'ish language
(scripted and/or compiled), and work well when customer-facing. There isn't
enough difference between geographies to alter the basic recruitment search
strategy though tactics will differ (the technical culture is relatively
consistent across the globe). Not enough difference to yield dramatically
better returns at least, so nationality won't determine whether you get "lower
quality" or "outdated" coders. In my experience, individuals' personalities
and company culture has a far greater impact on code quality than nationality
or ethnicity.

In my market space, given how long it really takes to absorb a significant
technical base, on the order of 12-18 months, I'm not inclined to "yield
chase" by trying to find cheap technical staff with a turnover that is
frequently sooner than that spin-up time before truly insightful work from
them starts to get traction. YMMV, so please share your details.

------
paulhauggis
I am 1 of only 2 people on a 10 person remote team from the US. The rest are
from India and Mexico.

Our team is finally okay after a year of people quitting, getting let go, or
just not working out.

It doesn't help that my boss just lets new people check anything into our dev
repo without having our project manager look it over first...which has halted
development more times than I can count.

The most common thing is that people just don't know how to use git.

------
gesman
Offshore indian programmers are one of the best to rely on:

[http://toprate.org/FILES/programmers.jpg](http://toprate.org/FILES/programmers.jpg)

