What GM and HP can teach us about outsourcing software development

GM is the kind of company that can afford billion-dollar hiccups. Midmarket companies, on the other hand, cannot

gm car line 01

Software development isn't the same as assembly line manufacturing.

Credit: Maria de la Riva, Leap

A couple of weeks ago, General Motors made headlines by unveiling its massive new online sales initiative -- powered in-house by a team of 8,000 software engineers. This came at a cost of $3 billion to HP, to whom GM had previously outsourced its IT.

Although the analysis of GM's decision to build instead of buy has been more or less positive -- even if the jury's still out on the success of online car sales -- the story illustrates mistakes that, unlike GM, companies in the midmarket cannot afford to make.

Reading between the lines, one can deduce that HP didn't deliver enough value to GM. And, given the size of each organization, it's probably fair to assume that HP tried to align and commit to the business goals of GM -- the two organizations are simply too big and impenetrable to be true partners. This isn't meant to disparage individual members of the HP team, who are likely talented professionals. It's just a consequence of outsourcing arrangements at massive scale.

To say that the arrangement ended up costing GM a lot of money is probably a huge understatement. But GM is the kind of company that can afford billion-dollar hiccups. Midmarket companies, on the other hand, cannot: their outsourced relationships are investments, not expenses. They don't have the luxury of losing money on any of their projects and investments.

These companies operate at smaller scale but similar complexity to large enterprises, which requires not the behemoth solution providers like HP, but agile partners that deliver based on desired business goals, not just required technology milestones. They need development projects scoped carefully, not comprehensively.

Midmarket companies also don't have the luxury of choice when it comes to hire vs. outsource. Personally, I think it's a mistake for GM to hire 8,000 software developers: they build cars, not software. In the end the software developers will be a cost to the business, and when sales get tight or shareholders get antsy, they will end up firing most of them.

For midsized organizations, the time and resources it takes to hire at that kind of scale simply are not available. What's more, the costs associated with cyclical hiring decisions are far too high to sustain.

The reality is, whether large or not-so-large, companies realize the best return on outsourced software development relationships when those relationships are true partnerships, not just transactions. True commitment, product ownership, and alignment with business goals have to drive the engagement, or it simply won't work.

We could spend the next month debating when it makes sense to bring development in-house vs. outsourcing it. But at the end of the day, partnerships (not specs and contracts) are what foster success in projects like this.

Perhaps GM's two-year journey and 8,000-person investment will deliver a better return than its $3 billion-a-year contract with its former outsourcer of record. I just find that math very hard to do.  

This article is published as part of the IDG Contributor Network. Want to Join?

To comment on this article and other InfoWorld content, visit InfoWorld's LinkedIn page, Facebook page and Twitter stream.
From CIO: 8 Free Online Courses to Grow Your Tech Skills
Notice to our Readers
We're now using social media to take your comments and feedback. Learn more about this here.