Good morning, All,
We often come across companies who outsource development. It always looks attractive – and it’s so much more affordable, right? If that’s your decision, Godspeed – but quite recently, someone we know did just this and the experience was far from a good one. Or a successful one. If you are one of those intrepid souls who decides to go the outsourced route and work with a team outside of the US, some advice from what we have both heard and observed first-hand over the years:
- Talk to people you know who have used offshore outsourced teams and get their feedback. Was it a good experience? Did the team deliver what they said they would, in a timely fashion? And we’re talking tech-time, which is not to be confused with internet time, which is very different.
- Ask for recommendations. Try to find someone whom you trust who has worked with outsourced teams before, and who had a good experience. Work with the ones they recommend.
- Make sure to ask if there was a technical project manager/CTO on the US team who was checking the code/overseeing the team. Important to have one of those on your team, especially if you’re not technical.
- If you don’t have a technical project manager on your team on the US side, hire one. It’s worth the expense. Trust us, you don’t want to have to be in the position where you’ll pay for it later, which is when it’s much more expensive.
- Many outsourced companies will sell you on a blended rate. If they do this, run. A blended rate means a blend of junior/entry level and more experienced developers. The actual translation is that the entry level ‘apprentices’ will be doing all of the work, and you’re paying for the more experienced person or persons, who will basically be doing little or nothing. Except be overpaid by you, of course. They’re really there to convince you that everything is fine, even if/when it’s not, and that it’ll all be fixed – in the future. They’re basically there to manage you.
- Never give the outsourcers all of your passwords or full access – they can hold you for ransom. NEVER give them access to your domains. That’s handled only by you and your US team. Whatever IDs you do give them are ones that you can change immediately, without it impacting your business.
- The way to manage the outsourcing is that you want to create a dev environment here in the US and you want the coders to check the code in to your environment. Basically, you want them building on your environment, with user passwords that you can delete if/when you need to. They deliver code – you install it. It’s always better when they hand you the code, and your own US tech person takes it from there. The one you hopefully trust, or can at least take to court, if things go south. ‘Outsource,’ when it’s outside of the US, means that little or no legal recourse. If you do end up needing to go that route, you’ve already lost.
- Insourcing is an option. We do live in a contractor economy and you might even want to consider remote workers. There are plenty of those locally, or in places like Kansas, which is terra incognita and totally foreign to many a New Yorker, but the time difference isn’t horrific and they pretty much speak the language. And have a lower COL, which translates to the fact that they may well be within your budget.
- How well do you know your outsourced team and the people on it? There’s a big market in secondary IP and a whole new class of global investors, many from countries where the term IP is a foreign concept – pun intended. You may be saving a few bucks. Then again, you may be giving away the store.
Not all outsourced teams are criminals and not all entrepreneurs have deep pockets. It may be worth the cost to be the boss, but inexperience and naiveté can be expensive. Onward and forward.