June 27, 2007


I read about the guy outsourcing his own job on

I've had good and bad experiences managing outsourced people and projects. I seem to be in a business thinking kick lately, so here are my rules of when to think about outsourcing software development (with a bent on that outsourcing being offshore).

Pursue offshore development when:
  1. Project management/quality assurance can be 40% to 50% of the application (not 40% to 50% of the cost, but 40% to 50% of the total hours).
  2. Project management is allocated to working hours that offshore developers are working - at least 1/3 overlap. That means a lot of really early mornings or really late nights...or both.
  3. The project is VERY WELL DEFINED. The specifications need to be exact, right down to writing the error messages and every business rule. Offshore developers will not fill in missing blanks. And be sure you do your own database design.
  4. The project is a new project, not maintaining older code that is in good shape.
  5. Iterative development is OK - there's a lot of back and forth with offshore development - fix this, change this, etc.
  6. Project is in .NET or Java. Stick with the standards. Perhaps there are a bunch of proficient PHP and Ruby and what-have-you offshore scripting shops, but don't bank on it.

Posted by hln at June 27, 2007 02:26 PM | Business | TrackBack

You might want to add something about code reviewing and quality assurance. ;-)

Posted by: Hans at June 27, 2007 07:45 PM