

Ask HN: Does anybody know any outsourcing success stories? - kranner

Hi all, I'm wondering if we can balance the recent spate of outsourcing doom and gloom talk here with any cases that people can relate where the outsourcing of software development (to anywhere) did perform as promised?<p>My hunch is that outsourcing does work out, even if less than half the time, but that those involved tend to be quiet about it and move on with life and business.<p>Thank you.
======
minim
I think it all depends on what you're trying to accomplish. Large scale
projects are not well suited to outsourcing in my opinion. There's too many
unskilled providers, but my biggest hurdle has been the language barrier. Even
when people "speak English", there's a lot of miscommunication based off a few
words they don't know, interpret differently or even differences in local
customs!

For smaller projects (e.g. developing a website for a local business),
outsourcing can be very profitable once you find the right provider. I've had
a reasonable amount of success finding good providers in the past and they can
cut development times on easier projects if you communicate clearly and
provide wireframes / spec sheets. Most recently, I hired a PHP developer from
Singapore who was asking for $5/hour and after I saw what he could do (with
other languages as well), I immediately raised his rate to $10/hour without
him requesting it. Now I've got a long term, loyal developer that works at an
extremely affordable price to me and provides quality work. Is it the same
quality as a $100+/hour developer in the US? Probably not, but it's very good
and I'm happy to always put some finishing touches and modification in myself.
I still save tons of time on smaller projects that way.

So to answer your question, yes and no. It depends what you're trying to
accomplish and the exact providers you're going to work with.

~~~
eru
You may even help to raise the quality of work of your partner from Singapore
over time. I guess he's not immune to learning.

------
arthurdent
i've outsourced software dev and had a range of results, but i think i've got
it down now.

outsourcing isn't any different than any other task where you rely on other
people. just like traditional in-house employment, dating, personal
relationships, or anything where you deal with someone else, working with bad
people sucks. the key to a good experience is finding good people.

published accounts probably suffer a negative bias because people who get what
they want usually don't go out of their way to post "i outsourced and it was
exactly as advertised" articles, while people who don't get what they want
like to whine and punish the people they worked with.

i suspect a large percentage of people who are outsourcing dev are: 1.
incapable of assessing the quality of their outsourcees, so they end up hiring
crap _; 2. cheap bastards trying to do work on the cheap, so they end up
hiring crap.

like in any other trade, find good people, and incentivize them to keep
playing nice with you.

in my experience, the most important thing to screen for is reliability. i
just make a rule to not work with flakes, and i try to make sure my devs are
happy.

_ a lot of people outsource because they can't code. if you can't code, you
probably can't tell if your dev can code. if you're in that position, you
should find someone to help you evaluate candidates, or you might just get
screwed.

~~~
studiobuzz
No truer words have been said.

Buying software if you are not a coder, makes you very dependent on trust and
thus makes your hiring decision very important.

I always start with some simple project.

Barry Rickert <http://www.studiobuzz.biz> <http://www.thecreativebuyer.com>

------
GavinB
We work with the polish office of a development shop. They get more done
faster, and with more agility and creativity than anyone else we've worked
with--and all this having seamlessly stepped into a code base that someone
else built.

It's not about where the office is, it's about the quality of the people.

------
MDX
Here's my outsourcing story:

I run a busy web dev firm in the USA and we needed a way to speed up our
project time lines while still maintaing high quality. The easiest way for us
to do this was to outsource the front end code so we could concentrate on
design, usability, marketing and back end development.

You would think that outsourcing HTML/CSS would be fairly easy. Turns out that
many of the companies offering front end coding (from a layered PSD file) have
no clue what they are doing. In fact, there were times we provided them with a
complete, highly detailed spec and even wrote some of the markup for them and
they STILL managed to screw it up.

We tried several different firms before we found one that actually knew what
they were doing and would adhere to our specs. Now that we've been working
with them for about a year they understand what we need and can consistently
deliver quality work.

Just a quick note about the cost: they were a bit more expensive than the
other firms we dealt with but I'll gladly pay a bit more if the work can be
done right the first time :)

BTW - the company we work with is called XHTMLized I highly recommend them for
front end code.

------
TomOfTTB
I guess the question for me is “what do you mean by successful?” After a lot
of trial and error I’m to the point where the simple outsourcing I do is
relatively successful by my own standards but that success is not based on
saving a lot of money. Let me explain…

Essentially what I do is spec out the project very specifically and have local
people write the front end. Then we outsource the backend and have interns use
the locally built frontend to thoroughly test the backend delivered from the
outsourced company.

This isn’t dramatically cheaper since you have to spec the thing locally and
pay interns to test it while still paying the outsourced developers (it only
saves about $2.65 an hour by my calculations). But it does have advantages in
that it allows us to be more flexible with our schedule (we can employ more or
less outsourced workers as needed) and it does make for a happier development
environment (allowing local developers to focus on the relatively more fun
front end development and less on the nuts and bolts backend stuff)

So in the end I feel it’s successful though again not so much in the financial
sense.

~~~
mattmanser
Fun front end? You have some weird developers, most of the developers I know
either:

1\. Hate front ends

or

2\. Should never be let within a million miles of them

And for such a trivial saving I wouldn't want to sacrifice the coherent
codebase, code reuse and inhouse knowledge of how it actually works. I would
guess that the hidden support costs must be significantly higher too.

~~~
TomOfTTB
Well again part of the point is to spec out your project very specifically. As
in "These are the functions we need, these are the variables we will be
passing and these are the results we expect to be returned". So code reuse
isn't a problem nor is knowing how to use it (quality of code can be a problem
but a big part of successful outsourcing is finding people you trust to write
decent code)

As for the "Front End" being fun I'd point out that the developers I'm working
with are Information Systems people more than Computer Science people. They
enjoy working with the actual users, planning features and then implementing
those features. What the outsourcing does is allow them to say "I need this
string parsed in this way so I can make the rest of this feature work" and
just have it done for them rather than having to do the grunt work of writing
the relatively easy but time consuming code that parses the string.

------
clueless123
Many large companies have dev centers offshore. If you count them as
outsourcing, I have seen very good examples of reducing costs while
maintaining the existing product quality (I say maintaining, because it was
never great to start with) Concrete example: one of the largest travel
industry outfits has several hundred people in Poland, and they do excellent
work. IMHO

In contrast, from the 20 or so projects that I have seen outsourced to India,
I have not yet experienced a success story. But I have seen _many_ examples of
excellent Indian developers here. When I asked them about the difference, the
common answer is.. " If you are good, why would you stay there to make on 1/3
of what you can make here! "

Finally, Lately I've seen several senior engineers cashing out from here and
returning to their countries to much favourable employment conditions.

~~~
blacksmythe

      >> Finally, Lately I've seen several senior engineers cashing out from here and returning to their countries to much favourable employment conditions.
    

Including those from India. You can live very well when you couple the low
cost of living in India with the higher salary after making direct contacts in
the U.S.

------
edderly
People tend to forget that when the business you work doesn't make money
itself (directly) out of software that outsourcing is now standard practice.

From a upper management perspective I get the impression that whether a
software project is going to succeed or fail is risk of any project - and
whether it is outsourced is a minor concern - or only a concern for the
software development organisation involved in the decision.

I've seen outsourcing work best when the outfit involved brought some kind of
ready made solution with them and it was a matter of adding functionality or
adapting it for a specific purpose.

In addition I have seen acquisitions involving overseas development sites work
well too.

------
kls
[http://www.google.com/url?sa=t&source=web&cd=10&...](http://www.google.com/url?sa=t&source=web&cd=10&ved=0CEYQFjAJ&url=http%3A%2F%2Fwww.cids.ie%2FDocuments%2FHealthcare_The%2520Hidden%2520Costs%2520of%2520IT%2520Outsourcing%2520_%2520MIT%2520SLOAN.pdf&ei=LpMwTI2eIYH88Aat9PiZAw&usg=AFQjCNFu6yWBvDegZh8n-JuYfqNZdikEbQ&sig2=U8l9ytBpQFWGnEHEMLdRMA)

The above is from MIT Sloan and pretty much sums up the reality of
outsourcing. To do it right, it cost as much as onshore development.
Outsourcing should be used to find quality people, as they are always in short
supply, and not for cost cutting, because the reality is that it is not
cheaper.

There are also cultural issues to deal with. I was part of a project rescue
for a Saudi Banking project, in which it was outsourced to the US. The lending
rules where not clearly defined, because the fact that Islamic Law forbids
usury. That is pretty much common sense in Islamic Nations. The US developers
and Architects where having a hard time grasping the fee schedules and
therefore, the project overran and failed. When I was brought on I documented
every little detail whether common sense of not and then promptly outsourced
the business rule development to Egypt. The project ended up costing 1 1/2
times the budget and that is a pretty familiar story with outsourcing. If
macro concepts can be missed due to culture, it does not bode well for the
micro ones.

You see so much doom and gloom about outsourcing because that is the reality,
backed up by countless documented cases, statistics and post mourtums. You
hunch is wrong because it is anecdotal.

~~~
plinkplonk
"To do it right, it cost as much as onshore development. Outsourcing should be
used to find quality people, as they are always in short supply, and not for
cost cutting, because the reality is that it is not cheaper."

This isn't _quite_ true in my experience. You are absolutely right in saying
that finding good people should be the primary focus of outsourcing but the
fact remains that the cost of living for even a very good person varies quite
bit across the world. I have lived in both the United States and in India, and
I would charge significantly different rates if I were to take up an
outsourcing project today from Bangalore vs from California, say. I know
peopel who are outsourcing high quality Ruby On Rails work at 35-50$ hour to
small teams of ex ThoughtWorkers (due disclosure: some of my ex colleagues) in
Bangalore, who are very very good at what they do (just to give a specific
example). They deliberately avoid bottom-of-the-barrel rates, but I'd be very
surprised if even those rates were viable in San Fransisco.

(Just to be clear I have no intention of doing this kind of work ever again -
most outsourced work happens to be crap maintenance-of-terrible-
codebases/braindead-cookie-cutter-work people in the West don't want to do.
Cleaning up muck gets old very very fast)

~~~
kls
I just linked to a document that says it is true. It is an scholarly article
that has been peer reviewed.

As well, the cost of living of a developer is irrelevant as documented in the
paper. The additional overhead of hiring managers and technical / business
experts offsets any reduction is cost due to cost of living that one perceives
as a savings. These are the hidden costs that the papers speaks directly too.

Sure you can, roll the dice on elance or one of the other freelancing board,
work directly with a developer and hope that they get it right, but if a
company don't hire project managers to ensure the project hits every micro-
milestone and business analyst to document the requirements in extreme detail
then that company significantly increases their risk profile.

That is the crux of the issue, you get the development work for cheaper but
you offset the savings with additional project management and analyst costs
because outsourcing causes more oversight and management.

------
hsuresh
Oh yeah. It does, at least for me. I write code in ruby, .Net, Java (and eager
to work on Clojure/Erlang/Scala) for my clients. I write tests, usually in TDD
style. More importantly, i understand software and software development, i am
usually the one who suggests adding/removing features, not the other way
around. I am also a little optimistic about my estimates (who is not? ;)), but
don't think that ever got me into trouble, at least yet. I can communicate
really well. My clients are mostly happy with my work. And.. Wait a minute,
you are talking about a buyer's perspective aren't you? Ignore my comments. :)

------
Aegean
Remember that people you deal with abroad are also _people_ , just like
onshore. Just get your people skills right, and it will be the almost the same
thing.

------
learner4life
One of the reasons outsourcing happens is not to get cheap labor. Individual
developer cost do seem cheap, but adding the culture cost (like India, where
low productivity is generously tolerated and bad people are kept around) and
the communication cost(time lag, people not understanding the requirement,
distance from the customer) brings the total cost of the team to be nearly at
par with the cost of the American team.

It is not that the management at the large companies cannot see it. They do it
prevent wage inflation in America. If they can get comparable work( and you
can get it from India if you manage it right) at nearly the same cost, they
reduce the demand for similar jobs in America.

As to the specific answer , yes it does work. However, you need a strong
management that focuses on results. I have seen projects outsourced with no
clear goals handed to the offshore team. They invariably fail (despite the
team being reasonably smart) because the team was not working towards anything
tangible.

------
coryl
I think Digg was started by being outsourced through eLance

------
_delirium
What size are you looking at? On either the success or failure side, I think
there's relatively few similarities between, say, getting freelance devs from
elance on one end of the spectrum, and contracting out a big project to
InfoSys on the other end of the spectrum.

~~~
kranner
Any size. Thanks.

------
vgurgov
Just to name some companies:

T-Mobile, Google, Sun, Microsoft, Digg, MySQL, HP, Facebook, Zynga,
namealmostanysuccessfullitcompany here.

Of course it works! Its just about how many ppl underestimate complexity of
getting it done right.

------
studiobuzz
My personal experience is that outsourcing success or failure is highly
dependent upon writing of the original software spec. The second most common
failure is that clients run out of money as they did not realize how much it
would take from the start. Vendors are at fault too as they tend to "do what
it takes" to get the job but don't carry that attitude to complete it.

Barry Rickert <http://www.The> Creative Buyer.com <http://www.Studiobuzz.biz>

------
AmberShah
Unfortunately, your hunch is proven wrong wrong wrong by statistics. Actually,
in-house development fares worse than that (if you count ones that go over
budget, over schedule, under scope, don't get used AND ones that get scrapped
completely) and I don't think you're suggesting that the odds of an outsourced
project are better?

Stats on that are everywhere. Some are here:
[http://www.codeanthem.com/blog/2010/04/how-to-save-the-
softw...](http://www.codeanthem.com/blog/2010/04/how-to-save-the-software-
industry/)

------
kranner
To clarify: I am aware that there are plenty of outsourcing disaster stories,
and that these probably outnumber the number of successful cases.

I am looking to hear from some of the latter, especially from those on the
commissioning side as they might be seen as less likely to have their jobs
depend on it.

