Outsourcing app development can be appealing to people who don’t know how to develop and build apps, by providing the opportunity to find good app developer who will work for competitive rates and who delivers you a professional quality app.
When it comes to outsourcing app development from Australia I have always worked to the following mantra:
Good, Fast, Cheap (Pick Any Two)
While this applies to many things, getting all three, good quality, fast delivery and a cheap price…..is rare so you have to assume that if you are trying to develop an app on a budget and manage the complete project yourself, you will have to overcome some hurdles along the way whether you use a local app developer or outsource your app development overseas.
1. Make your budget and timings clear
You should have an agreement with your app developer on how long the project should take and the total budget you have allowed.
If you are using an outsourcing website, many of these allow you to set a project plan or monitor the outsourced workers progress in a variety of ways.
If you are using local developers, ensure that you have an agreement on price and delivery timeframes and you should also schedule regular face-to-face review meetings where possible during the development process to ensure you can see that your project is on track.
2. Clearly state what is expected
There should be a clear understanding upfront about what work is required for the project. Before any work is commenced in developing the app a clear project plan and design document should be created to ensure that all critical elements are included and everyone understands what needs to be done, who is doing it and what is covered in the price.
3. Choose your app developer wisely
If you can’t have a face-to-face meeting with your developer then it doesn’t really matter if they are in Sydney or Singapore! You may gain some level of comfort in dealing with a local app development company but sometimes interstate isn’t even local enough if things start to go bad.
When choosing a developer you should start by reviewing any apps they have developed and looking at user reviews for feedback on their work.
If you are using a freelancer website for outsourcing app development then you have access to reviews, ratings and examples of previous projects to help you make your decision and we certainly encourage you to commence a video based dialog with your chosen developer at the early stage so that you can at least use some visual cues to ensure they are understanding what you need.
4. Protect your idea where possible
You can talk to ten different people and get ten different opinions on the value of non-disclosure agreements as a form of protection. If you are working with an Australian company then you have some measure of recourse under Australian Law however agreements across international boundaries come with far more conditions than can be addressed here and irrespective of the location of the violation, the value of any protection depends on your ability to enforce it.
At the very least, asking the other party to sign a Non Disclosure Agreement (NDA) at least demonstrates that you are serious about your project and keen to ensure things are done the right way and above board from the start.
5. Agree on a detailed project brief together
One of the single most important aspects of any successful app is the development of a detailed project brief that covers all the specific design and functionality elements of the app.
A detailed app brief should include:
- A list of the functions and features to be included in the app.
- Layout designs for all of the screens in the app with labels pointing to screen elements outlining what they are and what they do.
- A step-by-step flowchart, wireframe or storyboard that shows what happens when the user interacts with the app.
- Clearly marked up app graphical assets labelling each element or an agreement with the developer to provide the required graphics.
- A well detailed document that outlines how the app is to work and function so that all screens, design elements and functionality are covered and agreed upon.
6. Provide prompt and clear feedback to the developer
One of the most common excuses that many developers use for delayed projects is that the feedback was late and unclear. You need to ensure that you provide prompt and clear feedback to the developer. We recommend creating clear and concise responses that answer all of the developers feedback in a timely manner. If it is a complex project, use a numbering system to allow you to go back and check that all the work has been completed properly.
There are also a number of online project management services that allow you to track all of your interactions with the developer.
7. Stagger payments to meet milestones
It is always good to set up a staggered payment plan that is tied to milestone achievements in the app development process. It is normally sufficient to setup 3 or 4 payments depending on the amount of work the developer is doing for you but this always ensures that there is motivation for the developer to get the project to the next stage and it protects both the employer and the developer.
8. Test your app as much as possible
All good app developers should be able to provide you with a test platform to allow you to evaluate the progress of your app. As the concept creator, you should be involved as early as possible to monitor progress and then, once the app has been developed to a workable state, you should involve friends or colleagues to participate in testing.
You need to clearly document any issues that you encounter during testing and provide this information back to the developer in a clear manner so that you can check later that the problem has been fixed and have a clear record to work from.
One of the most common problems that arises when outsourcing app development is whether an issue that is considered a bug, is actually a change to the original specification. This can be avoided in many cases by having a detailed project brief as referred to earlier where you can go back to check what the expected functionality was supposed to be. Even then, especially considering language barriers, this can become a problem however with frequent involvement from the start and thorough testing throughout the development process, many of these problems can be averted before they become critical issues further down the path.
9. Get approved in the App Store before final payment
App Store approval processes vary across the platforms, Apple is far stricter on both content and functionality than the Android Play Store however no matter the platform there are normally minimal functionality or useability requirements (it at least has to work) in order to get listed and ranked in the App Store.
You should tie your final payment to successful listing in the App Store to ensure that, at the bare minimum, you have received a functioning app from the developer.
If the app creator and app developer both take the project seriously enough then there will certainly be some discussions about IP ownership and IP protection both with regard to the idea and the code behind it however that is a completely different topic, no matter what the agreement you should have a fully functioning app available for download in the app store before you make your final payment to the developer so at the very least you can start testing your concept against your original objectives in a live environment.
10. Understand who owns the app
As mentioned before, there are many variables when it comes to discussing IP ownership and there are different laws and business expectations that apply within Australia compared to Overseas.
If you are developing a completely unique concept then you have certain protections under Australian Copyright Law and can obtain further protection both locally and overseas through the patent process however we strongly recommend that you consult a lawyer if you are concerned about these issues.
When working with overseas app programmers who are simply creating the code-base for your application you should ensure that all of the project files are packaged up and delivered to you prior to final payment if that is part of the agreement.
While some of the rules above are more appropriate if you are using an outsourced overseas app developer, many still apply to a local Australian app development company you can’t have face to face meetings with and even those with which you can.
Developing an app can be a risky business and unless you have the skills to do it yourself, you are effectively outsourcing your project in some way and the location of the developer doesn’t guarantee success or failure for any app.
While becoming an app millionaire is an attractive option for some, there are still many practical ways that apps can be developed to deliver a rapid return on investment for businesses but irrespective of the purpose, the process remains the same and these tips are designed to help you avoid many of the pitfalls that first time app developers have to overcome when outsourcing app development.