views:

295

answers:

5

For a while there seemed to be an aggressive trend towards outsourcing development jobs to India, Ukraine, et al. However, recently I have been hearing anecdotal stories from friends in the biz that it is falling out of favor for a number of reasons. I am interested in what the experience of the SO community shows on the topic.

So here is the crux of my inquiry:

(1) Is your company currently outsourcing at least some of its development work?

(2) Is the trend towards more or less outsourcing?

(3) If less, what factors are driving it (communication issues, project failures, cost overruns, something else?)

+2  A: 

I have found that communicating requirements across any measure of distance or language barriers makes outsourced projects very prone to failure. To complicate things, requirements and specifications are often further filtered through project managers on both sides of the outsourcing arrangement.

In my experience, it is vital to the success of a project for developers to have access to the people that will be using the software. That often includes just sitting down with people and seeing how they work. Outsourcing makes this difficult to impossible.

Rob Prouse
+1  A: 
  1. No we keep all of our developers in house. One we have contracts which forbid it, but also because management knows that keeping the knowledge in house is key to the company's survival.

  2. Less, anytime we can not use a contractor we do it. Contractors and outsourcing isn't a long term win when developing custom software to sell.

  3. We're a tight knit group of people where I work, and we like working face to face with each other. Outsourcing would ruin that relationship. There really is an advantage of being able to walk down the hall and talk to someone on the fly when you need to find out something. Also we want a large amount of control over the software we sell. Sometimes we have to change how the systems work (we're an ASP) quickly to accomodate a new client. You can't do that if people outside of the organization write the code for you.

Kevin
+3  A: 

1) No.
2) Less.
3) Quality of work from outsourced programmers.

I don't know if you've ever had experience, but in my own experience, the quality of LOCAL outsourced programmers is about 50% of what you can get with in-house developers (who have a stake in the project, where contractors will not). With foreign outsourced programmers (who generally are writing a small part of something and don't even know what the project IS), quality falls to 10-20%.

For some reason, everyone hopping on the outsourcing bandwagon a few years ago didn't realize this (even though I've always felt it was fairly obvious).

DannySmurf
+1  A: 

(1) Is your company currently outsourcing at least some of its development work?

No.

(2) Is the trend towards more or less outsourcing?

The trend here is to minimize outsourcing of development. We tried it for a web project and it didn't work out well for us.

(3) If less, what factors are driving it (communication issues, project failures, cost overruns, something else?)

For a small company like mine (4 devs, 10 other employees) it really doesn't save much to hire a local guy who passes the work to his friend in the third world. The local 'broker' wants to be paid almost as much as developer anyway.

If we had a full time employee/project manager with direct contacts overseas and a self contained project for him/her then outsourcing would probably work better.

Jim In Texas
A: 

Note that I work within my company's IS department and am answering from that perspective:

  1. Yes, there are consultants that the company has used in implementing some big software packages,e.g. ERP, CRM, HRMS, WSSO, ESB, etc. Lots of big acronyms and budgets in the 6 figure or more range is partially why this requires a certain amount of expertise in getting it done.

  2. The current trend is less because some of the projects are nearing completion and thus the consultants that were brought in aren't required anymore.

  3. Successfully completing the implementation and installation of the software is the main reason why I see it as less outsourcing. There is also a budget and an approval process for getting anything into the pipeline so for some things they may get outsourced but I wouldn't know anything about it as there may not be any impact within my team.

JB King