Fog Creek Software
Discussion Board




Outsourcing Development Overseas

My company has recently outsourced their core development overseas rather than pay the higher costs of developer's wages.

They are planning to retain a minimal staff of developers at the company to install and liaise with clients, while the development is carried out overseas.

Now I know this is a terrible idea for a company whose core is software development, but I would be interested in hearing any stories you might like to share if you have been in a simular situation.

Name changed to protect the innocent
Monday, May 13, 2002

The company I worked for over the summer outsourced some smaller projects to a development team based in India for cost reasons. The bottom line is 'you get what you pay for'. The code quality was low and required a lot of time on our end to clean up the code. Some stuff had to be dropped and redone by us, other things worked but was painful to maintain.

The whole idea behind the outsourcing was that we had solved the problem before and the programmers didn't want to do it again. In the end, being an intern, I was stuck with cleaning up code, which is just daft because I was on more money than the outsourced programmers and could have done a better job from the outset.

Miles Barr
Monday, May 13, 2002

I don't know about going overseas, but any transfer of a large body of source code is very difficult to pull off.  Several years ago the company I was with bought a product containing 700 KLOC, and like most code after a half dozen releases, it was a mess.  With only source code comments and a few out of date design docs to go on it took months to do anything useful with it.  Hopefully your senior designers are going over for several months of tech transfer to the new group...

IanRae
Monday, May 13, 2002

We've done some outsourcing with a firm in India, and while I was not directly part of the outsourcing project, I talked with those who were.  The consensus seemed to be:

1) It required a lot of co-ordination, and there were a number of surprises.  Particularly:

1a) The overseas developers needed to be told *exactly* what we wanted, in greater detail than we needed to tell local developers.  I mean, hey, they didn't know us and we didn't know them.

1b) The time differential caught us off-guard; while we were working, they were in bed asleep, and vice versa.  Real-time communication was practically impossible.

1c) We didn't get status reports.  We'd send them a specification, then would wait for several weeks until the completed code was sent to us.  When you're working with people in the same office, you get an idea of how they're doing almost through osmosis.  This was a completely curtained experiment.

2) It was successful.  Despite the problems, we could push certain bits of development to other people and not worry about it.    It's almost like customizable COTS; specify what you want, then the shrinkwrapped package appears on your doorstep a few weeks later.  It may contain some surprises, but it solves certain problems.

As with most things, this wasn't a silver bullet, but it had its uses for us.

Brent P. Newhall
Monday, May 13, 2002

Hi, All
Why US  companies outsorce mostly to India, not Russia, Ukraine? Are there any special reasons?
This question is a bit selfish:))

Andrey
Monday, May 13, 2002

"My company has recently outsourced their core development overseas rather than pay the higher costs of developer's wages."

I'm curious as to the cost defference between using local programmers and using off-shore developers. How much did it cot per hour to use the Indian programers.

NO! I'm not hinking of outsourcing to foreign developers.

Marshall Harrison
Monday, May 13, 2002

I think you also need to be smart about WHAT you outsource.  Some tasks are easier to "break off" than others.

Bella
Monday, May 13, 2002

Software development in the United States is dead. 

I'm from Pittsburgh, and as a child in the late seventies, when it seemed apparent that the steel mills were in trouble, all the steel workers said things like, "This country is the greatest in the world, and US Steel is one of the biggest companies.  They'll never export *our* jobs."  Well, it's only twenty odd years later, and there are no steel jobs at all in the "Steel City".

It's a heck of a lot easier to export software jobs!  Your company doesn't have to build a huge steel mill overseas - it only has to send over a few laptops.  And it costs huge money to ship the steel back to the US after it's made.  To ship the software back here, it only takes a click on the "send" button.

I'm obviously biased, but it's my contention that American software engineers are the best in the world.  But let's face facts.  In ten or fifteen years, the American software engineer will be as rare as the American-made TV.

SZP
Monday, May 13, 2002

My company splits development between
Canada and the UK. While this isn't strictly outsourcing, it probably shares some of the same problems.

My personal recommendations:

Spend money on communications infrastructure;

Don't underestimate the effect of culture differences;

Read 'Global Software Teams' by Erran Carmel.

David Clayworth
Monday, May 13, 2002

SZP,
Great analogy.    People are too biased towards their own self interests to ever see something so obvious so clearly. 

Bella
Monday, May 13, 2002

Sounds suspiciously like "rise and fall of the American programmer" o me.  I'm also a Pittsburghian by birth and the first 20 years of life.

I don't think the analogy holds at all.  The Steel industry in Pittsburgh suffered from:

. lack of plant investments and upgrades
. bloated management
. inflexible union rules
. expensive environmental regulation
. imported steel being dumped below mfg cost
. requires very high capital investments and high debt loads

Software, OTOH, has very few similarities with steel.  The only item which might be up for discussion is that of domestic cost vs. foreign cost.  I think that topic was covered under another thread about H1B visas.

Along with low barriers to entry comes the "threat" of capital and money flow.  Software development is very portable and can be very transparent in its nature.  This is very different from Steel.

At its core, there ain't no such thing as an "American" job.  Its yours if you earn it.

Nat Ersoz
Monday, May 13, 2002

SZP,

"In ten or fifteen years, the American software engineer will be as rare as the American-made TV."

I was just wondering why you say this. As in australia it seems like >90% of the shows on telly are "Made in USA".

What happens ? Do you guys just send us all your shows because you know they suck and then watch TV from Canada or something ?

Chris O
Monday, May 13, 2002

i think he meant tv sets, not tv programming.

xn (an american only slightly embarrased to be a home and away fan)
Monday, May 13, 2002

Sounds suspiciously like "rise and fall of the American programmer" to me


Did Yourdon's book focus on outsourcing?  I always discounted it considering it was written in the early 90's, right before the greatest tech boom ever, when the American programmer was neck deep in money. 


Was it just ahead of it's time?  Then again, he wrote "Rise and Ressurection" in 1996.  Broken clock syndrome ?

Bella
Monday, May 13, 2002

<< Sounds suspiciously like "rise and fall of the American programmer" to me >>

It was "Decline and Fall..." And yes, it sounds very similar.


<< Did Yourdon's book focus on outsourcing? I always discounted it considering it was written in the early 90's, right before the greatest tech boom ever, when the American programmer was neck deep in money. >>

Not quite outsourcing, but similar: the Japanese "software factories" that were going to put us all out of work. The reasons why were similar to but not identical to the ones being cited for outsourcing.


<< Was it just ahead of it's time? Then again, he wrote "Rise and Ressurection" in 1996. Broken clock syndrome ? >>

"Rise and Resurrection" did a careful analysis if why he was wrong in "Decline and Fall". I don't have a copy with me; but it seems like the problem identified was that the hardest parts of the job were simply not as automatable as the proponents claimed. That's not as relevant for the outsourcing shops as it was for the factories.

But outsourcing has a lot of problems. It can be and has been done successfully, just like any number of other "hot" trends (XP, Agile Development, Unified Process, you name it); but like all of those, it has also shown some spectacular failure. Outsourcing requires a process change, not merely throwing money at the problem. I've known some really good Indian developers, as well as Filipino developers, Jordanian developers, Chinese developers, Russian developers... We have no monopoly on smart people who know the technology. So the work can be done anywhere -- IF the process is in place to support it. Time lag, language differences, culture differences, technology differences, proper separation of analysis and design and development tasks... All of these have to be addressed.

I have a friend who likes to ask why people try all the fads out on the software development team. Why don't we try paired management? Why don't we try rapid accounting? (Oh, yeah, Enron did that...) The next time someone touts the benefits of outsourcing development, point out that managers overseas cost a lot less than do managers here, so maybe we should outsource management.

Martin L. Shoemaker
Monday, May 13, 2002

In a typical big software company or ITShop only about 2-5 percent of the total buget is spent on people who code: that is if big SW company spends 10% of budget on R&D (10-20% is typical in the industry) that means Executives- 2-3% middle managers, product managers, project managers, producers, business analysts ... 2-3% QA, Admins, Architects (other people who dont code) 3-5%...
i.e After accounting for all the Layers of non-coders, the coders account for only 2-5 percent of a companies total costs!

Now, afcourse you can say ok, but that still buys us twice the programmers, but (figuring that the average Indian(not sure about chinese,taiwanese, thai or russian) company charges between 20-30 dollars an hour  (and yes this is the actual range) (and lets say an Amercian Programmer costs roughly 50 dollars an hour 50-80k + benefits), but
a)twice the programmers does not equal twice the productivity
b)communicating with people overseas does incur higher management costs (you cannot simply draw something on a whiteboard, or write a quick email, everything must be speced out in gory detail)
so the actual, real cost savings are something like 10-25 percent (of your 5 percent), because god knows you still need all your managers

Daniel Shchyokin
Monday, May 13, 2002

Some other important differences between making steel beams and applications

1. do you really trust sending your source code overseas
2. if it is an integration project, how do you replicate the hardware (especially since some of it would be illegal to send over)
3. What about test data, do you want to send your test data overseas as well!
4. When support has an escalation, who do they go to if the engineers are all in india (afcourse this isn't quite the same problem if you outsource support as well)

Daniel Shchyokin
Monday, May 13, 2002

>"Now I know this is a terrible idea for a company whose >core is software development"

It seems to me that this would be exactly the kind of development that a shop in india would be best at. One huge deliverable like a word processor or a browser that is very clearly spec-ed out, with a staff of translators working on language issues.

Didn't Sun send its Java shop to india to take advantage of this?

frankenstuffer
Monday, May 13, 2002

Well, the good news is that productivity is the important metric, not just plain cost.  If your communications has to go so far, with non-technical management, productivity will die.  And there usually is a need for speed to deliver product.  That's why the situation is entertaining, not scary.

All of your mechanisms are subverted.  No interviewing, no control over morale or customer feedback, unless you have the skill for this.

But congratulations for those companies who can manage this situation well.  Competiing on price is valid competition.  After all, western countries have the advantage of higher capital and infrastructure.

Andrey, maybe the 1 billion people make India a more visible target. ;-)  The most competent overseas team I've seen so far though came from Romania.

Jenna Haydn
Tuesday, May 14, 2002

We first outsourced (to a company in the Ukraine) to convert our Windows program to Mac. This worked great. Fixed price, not too far off schedule, and we agreed about what was a bug fix (included in fixed price) and what was a new feature (we pay extra).

We now use the same company to do new Windows development. That is quite different as the spec is fluid. We pay about half what it would cost per man-month here, but my guess is that it takes three times as many man months. But no management issues. No offices to maintain. No personnel problems.

I don't think we are saving money. We are getting quality programming, just not quickly. Communication is an issue. Not a great success. Not a failure. When we finish this verison, I'll have to decide what to do next.

Bottom line. Outsourcing works great in situations where the specifications are really clear -- like converting from one platform to another. How well it works with a less complete, and more fluid, spec is more problematic.

Harvey Motulsky
Wednesday, May 15, 2002

The only instances where I've seen outsourcing work well were ones in which (a) a few years of foundation building was allowed (you get what you pay for); (b) an engineering team also existed in the U.S. (which did help with quality assurance); and (c) the management of the outsourcing was taken very seriously. One fulltime person in the U.S. who had no duties *other* than managing the overseas team.

I'm not worried about the flight of *too many* jobs overseas because (a) most American companies simply don't have the know-how to make it work; and (b) there's a lot of shops - thousands, in fact - that consist of 1-5 developers. In this environment, outsourcing simply won't work.

BTW: If outsourcing was so easy, why does the U.S. software industry so desparately push for H1B increases? If they *could* send all of our jobs overseas, they would do *that* instead of using H1B's.

What I'm dying to see are consultancies that offer outsourcing for (a) CEO's; (b) Boards of directors; (c) the morons who *run* our software shops.

skautsch
Friday, May 17, 2002

"What I'm dying to see are consultancies that offer outsourcing for (a) CEO's; (b) Boards of directors; (c) the morons who *run* our software shops."

Wow!!  That would be cool! 

One of the companies I used to work for went the offshore (India) route recently... about a year ago.  It was because it was (#1) cheap, in that 20-30 dollar range.  The first thing "shipped" over was maintenance and production support callout - the time difference coincided with the middle of the night.  More recently though, they have turned over some development projects.

Did the quality improve?  Nah, local people wind up fixing the delivered bugs.  Did the time to deliver improve?  Nah, small things still take forever.  It's just cheaper.

I should also mention that this company (as in the "C" classification above) has the approach of throwing as many people on a tiny problem as possible, and then spending months in committee discussions over the important things... like the proper color of gui pushbuttons. 

That's why I ain't there any longer...

Joe AA.
Friday, May 17, 2002

I've never been able to get a straight answer out of anyone as to whether or not outsourcing saves money.

I've been in two situations where my peers decided to oursource development (to India) and in both situations the costs difference between adding another internal team and hiring the external team were minimal.

However, the indian firm promised 3x as many developers.

The software we were building was not firmly spec'd out so both situations were a disaster. I.e. we really did need another team of 3-5 highly skilled and adaptable senior local developers who could work with us, not a team of 50 bottom of the barrel programmers difficult to communicate with.

The thing I found most strange about the decisionmaking process was that the outsourcing firm was not going to save us any money from the get go. The actual price was similar to prices quoted from USA outsourcing firms, as well as just hiring a few more people. Its just that the offshore place promised more warm bodies.

It seemed as though these factors swayed the decision to outsource:
1. USA outsourcing firm was 2 guys in a shack, wanted $200/hr, indian firm was also about $200/hr, but they promised something like 15 guys and a slavedriver assigned to the project
2. hiring some more guys locally would have taken a long time. the indian bodyshop was ready to go at the drop of a hat.

What I'm wondering is:
In most cases, do offshore outsourcing firms actually come up with a significantly less expensive bid than what the project would cost internally, or outsourced within the US?

I.e. does XYZ corp say "we can do your project for $15K instead of $150K!" or "our firm is $20/hr, not $220!".  I've actually never seen this happen. However, I've only been in the situation 2x, and am wondering what other people's experience is.

outsourced
Friday, May 17, 2002

One thing I always wanted to see if it would work is a hybrid consulting company, i.e. some code gets sent overseas, but key components,integration,testing stay in the US.

Daniel Shchyokin
Friday, May 17, 2002

"I've never been able to get a straight answer out of anyone as to whether or not outsourcing saves money"

And you never will... because it doesn't.  It causes a redistribution of funds, ignores the overhead costs, hides other unanticipated costs.  You can prove anything you want through accounting... ya just have to not include the account ya don't want anyone to know about. 

No company (as with an internal IT department) does true total costing of the IT service... outsourced or not.

Joe AA.
Tuesday, May 21, 2002

The way outsourcing contracts are presented, management execs can think they're getting software at a cheaper price.

But of course something has to get squeezed somewhere, and the thing that gets squeezed is quality, robustness and maintainability. Management execs frequently don't have the expertise to assess these factors, and sometimes their IT managers aren't articulate enough to discuss them.

Downstream costs can be higher, due to excessive ongoing maintenance, and lost opportunity costs can occur too when the software can't readily be adapted for new business missions.

Hugh Wells
Wednesday, May 22, 2002

Sometimes this works, sometimes it doesn't.

The question is - who are you outsourcing to ? One of
the bulk bodyshoppers remote-bodyshoppers like
TCS or Infosys? If so, then you're likely to whine about the
experience like most of the other losers here.

If you set up your own remote shop, you can pick the
best - and whether you like it or not, Indians *are* the
world's best programmers - and you're more likely to be
successful.

Outsource Dude
Saturday, November 23, 2002

My friend bought a monitor from Dell, and after receiving it as defective, he was on the phone for 2 hours with an outsourced customer service department (India) where all the responses were scripted to common questions, and when he had a new (unanswered question) the CSR rep had to call the manager which is why the call to try and return the monitor took 2 hours.

Now the friend has sworn off Dell, and takes his expensive time to tell everyone about it, when ever there is a lull in the conversation.

So does outsourcing work? Sure. It works against you in most cases.

Did FCS outsource the development of their flagship product CityDesk? I assume not. I think they cared too much about the quality of the product to risk having it developed by someone without a vested interest in it, and someone who understood how the typical customer of the product would use it.

My analogy is, software was written overseas without understanding how the end user would use it, and it resulted in a small market share.

What would you consider American's are "good" at? Consuming? Imagine if we designed a shopping mall for India, and then after it was build, nobody in India could afford to shop there, because of the cultural differences in the USA lifestyle and the Indian lifestyle.

Over time, the overseas outsourcing fad will fail, since the real problem is not being fixed. The real problem is unmanageable expectations. Macy's at a Wal-Mart price. And there may not be a way to fix it. We are human.

Steve Wasiura
Thursday, February 06, 2003

My companyis very happy and successfuly with theirIndians  Too bad :(

sam
Thursday, February 13, 2003

My  company is currently claiming to be successfully outsourcing a large percentage of their IT work to India.  They are indeed reduced IT expenses dur to layoffs, but very little actual work is done by the vendor. Most of the actual work is done by the remaining employees who spend an enormous amount of time correcting the little code that is produced.  In addition, the user areas, knowing there is little hope of getting their needs satisfied, are building their own semi-technical groups to fill the gap.

It is a variation of the old saw about having a baby in one month by putting your nine best women on the job.  In this case by putting your nine best babies on the job. Guess what! No new baby.

John Lappin
Tuesday, March 04, 2003

Outsource software development is available at
www.softprofessional.com

Mukul Gupta
Tuesday, March 11, 2003

local software development is available at:

(list any of the thousands of American companies providing quality software development services, who get business from ethical customers who don't send their money to another country because they believe in supporting their fellow Americans so they can buy food, clothing and shelter)

I love America
Tuesday, March 11, 2003

Hello ,

  I have started to develop a product in finance & Healthcare sector. I want to do grab the overseas project.
Please let me know the ways to get the projects.

  I am IT professioanl with 6 Yrs experience. I have overseas experience.

Rajshekhar
Monday, May 05, 2003

I am a lecturer in electrical enigineering, department of electrical engineering,College of Engineering & Management, Kolaghat, have some industrial as well as teaching experience. I would like to get some project from Overseas in electrical and software field.

Please contact immediately.

Dilip DEbnath
Thursday, August 14, 2003

My Father has been with AOL for years (although I’ve tried to sway him from the dark side, he wouldn’t listen).  Finally, after having a problem with losing favorites, my Dad called AOL’s support, which had been outsourced to India.  The tech he got was difficult to understand, arrogant, condescending, and gave “canned” replies that were of no help.  In the end, the tech basically said it was something he did and he couldn’t help him.  Great choice AOL!!  My Dad had one more experience calling their tech support and after receiving the same treatment, called and cancelled his account of 7 years.  Working closely with those in our company to develop software solutions, I find that it takes a significant effort to draw out all the information required to even begin a project.  Once we have the core, we go through a series of “evolutionary prototyping” steps as we work hand in hand with our customer to bring the final product to the bull’s-eye.  The comments from our customers are usually that of amazement and satisfaction that they were so involved with the process and that the end result is a product they can and will use.  Try that with a group of guys over in India who barely speak English, want EXACT specifications up front, and are several time-zones away.

B Baldwin
Friday, August 15, 2003

We are a Ukrainian company called Business Automatic Ltd.
(http://www.business-automatic.com/baeng/index.phtml)

Since 1996 when we started as a SW developing company we acquired strong experience in many national and international projects.
Our project development team consists of more than 50 experienced specialists including those with former academic background.

Today we are looking for new opportunities at the international market with companies which would like to outsource their projects to a company overseas ensuring quality at low prices.
Our business advantages are:
- our knowledgeable and experienced staff;
- more than 8 years in managing SW projects;
- good quality of our products and our responsibility for the job done;
- low prices and rates;
- our orientation towards satisfying the customer's needs.

To remove the language, ethnical, time zone difference and other barriers and to work closer to our customers we opened our representative office in Toronto, Canada.

If you want we to help you reduce costs on your SW projects and make your business more competitive in today's hard to survive market surrounding, please, contact us at

tel.: +1-416-219-7350
tel/fax.: +1-416-224-1550

E-mail: us1967@bynet.ca

and we will be happy to assist your needs.

Serguei Oussenko
Monday, May 24, 2004

Well, as I said it the managers are all clamoring for this outsourcing. Well if the indians, chinese, and other countries can do it cheaper, then go for it. But, lets
face it software development is an art form, not a
science. Yes there is alot of science, and math behind
software. Unfortunatly with art requires experience we must remeber that the quality of software is dependent on the experice of the developers with computers. Remeber sending development to programmers that saw their first computer in college is beyond me. I have been programming computers since I was four. I challenge any indian, chinese, or ukranian coder one on one. I will win most of the time. I think like a computer, I can program computers with blinding speed efficeincy, and I can usally do the work of 15 indians, in the expanse of my programming skills, and the speed in which I deliver solid products. No manager that has sent my job overseas for a development project has not begged me to come back and fix the smoking pile of ruble that was delivered from overseas. In mater of fact I have done jobs overseas becuse the best programers are ones that grew up with the technoligy not ones clamering for computer time in some university

XYZVector
Thursday, August 12, 2004

*  Recent Topics

*  Fog Creek Home