Zafar Ibrohimov, CEO of TechCells recently posted this article on challenges of software outsourcing on LinkedIn:

He concludes by saying “Outsourcing deals must be built upon what is best for both sides, not just what is best for the client. Cost shouldn’t be the only factor.

Stop being penny wise and pound foolish.

Focus on meaningful, value based, long-term partnerships!”

He’s not the first to make this argument, probably won’t be the last, but it got me thinking.

Does outsourcing really have a bad reputation? Do many outsourcing deals fail? What is outsourcing? What does it mean to fail?

This is a bit of a generalization, no?

I have people at my house refacing the kitchen cabinets. I could have done it myself. Am I “outsourcing”? I don’t consider it outsourcing when I hire someone to do something I have never done myself. I expect that somebody with more experience than I have will do a better job, regardless of price.

For the record I have been involved in software development for almost forty years, and have built teams where all the programmers were employed by my company, teams where my company employed some developers directly while others were contractors, and used teams that were provided by other companies and located on different continents. I’ve worked both sides of the street, as a vendor in this space, and as a customer. I first contracted with a company that provided a team in India for software development in 1990. The other piece of my experience that shapes my perspective is that I never worked in a company that had substantially more than 100 employees.

Based on your comments, I think by “outsourcing” you mean the case where a company that wants to get some software development done contracts with another company which is located in a part of the world where software developers tend to make less money than those located in the country where the contracting company is located. By the way I also know a lot about economic geography, colonialism, differential rents, etc., but let’s not go there.

In around 2005 a partner and I decided to create a development center in Chengdu, China in order to fulfill programming projects our clients were requesting us to undertake. We were based in the SF Bay area. My analysis of the SF Bay area’s information technology HR landscape was that the leading companies developing online products, like Google, Oracle, Yahoo (at the time), Symantec, Microsoft, etc. would hire the top tier of talent – they were talent magnets. Then came boutique consulting firms like us, and we would sometimes get high level talent who wanted diverse experiences. The third tier was companies not in IT who needed to get projects done – banks, credit card issuers, insurance companies, health care companies, companies producing commodities like Clorox.

The net was that there was no way we could hire the people we needed in the bay area, and we did not want to subcontract the work, so we thought we should develop our own offshore capability. We chose China because there appeared to be opportunities to attract high level talent, and we were able to develop relationships with universities in Sichuan province. We implemented a model where we hired a group of software and database architects in the U.S. to serve as leads, and they worked with teams of developers and database specialists in the R&D center to get work done. We cost more than most of the companies offering offshore programming services, and tried to position ourselves as a premium service that could address the special requirements of financial services providers and casinos, because we understood the regulatory frameworks in which they operated.

The strategy had mixed results, and the geopolitical trends of the past ten years didn’t help. But it sure was an education.

One is that there are several types of customers for outsourcing projects, and there are several classes of providers. While the platform companies whose web sites we all interact with outsource some of their development, I suspect that it’s the third tier companies that do most of the outsourcing.  Of course there are the outsourcing giants like Tata, Wipro and InfoSys that have been around forever. At the other end of the spectrum there are hundreds of smaller firms with specialized expertise; your TechCells appears to be one of these.  If the match between customer and provider is not a good match, things are not going to turn out well.

I agree that given a choice between $20 an hour and $40 an hour, companies that don’t have “extenuating circumstances” (i.e. they don’t require a specific capability the $40 an hour provider has) look at the rate first. And I agree that that tends to be associated with a lot of the issues that Zafar identifies. However, there are counter-examples.

Now that I don’t have a team that does software development team, I find myself helping entrepreneurs ramp up their software development capabilities. That takes me back to the cabinet refinishing scenario. When I’m working with an entrepreneur or management team that wants to build a service, but that does not have a programming function in place, it seems to me that the best strategy is to do what Zafar advocates: look for a meaningful, value based, long-term partnership. There are providers out there. I don’t have personal experience with TechCells, but since Zarar is “sticking his neck out”, I assume that he’s prepared to stand behind his assertions. I do have experience with #BinaryInformatics, and would endorse them. @RohitSingh and his team there really showed an ability to deeply understand what the management team at @ClickDealBuy was trying to achieve and went about the project using a user centered design approach that I thought was very wise, and is often lacking in these kinds of undertakings.

In my experience there are things you can do during the “dating process” to help find a good match. Once you start a project, there are things you can do to make improve the likelihood of success. All that said, I’d be happy to support companies of all sizes who wish to undertake projects using external resources. Its an area where I have both expertise and experience.

 

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes:

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>