I just got off the phone with David, an old friend of mine and a VP of engineering for a stealth startup in Boston. His team is doing very well, and who knows, we all may hear about him and his company pretty soon. Needless to say, after half an hour discussion of his great idea and the business model we dove into technical aspects. My friend’s technology stack selection is of no surprise – RoR, MySQL and DynamoDB running on AWS. His SDLC is also far from innovative – SCRUM. What I found rather unusual for this stage of the game was a heavy utilization of offshore that he described as one of strategic decisions he made early on. Over 80% of his engineering workforce is based in Argentina, and given the fact that he’s never been outside of this country, it was somewhat a surprise. David rates his experience of using offshore as “one of the smartest moves I’ve done”. We let the time be the judge of that, but in meanwhile a few observations –
David’s motivation for using offshore was very common – bootstrapping the company with current local salaries is close to impossible, finding local talent is not easy and far too time-consuming, especially, getting agile web development skills. So offshore seemed like a sensible path to take. Near-shore preference came from his “control freak” nature. “I just want to see them on the Skype, want to be able to check, ask, re-focus in real time. Time zone differences is not for me.” Having gone through a lot of “bad” and very little “good” experience with offshore he used a small advisory firm to find partner and manage the offshore relationship. But that was not the key to success. “What makes us successful in using offshore are the 5 Cs -
- Clarity – know exactly what the goal / objective is, what result/outcome you expect – in a great level of details.
- Conviction – be absolutely sure that you can achieve your goal / objective – research, analyze, what-if to death, and then cut off alternatives and move forward.
- Commitment – be prepared to put the effort required to achieve your goal / objective; the problems will happen, don’t let them deter you from the path you’ve chosen.
- Consistency – execute with persistence, keep your eyes on the ball; do not drop best practices, even though they seem at times to be nothing but unnecessary overhead.
- Collaboration – make sure that every aspect of your activities has been properly communicated to every member of your team, discussed and accepted by them.
I asked David whether it’s possible that he just got lucky with his partner, but he did not support that idea – luck has no place here since it begins with L :D