Monthly articles with valuable info to strengthen your team force
May 29, 2018
What Does it Take to Hire an Offshore Development Team?
For decades, many of the US’s top brands have off-shored their development work, leading to significant savings in technological spend. Sure there are occasional problems, miscommunications and cultural challenges to overcome, but with offshore hourly rates at a fraction of what they are in the US, the argument is still compelling. That said, start ups or smaller companies have struggled to learn how to tap into this incredible resource. Often, these startups – with their smaller staffs and limited budgets – are the ones who need to pursue lower cost development teams the most. This article reviews some of the most important issues to consider when pursuing an offshore development strategy.
There are costs associated to going offshore that you need to consider – sometimes they’re actually more expensive than the higher development costs you’d incur by staying Stateside. Things like identifying and vetting a vendor, working through new methodologies or project reporting standards, language barriers, different vacation/holiday schedules or different time zones are all real difficulties to work through – if the project isn’t necessary or if it’s small enough, why bother? Take a look at the:
– Scope of work
If the workload is small (a few weeks of development), do you really need to go offshore?
– New project or enhancement?
If this is just an enhancement to work you’ve done before, it’s probably best to work with your existing development team. They’re familiar with the code, familiar with the architecture and familiar with the end user use cases. Technology isn’t as “portable” as we’d like it to be and it’s difficult to introduce new development teams to simply add an enhancement.
If money is tight, maybe you have other ways to pay for development time that won’t require hard cash. Consider bartering – for small projects/startups you might have a motorcycle you could trade, perhaps your business can provide its service in trade (restaurants could cater a birthday party for the development team, etc.). Alternatively, you could offer developers equity in your new company – this happens quite a bit in startups. Even still, if you have something to barter or are willing to offer equity for development, you still need to find developers.
Although most companies deal with industries that are less regulated than medical or financial institutions, HIPAA regulations or Sarbanes Oxley have requirements that prevent a company from storing patient or financial data in a foreign country. Make sure your company (or equally important – your client’s) data can be off-shored.
So let’s say you’re still with me and decide your project or company is best served with offshore development, what do you do next? If you think about it, your biggest concern is around trust. Trust that your offshoring partner is:
Will they take your money and give you a poor product? Will they simply take your idea as their own?
– Technically capable
Do they have the tech team to provide a bullet-proof application or deliverable? Will they use antiquated technologies?
– Financially sound
Do they have the financial staying power to see your project through to the end?
– Experienced: Is yours their first project?
Do they know how to lead projects?
– Capable of communicating with you
Are their English skills proficient to have one on one or group calls? Are they able to speak with you during your business hours?
As with most business decisions, there are risks one must take, but that doesn’t mean you have to go into this offshoring decision blindly and hope you can trust your vendor. Here are some ideas to help reduce that risk and find an offshoring partner you can trust:
– Check your professional network
Ask your friends or colleagues if they’ve worked with offshore teams and if they’ve found them reputable. Even if your friends recommend one to you, be sure to vet them yourself and ask for additional referrals. When starting my own company, I asked my best friend for the name of a development team who had built his online trading application. I solicited information from that developer and found them to be reputable and capable, but their rates were roughly 8 times higher than other offshore development teams I’d found. Ouch!
– Outsourcing websites
There are websites that bring clients and developers together and provide tons of insight to the hiring company. For instance, Upwork provides an outstanding way to identify individual developers or full development teams (analysts, UI experts, DB programmers, front end developers, etc.). This site allows you to enter the technology or skill you’re looking for, assess how much work they’ve done in the past, determine their past results (e.g. 85% satisfaction rating – think of this as an Uber rating for developers), filter in/out those that are in certain geographies, set an upper limit on hourly rates, assess their English skills (“Native, Advanced, Beginner, None”) and see examples of their work. Other websites providing similar functionality are Hubstaff Talent, Outsourcely, Fiverr. I’ve been working with FullTimeForce to build my site, they’re certainly worth a look.
So now you’ve found some developers with whom you think you’d like to work. How do you vet them? Key questions include:
– Tell me about some of the work you’ve done before
If that work is publicly available (e.g. a public website), check it out. If not, ask for the person at that company they worked with to deliver that product.
– How much will it cost?
If they give you hourly rates, make sure they indicate how much time they expect it to take. That’s a basic question for qualified development teams. If it’s a fixed cost, be sure you ask what that includes.
– How do they operate? What’s their engagement model and methodology
Will they be in touch daily, weekly, etc.? Do they approach their work with waterfall (a sequential project management methodology, typically using the Initiation =>Requirements=>Design=>Development=>Test=>Release process) or Agile (daily reviews supporting sprints and iterations). Agile typically involves the customer (you) more and is better at managing change.
– Who will lead the project and do I interact with them or your sales rep?
This is important because you’ll need to gauge the project manager’s English skills (spoken and written). Even though the sales rep communicates well, you may not see him/her throughout the project. Your real communications will take place with the project manager – how well do they communicate and are they available during your working hours?
– How is payment processed?
Typically hours are tracked on the Upwork or Hubspot sites. Payments are made via wire transfer [note – wire transfers typically cost $45 per transmission and it’s paid by the sender (you)]. If a vendor wants you to pay in advance, be leery.
– Who owns the code when it’s done?
You should own the code, enough said!
– Will they provide assistance in hosting/identifying an infrastructure partner?
You may be new to the hosting aspect – work with a team that’s done this before and knows the ins and outs of uploading the code to a data center (Amazon Web Services, IBM, Microsoft Azure, etc.).
– Will they sign a Non-Disclosure Agreement?
If you have a unique product or proprietary data, be sure these developers are willing to sign an NDA to protect your idea. Although these can be tough to enforce internationally, they’re an indication of the company’s credibility and experience within this space.
– Put it in writing
Make sure their rates, estimates, etc. are in writing and that they commit to a start date (completion dates are difficult to define since the scope is not defined). Will the different skill sets be available during the project – i.e. analysts/UX designers at the start, developers within a month’s time, etc.? Some companies may request a deposit before work begins, but most won’t.
Remember, “Trust is a Two Way Street”. Developers and development teams want to trust that you’ll live up to your end of the bargain as well. If you commit to payment amounts and timelines, project deliverables, etc., be sure to live up to your end of the bargain, too.
An important part of the vetting process is to see how the dev team does on a smaller aspect of the work you need. Don’t launch into the entire project with a development team. Find something that’s a necessary aspect of the project and see if they have the skills and professionalism to fulfill it. For instance, if you know your project will need to extract data from an airline scheduling system, or screen scrape data from news sites, ask the prospective development team to show how they’ll do that. This small bit of work shouldn’t take more than a day or 2 and will give you a sense for their technical ability, sense of urgency for your work and it won’t break the bank to complete (typically, you should expect to pay for this type of small initiative, but sometimes the development team will do it for free). If you don’t like their work, it’s okay to tell them and move on; trust me, they’re trying to impress you and know they’re being tested. If they can’t deliver on something small, it won’t get any better later.
Once the development contract is in place, identify who will be doing what and when. Tasks, dates and people are the 3 most important things to track – work with your project liaison/project manager to document each task and milestone so you can identify what’s going to get done, who’s going to do it and when it’s scheduled to complete. Then organize a recurring meeting with that same person to keep that plan on track.
At the outset, you may find the prospect of hiring an offshore development team a daunting task. However, if you:
Your trust in the offshoring development team will grow and you’ll gain confidence in their contributions.