14 Comments

Summary:

If you’re bootstrapping your startup, offshoring your web development is a great way to save money. But it’s also fraught with risk. Working with remote contractors makes it far harder to manage project development and communicate ideas. Taking proper steps to protect yourself is crucial. I’ve […]

If you’re bootstrapping your startup, offshoring your web development is a great way to save money. But it’s also fraught with risk. Working with remote contractors makes it far harder to manage project development and communicate ideas. Taking proper steps to protect yourself is crucial.

I’ve been bootstrapping my e-commerce startup, Aroxo, for the last year and blogging about it for Found|READ and on my own site. My previous post explained how to use your network to build a quality list of prospects. Today I’ll tell you how to vet the list to select the right offshore developer.

Step 1: Send a “Request for Information” to Prospective Vendors:

The RFI is a questionnaire you will draft to help you determine which developer can deliver your project within your price range (here’s a sample). Your RFI should produce the following data:

  • Vendor’s vital statistics: years in business, number of employees, rates for all billable staff.
  • Currency the developer will use to invoice.
  • Confirmation or denial of a fixed cost for your project (which you want)
  • Description of the vendor’s typical projects (How big are they? How long do they last?)
  • Vendor’s technology certifications and other technologies they can support.
  • Source of the vendor’s development design (in-house or sub-contracted?)
  • 3-5 customer references.
  • Additional RFI Tips:

    Include a hypothetical “technical problem” relevant to your project and ask the developer to show how they would solve it. For customer references, ask for projects similar to yours that were completed for clients physically near to you so you can arrange to meet them in person.

    Worried about your IP? Don’t discuss the specifics of your business in the RFI. Describe the type of business that you’re launching in general terms (e.g. e-commerce), or refer to similar companies by way of description.

    Give the vendors two weeks to respond, and an opportunity to ask you questions. Include your deadline(s) so the developers have a timeline. Not every vendor will respond to your RFI. Some will, but won’t answer all your questions. Others will will send you “documentation packs” that contain all the answers, but not in the format you requested. All of these companies should be dropped from your list.

    Step 2: Vetting Your Vendor Prospects

    Two weeks after you’ve issued your RFI, you will have all the responses you’re going to get. (Don’t bother chasing companies that don’t reply.) Now you must work through the list until you have at least four — but no more than seven — prospective developers. This is an important yet difficult step. First, think about who your ideal vendor is. Identify the criteria by asking the following questions:

  • Do you want to work with a small company, or do are you looking for a larger company with ISO or CMM certification?
  • Do you have a particular development methodology in mind?
  • Do you want your system built with a particular technology?
  • Now you’re ready to start “the sift.” First, remove any companies that don’t fit the criteria established above. When I read through my RFI responses I arrange them into three piles: Yes, No, and Questions. I then put my additional questions to the vendor again, and update. I continue this until I have complete Yes and No piles.

    When in doubt, go to their references. Don’t just ask if the developer delivered on time and to budget. Also ask: Have they given the vendor any new work? Will they in the future?

    The reason I recommend getting to preferably four and no more than seven potential vendors is that you don’t want to take too many through your bidding process because you don’t want any more of them than necessary to know what you’ll be building.

    If you don’t end up with four candidates, don’t go back through your pile. Approach new developers until you do.

    Matt Rogers is co-founder of Aroxo.

    1. Matt,

      Thanks for informing. Some clarifications.

      1. Are you referring RFI as RFQ (which I see from the sample in the link provided)?

      If so, then it is for T&M contract type. From the article, I tend to think it is of FP type. For IFB or RFP etc, normally it is Fixed Cost and Cost Reimbursable types. It will not be for a fixed cost project. Or did I miss something?

      2. If you are going for a fixed cost type contract, I really doubt any vendor worth his salt will accept, if the scope is not known. If someone is worried of IP cases, I guess, there will be different mechanism to handle.

      If the scope is not known (if you say just “e-commerce” project), then will they accept?

      3. Another is arranging a talk with a client for which they have completed a similar project. I understand that a number of vendors can give client data, but then arranging talks with them, how practically feasible it is?

      I think, one can ask for a demo of the product being done, which will boost confidence.

      4. How will you rate vendors who are sub-contracting the work? I mean, if they claim to be a development company, and in turn sub-contract to another, they are not a development company in the first place!

      And mostly it is for technical development work, which you would like to go for. Sub-contracting, sub-sub-contracting will bring “privity” into question, which will be a headache – if something goes wrong.

      Satya

      Share
    2. What is the current cost for hiring good developers in India, say with 2-3 yrs of experience?
      Also has anyone got experience with ODesk? How that works out?
      We are planning to hire a few developers but most of the vendors seem to be asking unrealistic price..almost matching US costs

      Share
    3. Yep, you’ve outlined the standard process taught on MBAs and used by government departments, large corporates and people doing big outsourcing when they go looking for a partner.

      But the company that you really want building your hot new application – probably 2 or 3 guys with real grunty experience -do you think they’re sitting around with time on their hands waiting to jump through your hoops? Your process acts as a filter at both ends. It’ll remove the people at the lower end for sure. But it will also turn off the really hot, good supplier who just doesn’t need to go to these lengths.

      Anyone who’s been around the blocks will know that if you demand a fixed price quote from someone, either a) they need to spend a LOT of time studying your requirements (which are probably not as good as you think they are), b) they will build in a hefty risk premium (which comes out of your cash, c) they’ll quote you a good price all right, and then gouge you later for project variations and the like.

      And then good luck building your new system with the average guys left from the middle.

      Share
    4. Hello Satya – thanks for your comments. I was referred to RFI, and this is just only to short-list the vendors. The RFQ stage comes next, which will be in my next post on this topic!

      Share
    5. Thanks Matt. Will look forward to your next post.

      Share
    6. Playing Devil’s advocate here:
      This is exactly how *inexperienced* companies who have never outsourced before proceed. You think it is the right way, but all you are doing is creating an abstract boiler plate which any company can create an appropriate response to. Those who are honest may likely say ‘N’ to 20% of your checklist, and you will throw them out. Those who say ‘Y’ to all are mostly wrapping the truth and they qualify. Being in this business for decades, I’ve seen your formula being followed by first timers and is _not_ the way to proceed.

      What you really need to do is:
      a) Ask local reps to visit you and present – get the tech guys over the phone. ask impromptu questions and judge responses. It is easy to craft a response over a day. It’s hard ot do that on the spot.
      b) Make an effort and *visit* your top 5. Nothing better than visiting their labs, talking to people and understanding their processes. Often, some of the best will be those who may not have said ‘Y’ to all your questions. For example, if you are a startup with just a few million in funding yourself, a good vendor will not say ‘unconditional Y’ if you ask for silly things like liquidation damages

      c) Figure out the right process NOT to micromanage. Companies think that by writing an extensive RFP, they have done a great job. Actually, you would be surprised how much of your RFP is a copy of another company (in other words, birds of feather – those who start this way all think the same, so ask the same).

      Share
    7. @Andrew & @Reader

      touché ..

      Share
    8. I agree with the readers who feel this process is naive. It will filter out the top and bottom tier and leave just mediocre companies willing to go through this process because they have lots of spare capacity. If the process is particularly time consuming, you might get some good companies responding, but only if they have exceptionally high rates (and profit margins).

      Visiting offices is just not feasible for low cost outsourcers. If they have a local office in the US, it will just be a sales office. If they have local people in the US, they are going to be much more expensive (one local person typically costs as much as three or four remote people). Meeting those local people will help, but it still won’t give you a sense of the people doing most of the work. It is also unlikely that local clients will be near you, unless you live in Silicon Valley or New York or some other major center.

      The only reasonable option is to talk to people on the phone. Speak to past customers. Speak to the development team.

      I have run an offshore operation in India and currently have one in Vietnam, so let me give you some perspective from the other side.

      First of all, you’re not going to speak to my clients unless we are in the very final stages of winning a large project. My past clients are a valuable resource whose time I call upon only very cautiously. Many of my most important clients insist on anonymity.

      Spending days responding to detailed requirements documents is very expensive in terms of opportunity cost. I only do that when I have evaluated the client. They will be people I know personally or through referral, or famous companies. And if not, I will want to see evidence that there are no more than one or two other contenders and that they have sufficient financial backing to be considered serious.

      About eight hours is all the time we can afford to invest on prospective clients who are just fishing around multiple vendors. This is especially true about those who use checklist templates (we might not even bother to respond to those). Such people are looking for expensive international consultancies such as Tata, or are looking for a small vendor willing to lie to them to get the job. I’ve negotiated million dollar consulting contracts on the phone in twenty minutes with clients who know and trust our past work; we’re not going to waste days of time responding to cookie cutter fishing procedures from unproven prospects. Unless you are a famous brand name, you need to make a special effort to make an offshore relationship work and find the right match for your needs.

      Share
    9. I agree with the other commenters who have said that this process is more appropriate for a large corporate project. I would go even further and say that as soon as you start looking for an established outsourcing firm for startup work you are making a big mistake.

      Firstly there is the question of whether you should be outsourcing this type of work. As a startup, developing the software probably counts as your core business, which should be kept in house. You can still hire low cost employees in India or elsewhere to do the work, but you need to maintain complete control over the development and who is doing it. You may well find that a vendor’s goals for the project (and fitting it in with other work) don’t quite match your own – not good when project failure or even delays can cause your entire business to cease to exist.

      Secondly there is the fact that startup work is quite difficult to spec in advance, and is more likely to involve features the vendor is unfamiliar with. You might get away with it if your project is the same as a typical corporate project except for the number of users, but for anything more innovative you can expect communication issues.

      And that’s before you even get to issues with management or developer competence. It’s not that uncommon for a team to have one good developer on a team making up for a couple of not so good developers who get nothing done. If you manage your own team you can fire the ones who are no good. Going through a vendor you won’t even know there is a problem beyond a nagging feeling that you are paying three times what you should be.

      Share
    10. I recall a question that was asked at the Austin InnoTech convention in ’06. The question was, “What should a company not outsource?”. The answer I’ll never forget. “A company should *not* outsource anything it considers its core competency. You outsource those things that you aren’t good at, but never let go of what it is that you are good at.” An important point I think we should all adhere to when considering outsourcing.

      Share

    Comments have been disabled for this post