One question we get constantly at FA is how have you been able to find quality team members abroad while so many other people end up getting burned. After over 5 years outsourcing we thought this was a perfect time to put our thoughts together into 4 easy topics to help you make your project a success!
Step 1: Do Your Research!
While this might seem obvious too many times we speak with founders who have hired the first developer they chatted with online which is a crazy idea to us. You are entrusting your unique idea and investment dollars to someone thousands of miles away from you. Why would you ever pick the first person you speak to? You should always conduct atleast 10 interviews so you can learn from each one.
Also you will always want to do your due diligence and find their company or freelancer profiles online. We love websites like www.Clutch.co, www.GoodFirms.com and even www.Upwork.com. Always remember it’s very common for international development agencies to ask their employees to leave reviews for them on Google so make sure you click into the comments and look at the profiles. Make sure they look like they are real reviews from actual customers. Don’t be afraid to ask for references that you can call and speak to yourself. This is a great way to see if this is the right team for you because any team worth their weight will have quality references for you.
A final note that is extremely important is don’t just ask the developer about their past projects. Ask them to give you physical live apps that they have built which you can test on your own devices. Spend at least 30 minutes going over these apps to make sure they function properly, are fairly bug-free, and are at a level of complexity that is comparable to your project. Here’s some questions we always ask during our interviews.
Questions to ask during your interview:
- How long have you been building Mobile Apps for (always realize that if they say “4+ years” it really means ~3 years)
- Do you typically handle the entire project yourself or do you work on a team?
- Have any of your products not launched? If “yes” why? (It’s very common for international teams to not complete the product and leave the client ~50% of the way through their app with nothing to show)
- What are your “Working Hours” when you are available? (make sure this works for your schedule)
- What is your current bandwidth? (always deduct 20% b/c it’s very common to overestimate)
- Where do you store your client’s code? (ALWAYS make sure this is on a version control system that YOU have created. Github or Bitbucket will be fine)
Step 2: Build Trust Early On
When you are dealing with team members across the globe you must be confident in your choice. You must work extremely hard to develop this trust early on. This goes both ways. You will definitely need to spend more time then you expect on phone calls, testing builds, or chatting over slack. You need to be involved or else you will lose connection with the project. One important factor in developing this relationship is always requiring video cameras on the call. Its extremely common for international developers to abuse their distance from you and take advantage of you. A common way to avoid this is to always be on video calls w the team which will let you verify that they are who they say they are in their profile. You’ll also want to see if their working environment will be conducive to what you are looking for. Many developers work from their homes where they may have their parents or young children in the same place which can get noisy. Make sure this all works for you. Also be sure to take interest in them as individuals. One of the most rewarding parts of working with international team members is learning a whole new culture. This includes holidays and traditions which is a fantastic way to open your eyes to this beautiful and diverse world we live in.
One other very important aspect of building trust is always set clear Milestones for your team to deliver on before actually releasing additional money to them. It’s highly recommended (when working with any team on a fixed-price project) to make sure you only release part of the funds when clear deliverables were hit. A common breakdown is to split the project into ~4 different parts (25% each). Below is an example of how we split a typical mobile app build. We do this to ensure both you and the developers stay aligned during the whole process.
Milestone 1 (25%) Upfront Deposit – prior to initial stages beginning. Allow us to organize the development team, set-up the project management boards, and begin design & development.
Milestone 2 (25%) Initial Design and Development Stage – Initial design meetings have been conducted. Initial functionality and flow has begun and the first test build has been sent for review. 33% of the functionality has been completed in this test build.
Milestone 3 (25%) Continued Development Stage – Over 66% of the functionality has been completed. Many of the major features of the mobile or web app have been started or finished. Test builds of the applications have been shared and development has continued. Start planning for the release of the application.
Milestone 4 (25%) Completed Stage – The scope of work has been completed for the functionality of the product. The product is ready to be pushed live in both iOS and Android app store.
Step 3: Communication is Key
At this point we’ve done hundreds of interviews with potential clients who have had countless issues outsourcing but the #1 reason we can tell that their projects fell through was because of poor communication. Like we said before, this goes both ways and it takes a commitment. When you are building an app with an outsourced team you need to realize there are a few challenges to overcome. You have a language barrier, a technical barrier, and a subject matter barrier and you must put work in to succeed. You also need to realize that there is most likely going to be a timezone difference you will need to work around. This might be a good or bad thing depending on your schedule. For example we built our first project with an international team and since we were working full-time jobs we were totally okay to pull late nights, early mornings and weekends b/c that was actually the most convenient for us. But that is not always the case and remember if you set yourself up with a timezone that doesn’t work for you to have an overlap you will run into communication issues.
One final common mistake we see constantly is that when you are building a complex software product you can not use EMAIL as your main form of communication. We covered Tools to use extensively in this blog article ” Steps to Overcome the Technical Language Barrier” but for the love of god please do not use EMAIL or else you will face issues. We highly recommend using something like Trello which is a task management system.
Step 4: Review Their Work
Part of communication is also your commitment to test the builds the developers send to you. A quality product is built with constant iterative testing and since you are the client you need to be involved. If you are building a mobile app you can setup a Test version of the app which you deploy to yourself via Testflight (if you are on Apple) or Google Play (if you are on Android). Also it’s extremely important to keep the turn-around time as small as possible. If they share you a build on Slack on a Tuesday do not let more than 24 hours pass without giving them feedback. There will always be bugs in these builds and you need to help document them so the project can always progress. You should be getting builds from your developers at least 1-2 times per week. *note* When giving feedback please always ask them to “repeat back what they understand”. It’s very common for international developers to say “Yes” even if they don’t totally understand. If you have them share their screen and explain the issues to you. This way you are able to make sure you and your development team are on the same page.
Hopefully this article has given you some insight into what we’ve learned working with international developers for over 5 years now. Currently we have team members in over 4 countries working nearly 24/7 for our clients which is incredible. We hope to have shared just some of our experiences in this quick article. If you have any questions about Mobile or Web development and outsourcing please do not hesitate to reach out.
Chief Project Manager