I'm not sure software outsourcing ever worked (but after reading the article, I'm fairly sure that title was picked for aesthetics rather than serving as a thesis statement).

I had this discussion with a friend who was charged with controlling costs as the new head of IT for a company he'd worked for since graduating. He had no prior experience in IT and was discussing his plans to "fire IT and offshore" in 2002.

The issue of "motivation" between an internal and external team was touched upon but it was the biggest factor in the failure that wasn't already obvious[1]. He points out a good customer for [the outsourcing company] is a paying customer. Not a customer with a successful project. That's a little more cynical than I'd be, but the point of competing priorities is important. Prior to offshoring, the internal staff's motivation was to create software for internal staff that made the business more successful. Their bonuses were paid when the company beat their profit targets, but that wasn't the entire motivation. They were a sciences company and much of the IT staff came from the company -- they were folks who were augmenting their work with code, often writing something so useful that the rest of the team used it and their job became maintaining/extending that software. They knew what to write because they either had previously done the work or were still somehow involved as a user of that software. The IT guys and the main staff were all science geeks and friends with one another so "Jan knows what Bill is expecting to do with this and he won't like it if it's designed that way." That tribal can't exist with an offshore team.

The plan was a complete failure; the offshore shop never got up to speed on the existing code-base, outages became a way of life (IT support was also offshored) and the decision was reversed after about two years. When they brought IT in house, they couldn't find anyone who wanted to work for them. In retrospect, they should have predicted this problem since they started having hiring problems almost immediately after the move -- they couldn't get the needed STEM graduates for their main work due to the poor reputation caused by the move. Interviews were outright refused -- most said they weren't interested due to fears of being replaced later[2]. They made a series of bad hires with onerous requirements in their work contracts--bonuses paid out regardless of being employed at the time they were paid--basically "protection" measures built in to calm the candidate's concerns. This was made worse by the economy improving and them no longer having access to more desperate candidates.

The failure of this project was bad enough to eliminate most companies of their size. They were lucky that they were a business who's customers had a regulatory reason to use and they lacked any competition (mainly because they're very good at what they do). This would have been a time when someone could have stepped in to compete with them. The delays caused by this were passed on to customers who had the potential to fail regulatory compliance as a result.

I've been intentionally vague about the business to ensure I can keep the friendship. I realize this post makes him sound like "an idiot" (I called him one at the time)--but bear in mind this was 2001-2002. 9/11, bad economy, and an IT budget ("new" at the time) growing like crazy were huge problems for them. IT then was seen as a necessary, unwanted, expense in most businesses their size. Coupled with prominent stories of offshoring success with little actual data about the details, it looked like an obvious choice. To the credit of his character, he set his ego aside and reversed his decison in just short of 2 years. They still occasionally augment with offshore for technically easy but time consuming work, and do so very effectively, but nobody is interested in replacing tribal knowledge with outsourced talent at his company (in 2007-2008, it never came up once as an option to improve the balance sheet). I've e-mailed him about this post in case he wants to provide detail that I wasn't comfortable sharing; but I'm leaving that to him.

[1] The obvious was having no transition in place between letting everyone go and spinning up the off-shore plan. The team literally inherited tens of services and a large code base to both support and expand on with nobody from staff able to tell them how any of it worked. Being that he failed to account for that problem you can use your imagination about every other thing that wasn't accounted for.

[2] A google/twitter search of the company yielded blog posts and other related items about the offshore move. IT folks communicate publicly when they're treated badly by an employer and they were treated terribly when they were let go. The worst thing was that despite being 2 years prior, most were convinced the company had done this only a few months prior. Objects on the internet are closer than they appear, I guess.