13 Offshoring Tips for Start-ups

You’ve probably heard about offshoring and it’s potential yield significant cost savings for your project. Over last couple of years, I have utilized offshore developers to great effect and is a cost-effective way to prototype ideas. Below are practical tips and lessons I have learned along the way.

  1. Choose a good intermediary service.

One question I am asked often are “how do you actually find your developers?” We use two online services: RentaCoder.com and oDesk.com. The main difference between the two is that RentaCoder is for fixed-priced projects whereas oDesk is mainly for projects charged on a per hour basis (Although oDesk recently introduced a beta version of fixed-priced projects).

Once you are registered for these sites you can search for developers and post a job. Developers will then respond to your posting and you can review and select which candidates are best for the job. Each candidate will have feedback history and an overall rating (just like eBay’s system). Once the job is complete you can then pay the developer through the intermediary service.

  1. Fixed vs Per-Hour Charging

Fixed rate projects are a great way to get price security. However, price is only one third of the picture; you need to also consider the project schedule (ie. timelines) and scope (ie. what is it that wew have to do). Make sure you have a tight specifications together with your expected deadline before engaging with an offshore developer.

  1. Ask for their CV and portfolio

As you would with hiring any person for your team, make you they give you their CV and with a portfolio of previous projects they have worked on. Portfolios are mandatory for industrial, interface and graphic designers.

  1. Communicate!

As with any project, communication is the key and with offshoring this is critical. Make sure you schedule voice calls and regular progress reports. For small questions and issues, I use instant messaging for small issues. For larger issues and general project tracking, I use Basecamp to track and monitor projects. For even larger projects (ie. $500k+), think about meeting them face to face to build trust and rapport.

  1. Try to get your developers in the same (or close) timezone

While getting developers in the same timezone may not be possible try to choose a timezone that overlaps at least a few business hours. Ask you developers to shift their working schedule to fit yours.

  1. Use confidentiality and intellectual supplier agreements.

Do not be afraid to force your developers to sign confidentiality agreements. Have a standard template ready for them to print, sign, scan and email/fax back. Whilst you cannot be guaranteed that they will adhere to it, it sends a strong signal that you are serious of breaches of confidentiality. In your agreement, make sure you state that any IP developed by the programmer belongs to your organization.

  1. Hire a local project manager

If you are not comfortable managing a project, hire a local project manager. The cost, scope and schedule issues that exist with traditional projects also exist with offshore projects. Having a local project manager ensures project communication is strengthened and any issues can be dealt with face to face.

  1. Are they fluent in English?

Some offshore developers struggle with their use of English. If your specifications are a little loose and you need to problem solve and find creative solutions, then having someone who is fluent in English is a must. oDesk actually runs online fluency tests and rates a developers command of English..

  1. Follow a design methodology

Be it waterfall, agile, spiral or extreme try to pick a design method and communicate your preference to your developer. Make sure you have links and documentation about your methodology that you can send to your developers to read before the commencement of your project.

  1. Track progress

As mentioned, we use a combination of technologies to track and communicate progress. Aside from email, phone calls and instant messaging we use:

  • Basecamp for tracking projects, setting milestones and capturing project know how.
  • Subversion for version control
  • A Wiki for project and technical documentation
  • A online bug tracking system.
  • Instant Message
  • Skype (or Voice Over IP)
  1. Make sure you are still eligible for R&D grants and tax breaks

In Australia, we have grants and tax breaks for R&D expenditure. In most, if not all cases, a significant amount of R&D spend must be done in Australia for your organization to be eligible. If your country has a similar program, check to see if you are still eligible. If not, then perhaps your offshoring project may not be cost-effective in the long run.

  1. Use PayPal instead of bank transfers

PayPal is an easy way to transfer money overseas and offers some rudimentary fraud protections. Bank transfers are useful but you some institutions charge a hefty fee ($22 in our case) for international payments, which can add up over time. However, some developers force you to pay a “PayPal tax” of 1-2% to cover their withdrawal fees.

Most intermediary service providers like oDesk and RentaCoder provide a escrowing service and will facilitate the transfer of funds to your developer.

  1. Get personal

Although offshore developers are in different country, they are people too. Make sure you ask how their families are, send birthday e-cards, exchange photos, invite them into your online social networks. Inspire them about your company, your dreams, your ambitions. You will be surprised how far your developers will go if they believe in you and that you really are the “good guy.”

Disclaimer:

The author is an affiliate of RentaCoder.com and Basecamp. Sharcmedia.com is an affiliate of eBay.

(Tweet || Like) || (Tweet && Like)

This entry was posted in Entrepreneurship and tagged , , , , , , , , . Bookmark the permalink.

Leave a Reply

Your email address will not be published. Required fields are marked *

*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>