Archives for category: Product Development

After spending the best part of the last few years talking to companies of various shapes and sizes about their hiring preferences, I developed a simple framework to help answer the question “when do I hire full time developers internally vs. outsourcing development?”

Outsourcing Framework

Tech company building a core product:  If you are an tech company building what you consider to be a core product or service, then you should absolutely look at putting together an internal team, since chances are you will need to iterate rapidly, produce bug-fixes, provide customer support etc related to the product or service. Doing all of this in an outsourced, but yet effective manner becomes cost-prohibitive if the product in question is your companies core product. Perhaps even more critically, if your company is not building product, what exactly is it doing?

Tech or non-tech company building a non-core product: If you are a tech, or a non-tech company, building a non-core product, then you first preference should always be to outsource. This is for two reasons:

  • A company that specializes in building what you consider “non-core”, is more likely going to be better at it than anyone you hire internally
  • Even if you can hire the best, you will need a consistent and interesting enough pipeline of work to keep the best engaged – remember, very rarely do the best at anything make a decision purely based on the money offered to them

Non-tech company building a core product: This is the most interesting combination, and one that companies are increasingly finding difficult to answer. Why is this? This is because as more and more legacy companies start to build digital products and services, they are increasingly looking to transform themselves into tech-companies. However even if a legacy company considers itself a tech company, it should really think hard about whether the digital product it is building is truly core. Lets try and explain this via two (somewhat) hypothetical examples below:

  • NCR Corporation building a competitor to Square Wallet: Here both NCR and Square are in the business of retail checkouts. If Square starts offering a service via. Square Wallet that offers a significantly superior retail checkout experience, than NCR, then all else being equal Square will out-muscle NCR, and win the retail check-out and digital wallet war. In this scenario NCR’s existence depends on building check-out related products and services that match that of Square’s, and like their digitally native competition, do rapid and continuous product development, which generally requires an internal team.
  • American Airlines building the most elegant check-in application in industry: Lets assume American Airline’s mobile check-in app is so far superior to its competitors, that its starts winning awards at UX and industry conferences, and gets rave reviews from its customer base. Additionally check-in’s are a part of any airlines core business process, so it can be considered a core part of an end-user facing service that American Airlines provides. However, the truth is regardless of how elegant and simple to use the app is, the check-in process is only a part of the overall customer experience (CX) that American Airlines provides to its customers, and in isolation, will in all-likelihood not make a significant difference to a customers decision to fly American vs. United.

In summary, unless you are an tech company building your core product, outsourcing development should always be a serious option on the table.

Note: We realize this framework does not take into account supply and demand imbalances that a company might be operating under. Today macro factors in the technology space, have led to a clear imbalance in favor of supply, and hence even if it makes sense for a company to hire full-time, that choice might not represent a realistic option.


When starting a business in the physical world, it is easy to grasp the criticality of “product first”. Wether someone is creating a new type of vacuum cleaner, garden hose or starting a restaurant with a specific cuisine in mind, people start of with a very specific product that meets some very specific unmet need in the market. However when the same logic is applied to products in the digital world, the response that you immediately get from a lot of people, particularly those inexperienced with launching a product in the digital world is: “hmmn, thats it? thats all the product will do? but you can do so much more, there are so many more bells and whistles that you can plug into the product”. The problem is compounded further when someone like myself, trained as a consultant that implements very large complex systems for very large companies, try’s to launch his or her first product. Invariably we always start with a grand world changing vision, and a complimentary product that does quite a lot from day one.

I remember when I first heard about a product that enabled people to easily unsubscribe from unwanted mailing lists that they may have signed up to consciously or unconsciously eons ago. My gut reaction to the product was that “its so basic, its not world changing, I can probably create a crude version of this product if I locked myself up in a room for a week”.

Product development in the digital space is so counter-intuitive that even an intelligent, experienced professional like myself was missing a key premise in my analysis. To create a great company, one has to start not with creating some average product with a million bells and whistles, but one product, perhaps even something that looks nothing more than a feature in the context of a larger more complex product, that does something better than anything else out there. This premise holds true wether it be Levi’s using copper rivets to to reinforces points of strain on a pant, or Google creating the page rank system. Great companies and great brands, generally start with one product that is exceptionally better than anything else in the marketplace, make themselves relevant, and then begin to expand their product suite. Hence, something that starts of as a very simple but exceptionally executed un-subscription product, and helps solves a major annoyance faced by consumers and business users alike, could be the first step towards a product that ultimately helps reduce all kinds of clutter, digital or physical, in peoples lives. So next time you see a product that looks like a feature, don’t assume that founder is not a visionary that can’t think big, but perhaps simply a more experienced entrepreneur than you.

(PS: A product in this context does not simply refer to a manufactured entity, it also equally well refers to a service being offered. Google search, Facebook social networking, consulting provided by McKinsey, or an exotic derivative created by Goldman Sachs are all services, but in each of these cases the service being offered is the companies product).