Building an app or piece of software has become exponentially easier in the last 10 years thanks to the ever-growing number of libraries, no code solutions and platforms that enable you to build faster and with less intensive knowledge. A common theme of the last 5 to 10 years is to go offshore with your development team to help you reduce the amount of time you need to spend and the overall build cost. However, developing offshore is not all sunshine and rainbows. It can take your cheap build and turn it into a massive burden on you very quickly if you don’t know what you're doing. Here are 5 tips to consider when hiring and working with offshore development teams.
When you're developing an application offshore, you first need to understand that this team is going to build almost exactly what you tell them to and often won't make the changes you would if you were personally developing the application. For example, if you were going along building out the app and saw an issue in the workflow, you would probably stop and fix that issue. However, your offshore team will just build it. They are paid to follow the plan, not make more work.
You must also be clear in your instruction to your offshore team. When doing testing and writing bug reports, often you won't natively speak the same language ass your offshore team. Further to that, you often won’t share the same cultural nuances, so shortening words and using slang or euphemisms will only lead to more headaches. Do it properly the first time and just write it out as clear and as simple as possible.
PRO TIP - Use pictures!! A dog is a dog in any language.
Make sure you have laid out and tested workflows of the application with different people and find the bugs now before entering into a contract with an offshore team otherwise it will just blow out your budget.
It is important to realise that when you develop offshore, you are the single point of contact. When there are issues, updates needed, testing and reports written, or even design changes and access to files, you need to be on call to give all of this to them. If you're trying to develop offshore and aren't available, one of two things will happen. Either:
• You won't get what you want.
• You will get what you want but your timeline and budget will double what you predicted.
If you are going to manage the build yourself, using project managers like Notion, Trello, Asana or Basecamp are effective ways to keep all your information and communication in one place.
I would also recommend you insist on a weekly progress call, which has two substantial advantages. Firstly, this helps give you both the chance to talk through the build. You can explain bugs found in testing and they can ask questions about your design or documentation. Secondly, and possibly the most important reason, is it will build momentum. This is often more important to a project than achieving the milestones on time.
Look at your job, lifestyle, living arrangements, everything! Do you have time to run a team on the side? If you're doubtful, go with the agency.
You’ll often decide to develop offshore for a few reasons, but a common one is a lack of ability. When you’re getting an application built offshore, you need to know that you are running the team and you must either have some technical aptitude or have someone you trust who does.
If you don't know what an API, Library, Stack, Framework, Front end or Back end is, you have two options:
• You pay extra and get an agency.
• You find yourself a technical co-founder.
Just because you’re getting it developed offshore doesn't mean it will all be taken care of for you. You must be actively involved to get what you are envisioning. Also, you will need an in-depth understanding what you are building so that what is produced is the best possible product.
Before you go hiring a development team offshore, take stock of your software development knowledge. Is it really good enough to run the team or is there someone you trust that can help you?
Further to this, you are building an app company. Learn what you are building. Short courses, YouTube, blogs, workshops... The list of resources that are available now are endless. No one expects you to tell the programmers how to setup their code or what functions they could use to optimize the performance of the app. It’s the basics you need to know.
Version 1 is complete. Congratulations, you now have an app that works. But now what? If you have read my other post "The hidden costs of developing apps", you will know that development never stops. Developing your application is a never ending process and unless you have a plan to transition to in-house development, stay with your current team, hire a new one or do it yourself, you can end up with an app that is unmaintained and slowly falling behind the pack, not reaching its full potential.
What are your options?
With a programming background, my approach is often to get the bulk of the app built offshore and then hire a single developer to work with me on building out updates and new features. Partly, this is because I enjoy building things, but it also helps me save costs and really understand my product in detail.
Another option for you that I have seen used is to stay with your original team and pay them per update. This is where a roadmap really comes in handy because you can cashflow these updates through the business depending on your business model. For example, if you are earning enough from initial sales to put aside $1000 per month to spend on development, work out a rate with your team and feed them functions as they need them. Hence a roadmap showing New Features, Bugs and Updates is a good way to do this. Tools that work well for this are:
Your final option we will mention is that you can hire a developer or agency in your area who you can work with to further develop or rescue your project (something digitalbasis.com specialises in). Sometimes your first team is not the one you want to continue with. If you have the resources to have someone you can sit and talk through issues and future updates with, it can be of great benefit, especially if you're not technically gifted.
Build a roadmap and run the numbers. To understand your financial position, you need to get specific information like how much money you will have available to spend on a third party.
Finally, you have worked through all of this information and it is time to find yourself an offshore team. So, where and how do you find a team?
Below is a list of common places to find freelancers:
• Job platforms (Seek, LinkedIn, etc.)
The how aspect of the question, unfortunately, is a mystery. But some common approaches that have worked in the past are:
• Using teams who use Upwork to source projects for their firm.
• If you are getting a genuine freelancer, make sure you get sample of their work and ask them to do a code test online. They are small and easy for people who know what they are doing and give you the peace of mind that your freelancer actually knows what they are doing.
• Basic English testing.
• Negotiate the best deal you can.
• If they don't feel right, don't go with them.
Take your time and don't let them rush you into a decision. Go through the application methodically, removing the ones without the skills you need and those who are out of your price range. Once you have a smaller list, you can start speaking to the ones you have left. See how strong their English language skills are and if they have any previous work you can check. Begin building a professional relationship with them, they will hopefully be working with you for a while.
Over the last couple of years of working with offshore teams, the number one thing that makes the team or breaks the team is communication. You must be clear and they must be clear. That way you can both understand each other’s requirements. Do not assume they will simply add things as they go. Let them know that if they spot a hole in your system to tell you and give you a recommendation. Hiring offshore developers can be extremely rewarding (You’re hiring your own team) and a massive cost saver so long as you:
• Know what you're making.
• Know you can commit the time to the team.
• Know you have the knowledge base to make the decisions.
• Know your roadmap and have a plan for the end of V1.
• And finally, you hire right (often easier said than done).
Following these 5 steps will hopefully make your next project a more enjoyable and successful one. But if you look at that and put it in the “too hard” basket, head on over to digitalbasis.com . They are who you call when a traditional agency won't work. Acting as your CTO, they have the resources to plan, design, build and market your product.