

Why Outsourcing Sucks - edw519
http://www.diovo.com/2008/08/why-outsourcing-sucks/

======
inovica
This is taken from the perspective of an Indian, with respect to outsourcing
to India. I personally have had the same problem in the past (with India) so I
looked around. In the end I settled on outsourcing, in a slightly different
way, to some guys in Russia, Latvia and Brazil. The short version (which I
appreciate is still quite long!) is:

1\. I employed individuals, not companies. It took more time, but I got good
quality people on board. This is 8 years ago when I started, so I think I
speak from experience.

2\. The initial guys I started to work with, I have now made partners in some
of what we do (sourceguardian.com as one example - they are full partners in
it). Reward well and treat people with respect. It goes a long way.

3\. I usually start with small tasks and build up. This way you can assess
quality of code, but of equal importance you can also recognise if someone is
motivated and who will deliver to deadlines. Anyone who misses immediately, I
don't use again. Harsh, but it works for me.

4\. I was not a programmer when I started. I appreciate this is Hacker News,
but we're not all born like that and indeed it was never my dream. I learned
to program so that I could put myself in the mind of the people I was working
with. Worked for me, and guess what?... I enjoyed it. I'm still not a good or
fast programmer, but I can converse more accurately what I want with the
knowledge of what will work

I find it annoying when people put their own personal perspective as some kind
of universal law. Outsourcing maybe sucks for many people, due to their
experiences, but for me personally it has allowed me great freedom in my
business and has introduced me to more cultures and more people than I would
have otherwise.

~~~
sant0sk1
As a software consultant, I always want companies to outsource their
programming tasks...to me! ;-)

But seriously, I agree with your take, inovica, I was frustrated with the
quality of work (and integrity of the workers) when trying to cut costs and
hire Indian programmers. So I looked elsewhere and have been very pleased with
the results I've gotten by working very closely with Russian programmers.

A blanket statement such as "outsourcing sucks" isn't helpful to anybody
seriously considering it. It's also link bait, imo.

~~~
timr
You're kind of doing the same thing -- the fact that you've had good
experiences with Russian programmers doesn't mean that Russian programmers are
good, and Indian programmers are bad. I've had very _bad_ experiences with
Russian coders (not by choice).

I think the parent's point was that _some_ outsourced people are good, and
that you just have to take time to find the pearls in the (giant, steaming,
rancid) piles of oyster guts. The bigger problem with outsourcing, if you ask
me, is the communication delay. It's nearly impossible to build a team when
they're thousands of miles (and 12 time zones) away.

~~~
Retric
I would suggest looking in India for coders and paying them 40-50k/year in
India. The idea is to skim the top talent out of the market and maintain
quality not just add people at the lowest cost possible.

------
senthil_rajasek
This is not a well researched article. At best its a personal perspective and
everyone is entitled to theirs...

Empirically a majority of the software work outsourced happens to be the
resource intensive and the mundane work from large companies, primarily in the
US. The software outsourcing companies from India have figured out or happen
to know how to deliver and meet the expectations of these clients best. They
are addressing the market need.

I hope the people on this forum realize and distinguish between outsourcing
companies in India and the Indian programmers.

In other words, Don't hate the player, hate the game...

------
t0pj
_"You will get quality code only if it comes from your heart - like when you
code for yourself."_

Good advice for anybody, anywhere, any time.

------
azharcs
What he says is pretty much very true. Consulting Companies here are on a
hiring spree in colleges. Education here is pretty bad too, the reason being
it is in a chapter-wise marks format. Let me tell you how a CS student
prepares for exam, Variables is 20 marks, Pointers are 50 marks and Arrays are
40 marks, Lets just study Pointers and Arrays(you get the point right). This
is pretty much the case everywhere in India. Optimize the marks at the cost of
Understanding.

An entry level engineer here makes close to $1.5-$3/ hour in a reputed
consultancy firm. I would not want to talk about those low paying firms at
all. Nobody can expect good code for $3/ hour. I am sure Clients are paying
more money per person but Consultancy is a broker here who eats up much of the
money of their employees. This is pretty much the case here.

~~~
luckystrike
Sorry, but i disagree with your _blanket_ statements as well.

    
    
      Let me tell you how a CS student prepares for exam,
       Variables is 20 marks, Pointers are 50 marks and Arrays are 40 marks, Lets just study Pointers and Arrays(you get the point right). 
      This is pretty much the case everywhere in India.
    

Not sure how many CS students you know, and how many of them actually studied
the way you mention. But to extend that to "pretty much" everyone is going a
bit too far.

And as far not giving your best (or getting the best) when you are working for
$5 an hour (its great we have currency exchange rates!), is also not true as
well. I know plenty of people who give/gave their best, just because they
liked it. I love programming and believe i churned out good stuff, when i was
earning that much. And there are plenty of others like me.

So does that "pretty much" means, everyone does great work, no it doesn't.

~~~
azharcs
I was talking about education system, it is not application based but theory
based. More importance is given to marks than understanding... which leads to
bad programmers. As i stay in Bangalore(it is a outsourcing hub), i can surely
tell the situation here.

There are surely exceptions, you can find tons of great programmers in India
who contribute a lot to FOSS, but the other question is "Are these people
working in Outsourcing Consultancies"? I guess not.

 _And as far not giving your best (or getting the best) when you are working
for $5 an hour (its great we have currency exchange rates!), is also not true
as well. I know plenty of people who give/gave their best, just because they
liked it. I love programming and believe i churned out good stuff, when i was
earning that much. And there are plenty of others like me._

Understand, we are talking as a whole, there are always exceptions. There are
many people like you, who like what they do but most of them are here only
because of the money, that is the reason there is so high attrition rate in
consulting firms. I can give you tons of reasons but i don't have time. Time
spent giving you answers is inversely proportional to lines of codes written.
;)

------
luckystrike
As they say, the truth lies somewhere in the middle.

It is never wise to trust and go by any blanket generalization. I am afraid
the author raised very valid points, but at the end made this blanket
statement:

    
    
      So what is the solution?
      Don’t outsource. Seriously.
    

And then (probably as an afterthought) added this:

    
    
      If your work is very monotonous and does not demand high quality, outsource.
      If you want a very good software product and if it the flagship product of your company, never ever outsource.
      You are doomed otherwise.
    

My views on this topic:

1\. Outsource wisely. If consider yourself a hacker, and are in early stages
of developing your product/startup idea, then outsourcing is definitely not
for you.

2\. If your work is not well specified and not well thought out, cross
location development would make it even more harder to come up with something
special.

3\. Good programmers are not easy to find anywhere. If you are looking to
outsource, and want a good team, please be ready to put in the hard yards.
Negotiate, and select your team.

4\. If even if you have the right team 'skills wise', please give this
'relationship' a little bit of time as well. :-). Developing a good working
relationship across geographies is not easy. So, if you are looking for a
quick solution in a short time frame (2-3 months), your odds of not getting
what you really want, are higher.

Previous related discussion threads:

<http://news.ycombinator.com/item?id=217858>

<http://news.ycombinator.com/item?id=233145>

------
gaius
Interesting to see that Mech Eng grads in India have the same problems as in
the UK.

------
rmk
Outsourcing doesn't suck in _all_ cases, which this article seems to imply.
For example, I was maintaining cobol apps on a mainframe that were about 20
years old. Recently I read a news story that gov. payroll systems in
California run entirely on cobol, and also that cobol programmers are
impossible to come by. In India, the big firms actually train new grads in
cobol etc., if the job requires it.

So, now, what is better, just stop paying the gov. of california employees, or
outsource the payroll processing to india?

outsourcing is not just about money, there's more to it.

------
Allocator2008
Well you know there is an old story about John Henry who dug out rock with a
pick ax to make way for the railroad being built to connect the east with the
west in the American frontier days. John Henry was really good, but one day a
steam engine came along that could do his job just as well. So there was one
day a contest. Henry kept up the the machine as best he could, and, in some
versions of the story, even beat the machine, but his heart failed him at the
end and he died. Moral of the story: no matter how good you are at your job,
new ways of doing it will always come along to make your old way of doing it
obsolete. It is called progress. Thus it is with outsourcing. It is the wave
of the future, it is inevitable. If you don't like it, perhaps you should get
to your next meeting via covered wagon and let the rest of us use the new
fangled railroad contraption. I for one like outsourcing - more work for less
cost. Can't argue with that baby! :-)

~~~
DarkShikari
Sure, "more work" if you measure in man hours; but when you actually go to use
the code and find that it won't compile because the Indian coders who wrote it
didn't even have computers, and wrote the entire application down on paper and
paid to have it typed, you realize you wasted your time and money.

Outsourcing is no different from hiring regular programmers; if you wouldn't
hire the people you're outsourcing to, why in the world would you trust them
to do a good job?

True story, by the way.

~~~
pfedor
If the results of outsourcing were so bad you all guys wouldn't be so worked
up about it. The truth is, the person you answered (currently downmodded to
-1) made an excellent point. People who protest against outsourcing are no
different from the workers long ago, when the companies first started using
machines to perform tasks previously done by physical labor. The workers then
went on strikes, were destroying the machines etc.

~~~
johntabet
Not necessarily a great analogy. I think you are trying to liken cheap,
possibly underpaid, labor to machines and factories. While I think that it is
entirely possible that cheap Indian (or other) labor could replace more
expensive American labor, I don't think low paid labor is exactly the next
generation of technology. Something about likening cheap human labor to
convenient innovations in technology just doesn't strike me as right.

