Is code the best part of your product to outsource?

Daniel F Lopes
Paper Planes
Published in
4 min readSep 20, 2016

--

If you’re building a world class restaurant, you’ll not bring caterers to do the food — you’ll bring world class chefs to build and experiment with the first version of the menu.

In this snapstorm Mark Suster discusses why Startups shouldn’t outsource the development of their product. His arguments seem to be based on previous bad experiences with some of his startups.

But being a startup with a team of a few, you’ll have many firefronts to tackle and not bandwidth for all:

  • Market Research
  • Sales & Marketing
  • Customer Support
  • Code

So if you need to outsource some part of your product, and can’t outsource development, what part should you outsource?

When Adora Cheung started Homejoy, she went cleaning houses. She didn’t ask a 3rd party to do all the research for them — she did it herself.

Market Research

In Market Research you’ll be understanding what you customers want, and thus the problem that you’re trying to solve.

When Adora Cheung started Homejoy, she went cleaning houses. She did it to understand every inefficiency and bottleneck. She didn’t ask a 3rd party to do all the research for them — she did it herself.

Because, if you don’t know your customers, you’ll not be able to build the product they want. As simple as that. You’ll be doomed even before you start.

Marketing & Sales

Marketing & Sales doesn’t have one-size-fits-all recipes. You’ll need to experiment with various strategies and tactics before knowing which ones work for you.

For example, if you’re a marketplace for stores online (read Shopify), you may start by looking at marketplaces as Craiglist, and engage with who’s selling various products.

You’ll also be trying different communication channels, as Email, Twitter, Snapchat, etc. Maybe try with a referral program too.

With a set of metrics you’ll be evaluating the different approaches and see which ones you should eliminate and which you should keep improving. Rinse and repeat.

Only after you make a few experiments to understand what results best, and you have your processes well established, you should be outsourcing. Otherwise you’ll probably be wasting money scaling something you shouldn’t scale yet.

Customer Support

In Customer Support you’ll be listening carefully to your customers to understand every single one of their pain points.

In part because you want to make sure they’re very happy using your product. But most of all, because you want to better understand how they use it, which is critical to know the direction your product development should be sailing towards.

Customer Support, when done in-house, makes you able to prevent problems, instead of quick-fixing them as they appear. Customer Support makes you understand what you product needs.

Stellar agencies tend to win over inexperienced startup teams.

Code

We’re now left with code. Code, from all the components that make part of building a product, is the best one to be outsourced.

In his snapstorm, Mark Suster mentions that many Startups have to throw all their code once they move the development back in house, being that a waste of money. But:

  • With or without agency, it’s actually very frequent for startups to want to rewrite their product once the MVP is launched.
    That’s partly because, by the time you ramp up your business, your product is going to be quite different from the one you defined at the beginning — this will also affect how your codebase is structured.
    On other end, that’s partly because of inexperience from the dev team which should, through the right processes, be continuously refactoring to avoid technical debt. In this case, stellar agencies tend to win over inexperienced startup teams.
  • Even if you have to throw all the code down the recycle bin, it’s not a waste of money. Because either way, your MVP served its purpose — to validate your idea and put your business up and running.
  • As much as I love Mark’s insights, in this case he’s overgeneralising the quality of dev agencies. As in everything in life, there are the bad and there are the stellar agencies — you need to avoid the “go for the cheapest” mentality, and look for the best instead. If you’re building a world class restaurant, you’ll not bring caterers to do the food — you’ll bring world class chefs to build and experiment with the first version of the menu. There are fantastic agencies who helped startups — as Slack, AppSumo, and Fab.com — build their product in the early days.

Outsourcing is a low commitment way to build out parts of your product you aren’t yet sure if critical to your business. Only after that validation you know better what key profiles to hire according to the success factors/components/features discovered while outsourcing.

In other words, outsourcing is much about validating and aligning the tech necessary to address the market, instead of hiring various engineers of a given profile (say backend) until later finding that the key role is UX, leading to a management debt problem.

Only once you’ve got that product validation, your Sales & Marketing channels established, and your first paying customers in, should you be looking to bring development back in house. That’s when you should be hiring the best, which is a tough job by itself. Until then, outsource your code to the best chefs.

If you enjoyed the read, please click the ❤ below to recommend it to other interested readers!

Whitesmith is a web and mobile product development studio.

Subscribe to our newsletter to receive more sweet insights about startups, dev and design in your inbox.
Connect with us:
Website | Twitter | Snapchat: whitesmith.co

--

--

Daniel F Lopes
Paper Planes

Physics Eng turned into Product Manager, with deep interest in applied AI. // Product & Partner @whitesmithco 🚀, Co-founder & Radio DJ @radiobaixa 🎧.