📚 node [[2014 01 01 you cant outsource product]]

One of the many tricky things about building a web startup is that you can't outsource product. As a web startup, your web or mobile app is your company, your sole purpose for existing. Why do you think you can outsource it?

When you outsource building your product, your company is missing out on most of the important things that go into building a successful company. Sure, you can hire freelancers or a consulting shop to build you something. And that's what you'll get: something. As long as you keep paying the bills, the typical consulting shop will write code and position pixels for you.

But, you won't learn:

  1. What the (potential) customers of your app actually want
  2. How to prioritize the features and functions that should be in your app
  3. How to work with an integrated marketing, product, and development team to attract more of the type of people that like your app, learn from the people using your app, and consistently ship bug-free features that your customers really want

The core methodology of the Lean Startup is build - measure - learn. A product is this loop, so the more of this you keep outside the walls of your company, the less you'll learn. Or rather, the less you'll learn how to learn.


First, let's set the stage.

"You" are an early stage business. Your business does not have any technical co-founders on the team. No one has previous experience in running a modern web app. No one has experience in marketing a modern web app.

You have some money, somewhere between $30K and $150K. You have some ideas for an app. You think building an app is the best way to launch your business and see if there is a market for it.

An app is a web app (accessed through a desktop or mobile browser) and/or a native mobile app (an iOS or Android installable app). Presumably, you are going to make money selling to businesses (B2B) or consumers (B2C). Let's ignore marketplaces for now, they're infinitely harder.

Any shop in town can build you an app

This is a truism in virtually every city or town. There is a local development shop or design agency that can build you an app. Using Ruby on Rails or Drupal or some other framework, these consulting shops will build a web app – or native mobile app – for you.

In fact, they'll build exactly what you ask for. Whether you draw up requirements ahead of time, or you have some more ideas about features as you go, they will build exactly what you ask for. As long as you're paying the bills, why not?

At the same time, this team of consultants will also want to be done with you at some point. They will want to scope out a Phase 1, or figure out when "1.0" is finished. Maybe there will be an acceptance period, or a bug fixing period, or something like that, but your app (at least, the 1.0 version), is done.

##You know all of the requirements for the 1.0 version of your app

Actually, you do know the features that you would like to have in the app you would like to build. But it is unlikely that the wider customer base that you are building for has the same needs. Most of the time, you will also over-prioritize a variety of can't-live-without features and functionality.

Even the terminology of talking about a 1.0 or 2.0 is a tell that you haven't worked on a modern web product. The app that you're building is in a constant state of flux. You add features and improve usability all the time. You release changes daily or weekly. These changes and future improvements are driven by engagement with your customers. As you get better at understanding who your customers are and what their needs are,

At some future date, you might indeed do a "2.0" version of your app. This will come about because of the framework that you've built -- both technologically and from a design / usability standpoint -- can no longer contain the future features that the market wants. It might be driven by an outside force -- like a major operating system update, new hardware capability, or even a desire to have a marketing "launch". And then the marathon of making your product better will continue.

Always be launching

Releasing a first version of your online product, aka "launching", is exactly when you need a great product & development team the most.

This is your first chance to really engage with the people that will be using your product. And they will give you great feedback. And to reward them for being early adopters, for being enthused with such an early version of your product, you're going to want to set time aside to add features, fix bugs, and otherwise improve your product.

When planning outsourced development, I recommend that people plan not for a 1.0, but past it. Make sure you "launch" early, and then keep launching features as the first people that use your product ask for them and give you feedback.

In fact, I say you should adopt the motto Always Be Launching – release features, spread the word, ask people to use them and give you feedback, improve them. Rinse, repeat.

##What should I be doing?

"OK", you say, "I give up". "I won't outsource product development. I won't hire a bunch of developers to write code, I won't hire a bunch of designers to make pretty pixels. But I need help! Where do I get it?! And what should I be doing?"

Great. I've convinced you to not outsource everything! And here comes the tough part: getting help to build and launch your product, or more correctly, your business, is really hard. On the flip side, this is an area that is constantly changing (which means that there are few experts), and you can learn how to do a lot of it yourself.

What should you be doing? You should become an expert in the problem you're trying to solve. Which means talking to the people that have the problem that you're trying to solve. Your entire team should spend lots of time talking directly to customers and potential customers, learning all about them.

Product Consulting

There are an emerging class of multi-disciplinary consultants, with skills that bridge marketing, product, and the technical aspects of app building. I'm calling them product consulting teams, to indicate that they don't just ship code, they help equip you with a product process.

I still point at the Made By Many 5 year retrospective, and this launch announcement of Bud Caddell's Inventionist as examples of product development agencies. Both arose out of digital ad agencies servicing larger companies and brands.

Classically we might think of frog and IDEO as doing product consulting, although software is not what they are best known for.

On the other hand, I can point you to ENTP, who say they are a "consultancy and web incubator collective…[who] specialize in implementing big ideas". In addition to their services, they have two SaaS products of their own. Another hybrid is Pollenizer, a kind of incubator that actually steps in to co-found companies.

I'm still collecting product and product consulting links, trying to track and make sense of these emerging practices. This is something that I've been following for about 2 years now, and I think 2014 is the year that we're going to see the concept of product consulting gain prominence.

Next up, Insourcing

Think of consultants that you hire to work with your company to be personal trainers, not hired labourers that do the work for you.

As much as possible, you want to insource knowledge and process, and get better at learning how to learn inside your business. And that will be our next topic: a blended model of building strength within your team, while leaning on experts to get you there faster.

📖 stoas
⥱ context