This article is part of a regular series by Matt Rogers, co-founder of Aroxo, on the topic of bootstrapping a startup. See also his previous posts: How to bootstrap your startup and How to create a web app.
A really effective way of bootstrapping your start-up is to offshore and outsource your development. But doing this also carries risks, how can you be sure that you are going to get a developer who'll see it through and has the right experience? This post lays out an effective process to find the right developer.
From starting the search, to the first developer writing code, should take around 3-5 months and there may be further delays whilst you complete your documentation. In this article I'll talk you through what you should be doing at each stage, and what the objective of each stage should be. Here's an overview of the process:
- Build a long list of development companies
- NDA all the companies on the long-list
- Issue a Request for Information (RFI)
- Analyse responses and short-list the developers
- Issue a Request for Quotation (RFQ)
- Analyse responses and select a preferred vendor and a spare
- Negotiate contract with preferred vendor
- Commence development based on your documentation
This is a long process, and therefore I've split it up into 4 sections. These will be posted each week for the next four weeks. Regular readers of this series can relax: the whole lot has been written in advance, so there won't be any month long gaps in between!
Finding a great development company is one of the most important decisions your company will make. Changing developers mid-way through a development is near impossible and so it is important that you select a company which you are confident has the ability to see it through. The purpose of this 8-step process is to stack the odds in your favor by finding out as much as possible about the development company before you sign the contract.
Before we start, one word of advice. Running a vendor selection process will involve giving a large number of developers bad news (and only one company good news). When I first started doing this I found the process of giving bad news quite unpleasant. It is, but it is still important to do it. Vendors are used to receiving rejections, so they tend to take it more easily than expected and I also find that giving the bad news, along with some personalised feedback, is always much appreciated.
Step 1: Build a long-list
Before we start populating a long-list, it is worth spending a few minutes getting properly organised, as running a vendor selection process involves a lot of time, organisation and communication. I find it easiest to run these off a spreadsheet. There's a sample vendor dashboard included in the documentation bank.
Building a long list involves populating this dashboard. The aim is to get 20-30 companies into the dashboard that satisfy your broad requirements for the type of system you want to build. You want to make sure that each company has:
- Experience in building the type of system you're looking for (if you think your system is entirely new, it almost certainly isn't, there will be parallels which you can look for - even if those are purely functional elements)
- Experience working with start-ups
- Offices somewhere in the world where you are happy doing business
- Experience in the technology you want your system built in (if you don't have a preference, then ignore this)
By far and away the hardest of these objectives to meet is the first. You may need to contact many companies to determine whether they have built a similar application to the one you're looking for.
In order to find companies, there are a few tricks you can employ:
- Use your network: ask anyone you know who works in the software industry for 2-3 development company recommendations
- Use referral companies to provide connections and act as a filter
- Use associations to help pinpoint development companies
- Use tools like eLance, Scriptlance and Rentacoder to find developers
- Use Google to help find companies
- When you've found a company you like, do a reverse search for their homepage on Google to see if they belong to any associations with links to other companies
You may need to look through a large number before you've found 20-30 companies which can meet the 4 requirements set out above.
Step 2: NDA everyone
You're a start-up (I'll return to this point later), so an NDA offers no protection. If you've got funds to sue a company then, frankly, they would be better spent fixing the mistake with a new developer. However, it is still essential that you NDA all the vendors, even though you are not going to be providing them with any confidential information (other than of your existence, just yet).
First thing you'll need is an actual NDA. There are plenty you can download for free on the web, so I've not provided one. Read it to make sure that you are comfortable with everything included in it. If you've selected a lawyer at this stage, ask them to provide an NDA, but don't pay them to write out a new one.
Email it to all the developers on your long-list and ask them to fax or scan signed copies back; and make sure there's a deadline for return in your email. When you receive one back, open up the Vendor Dashboard and update it so that you don't forget you've received it. Then print it out and file it.
When you hit the deadline, ignore any further submissions. If the development company can't meet this simple deadline. they are not going to meet any further deadlines.
In next week's post I'll detail how to write and issue an RFI; and then short-list your developers.