Recent Posts

Archives

Topics


« | Main | »

Software Outsourcing – Two Options and They Both Stink

By Jeremy | March 16, 2010

There are two kinds of software outsourcing: some or all. Outsourcing the whole project is not smart. Typically, when outsourcing a complete project, the outsourcing company acts as a consultant. This means they write the software, get paid more than they bid for the job, and then leave, never looking at the software again. Because they leave, they don’t care how well the software is engineered; they don’t care that fixing a bug will take eons and hoards of cash. You, who just paid a pile of green for the poorly coded software, are now stuck with the cost of maintenance and no software gurus on your team that know how the software works.

The second option is to outsource some of the software. The problem with outsourcing some of the software is that the software needs to be embarrassingly parallelizable. This means that there needs to be discrete parts of the software that do a complete function on their own without relying on any other piece of your software. When a program can be divided this way, some of these distinct parts can be outsourced, while others will stay within the company. Most software does not have the property of being embarrassingly parallelizable or else software engineers would simply create the specific parts once and plug them together. Then no one would need to program any more. Clearly, there are more programmers today than there were last year.

Both of these software outsourcing options stink. Pay more money now and less later; choose the third option: no outsourcing.

Topics: cs404, school | No Comments »

Comments

You must be logged in to post a comment.