Minimum Viable Product · IOS

What should be look for and be careful about when choosing offshore iOS developers for our MVP?

Alper Cakir

January 30th, 2014

We are ready to start development for our MVP. We finalized UX/UI design/specs and considering couple of good iOS developers in China. Anything in particular that we should be careful about? What should the deliverables be?

Your input is much appreciated.

Swarna Kuruganti

January 30th, 2014

Agree with the above response Michael's response! I am sharing some additionals:

1. App documentation - If you don't already have it, write up a very detailed requirements doc that explains purpose of the document for the users, has wireframes with functionality/purpose of each screen described including error (& other) messages to be displayed. 
It may sound like a lot of upfront work but it's worth the investment in time to think through as the offshore folks will mostly just execute on your requirements. 
It's the little things that will accumulate to be problems.

2. TESTING - Make sure to check how they do testing. Which versions of devices & OS will they use? They will need to send you an issue log to agree on any outstanding ones before each milestone payment.
You will need to contractually & verbally agree that you will need to do user testing after certain milestones/builds are considered done from their perspective. Testing can be the most challenging part of iOS apps if code is not fixed with version control/discipline.

3. Make sure you have a contract with them which states -
(a) IP developed is yours. Technically there is nothing you can do if they choose to reuse it. But you can at least have this in writing for another US client.
(b) Handover items - should include (i) all xCode used for the final app product, backend database files if any and some documentation. (They might balk at detailed documentation or charge you extra. But there should be a very minimal level to help you understand what's what). After the final payment is made, handover should be completed.
(c) Deployment assistance? If you need any of their help installing the code, db on a live server for you. And testing to make sure it all works
(d) Post deployment support - what will be the level of support per day/week & what items will they support.

Michael Barnathan Adaptable, efficient, and motivated

January 30th, 2014

If you can't possibly reevaluate that decision, give them *very* detailed specs and add a later rewrite into your technology roadmap sometime in-between your seed and A rounds (not after the A round, as VCs won't typically bite for an A unless you have someone onboard owning the tech).

Rob G

January 30th, 2014

communication is hard unless you have lived in or are a native of the off-shore country or visa versa.  You may speak the same language, but understanding is often a big issue. also, especially in china, protecting you IP is almost impossible. my $0.02 worth. 

Michael Brill Technology startup exec focused on AI-driven products

January 30th, 2014

From someone who has done a ton of offshore work - many successfully and many failures (including an iOS app project that I pulled the plug on after two weeks) - a few comments:

* Get a project plan and have lots and lots of milestones. They will want fewer because it gives more flexibility, but you can get into big problems by pushing those back. No project plan ensures disaster.
* Use github. Make sure they check their code in at least a few times a week and review it (or have a friend review it). If they refuse to do this then you really should find someone else. This is not to micro-manage them, but just to avoid being blindsided. This is non-negotiable.
* Make sure you have the data model documented and that they clearly understand this. Usually the biggest problems are from conceptual disconnects that are often hidden until late in the project. Having an explicit data model for the system usually ferrets this things out soon.
* Fire fast if it's not going well.


Muhammad Awaid Co-Founder and Director at Apponative

January 31st, 2014

Dear Alper,

I am a Director and a Co-Founder at a mobile development company so let me highlight a few points that will help you find the best offshore company :)

1) Requirements - Offshore companies do not pay much attention to requirements. Normally, they just try to secure the project. You need to pin down each and every detail of the project and make sure the company understands it.

2) Payment Mechanism - For larger projects, monthly compensation is always better. However, to start with, you should define milestones and there should be a subsequent payment attached to their successful deliveries.

3) Freelancers Catch - In countries like Pakistan or India, a couple of friends who are just doing freelancing market themselves as a company. Be very careful here. You should make sure that that you are signing a contract with a proper company. I would suggest that you should have a video conference call before you start your project.

4) Project Management - Make sure that the offshore company provides you with a project manager which is single point of contact for the whole team. It will be difficult for you to handle programmers individually when the team size grows. It will be great if the company offers a project management dashboard to you.

5) Status Reports & Meetings - Make sure that the team sends you project status reports after couple of days and also have a video conference call with the team at the end of every week in order to touch base on various aspects.

6) Visit the Office - If your team size grows, the out shore company should not be hesitant to invite you to their office.

Please let me know if you have any questions.

Muhammad Awaid
Director @ Apponative

Nicholas Grant Software Developer

January 30th, 2014

The first question I would ask is how did you come to the conclusion that you found good Developers in China? If you based this on an interview, how knowledgable is the person or people who interviewed them in mobile technology? If you found them through oDesk or a similar service, how much positive history are you using to measure the quality of the Applicant? If you do decide to outsource the Development, it could be a fantastic way to reduce Development costs. It could also be a tremendous failure that has you continually up until 4 am on Skype conversations trying to explain what you believe to be the simplest of concepts. - Nix


January 31st, 2014

Depending on a value of your development - traveling to meet developers on site and review their local operations can help you to have a better understanding of what to be careful about.

Dhruv Vasishtha Product Management at Medidata Solutions

January 31st, 2014

Hey Alper, send me an offline message and I can show you the Trello workflow and filters I used to quickly identify offshore teams I could work with that were legit. Best, Dhruv