Digging my own Ditch

How to get good off-shore developers - Part 1

A really effective way of boot-strapping your start-up is to off-shore and out-source 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:

  1. Build a long list of development companies
  2. NDA all the companies on the long-list
  3. Issue a Request for Information (RFI)
  4. Analyse responses and short-list the developers
  5. Issue a Request for Quotation (RFQ)
  6. Analyse responses and select a preferred vendor and a spare
  7. Negotiate contract with preferred vendor
  8. 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. Any regular readers can relax – the whole lot has been written in advance, so there won’t be any 1 month 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 favour by finding out as much as possible about the development company before you sign the contract.

At several stages I’ve included sample documentation to give you more guidance on what should be included. You can download these examples from the documentation bank on Aroxo.

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 which we’ll develop going forwards. 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:

  1. 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)
  2. Experience working with start-ups
  3. Offices somewhere in the world you are happy doing business
  4. 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:

  1. Use your network – ask anyone you know who works in the software industry for 2-3 development company recommendations
  2. Use referral companies to provide connections and act as a filter
  3. Use associations to help pinpoint development companies
  4. Use tools like eLance, Scriptlance and Rentacoder to find developers
  5. Use Google to help find companies
  6. 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, 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 the post coming next week I’ll detail how to write and issue and RFI and then short-list your developers.

Share and Enjoy:
  • Digg
  • Sphinn
  • del.icio.us
  • Facebook
  • Mixx
  • Google
  • TwitThis

One Response to “How to get good off-shore developers - Part 1”

  1. Raza Imam Says:

    I actually read this post over at ReadWriteWeb not too long ago but wanted to chime in here.

    I own a Chicago-based offshore development firm and we started finding clients on Elance. The problem we ran into was the ‘Elance mentality’ where buyers act like they’re at the flea market. We realized very quickly that we’re not for everyone and that we only work with clients that demand high quality and are willing to pay for it. It’s been phenomenal for us because we deal with clients that expect top notch work.

    Finding good offshore developers isn’t hard, but finding people who are committed and reliable is next to impossible.

    Outsourcing can not be transactional… the offshore team has to be a part of your team. That way they actually understand you and are committed to you. Big companies set up captive development centers that serve the same purpose. Startups can’t do that, so the trick is to find a mature and reliable team that will become a part of you. I’m sure you don’t have the same complaints about your offshore team as others do. The real benefit is nurturing a team that’s an extension of you.

    Outsourcing is about high value, not low cost.

    Raza Imam
    http://BoycottSoftwareSweatshops.com

Leave a Reply