As a software house with longstanding experience, from time to time we get quotes from clients who had their app screwed by some other developers and want us to give their failed apps a new lease of life.
Of course, we are glad to help. But what is striking here, is the number of serious problems that could have been easily avoided. Some problems just shouldn’t happen if you choose a reliable app developer wisely. Still, they do happen.
So how to prevent it? How to choose a trustworthy app developer? In order to make your project run smoothly and save your nerves, time and money, we prepared a quick checklist. You will find here the most important technical, legal and payment tips that will ensure you choose only reliable and experienced app development specialists for your project.
VERIFY THEIR REFERENCES
The first thing to check is whether your potential cooperator has the necessary experience in similar projects. I mean, truly has, not only says he has. A beautifully-designed portfolio can be misleading here as developers can show whatever they want on their website.
But there is one way to prove a software house expertise for sure: their references in worldwide mobile developers directories such as Clutch or AppFutura. Such directories can be trusted for a good reason: they check clients’ satisfaction with already completed project by themselves. They procedure includes calling clients and interviewing them about the competed project so you can trust their reviews are always real and actual.
Want more about app developers directories? Check what Marc Coll from AppFutura has to say about their methods.
ACCESS TO YOUR PRODUCT
The next thing is checking whether your developer gives you access to your product. Failures happen – that’s life. But a good software house should prevent your project from vanishing just because they faced a mishap. They also should fulfill your request for access to your app’s code after your cooperation comes to an end – that’s your product after all and you should be able to correct potential mistakes or make adjustments.
So what can you expect?
- Your code is kept in a repository. Systems such as Github, Gitlab or Bitbucket help developers to work together on the project stored both on their computers and an external server. This way, you can always come back to a previous version of code, it is easier to backup it and programmers can collaborate on multiple features at the same time.
- Full documentation is provided. A well-prepared description of major functions and methods is inevitable. Make sure it includes remarks about all important parts of app development process: from design to SDK integration.
- Developers use a well-known framework. For example, for PHP development these include Symfony, Lumen or Laravel. Why to use popular frameworks? They are proven, time-tested and make it easy to add new people to the project. And they also prevent you from getting a code which can be operated only by one person in the world.
MULTIPLE SOFTWARE TESTS
One of the most crucial aspects, inevitable in mobile app development process, is software testing. You can say that a good code doesn’t require tests but you cannot be more wrong. A good code is a result of good testing process!
So what kind of tests are basic?
- Code review process. The idea is that every piece of code is read by another programmer who hasn’t write it. Such a fresh approach is extremely important as the reviewer is not stuck in a certain way of thinking and can find a mistake unseen by the author or suggest an alternative solution.
- QA Tests. QA Testers test all aspects of a developed app, both manually and by applying testing tools, to ensure that the ready product is all polished up.
Interested in QA testing? Check what is Testers’ role in mobile development process.
Have you already set all technical issues in your agreement with a software house? Then it’s time for legal issues.
First and foremost, make sure you get all copyrights for your app from the software house. It’s you who is the owner of your app – from the idea to the final product. Remember also about checking whether the software house has copyright agreements with their employees and subcontractors. At the end, you and nobody else should have all rights to the code they’ve written for you.
On the other hand, there are some exceptions to your copyrights. For example, your agreement with a software house can include a bequest about “standard software”. That’s a software solution for a typical problem (e.g. logging in) which is not written exclusively for you and you’re not granted full copyright to it. However, by letting your developer to use such standard software, you can have the product delivered much faster.
Apart from ensuring your copyrights, some clients also decide to sign a Non-Disclosure Agreement (NDA) with their developer to make sure their ideas are protected and won’t be revealed or misused.
An NDA is a legal agreement between two parties that defines confidential information which will be disclosed and imposes a legal obligation on the receiving party to keep that information confidential.
A trusted software house should have no problems with signing such an agreement, either prepared by them or by you.
Want to find out more about NDA? Get our NDA guide.
PAY ONLY WHEN YOU’RE SATISFIED
Many clients admit that one of the most failure-prone spots in mobile app development process is… the end of it. For instance, common misunderstandings occur while a software house hand over the finished app to the client but they have a different understanding of what a ready product means and as a result, both sides are dissatisfied.
To prevent such misunderstandings, it is very important to specify in writing the requirements developers have to meet to consider an app completion successful. It is also important to include payment process details, such as the payment model and deadline.
A good software house will gladly help you with all that. Unlike inexperienced developers, those who are long on the market are flexible and can adjust to your needs. They are also very likely to offer you a “Pay only when you’re satisfied” guarantee to make sure you are fully satisfied with the product you get.
So your mobile app project is over and you can celebrate your success. But wait a minute. This last phase can also cause troubles. Isn’t it better to be prepared?
According to some clients, although their app worked well in the first place, after some time they discovered bugs which made the app difficult to use and spoiled the final effect. They asked their developer for help but get a negative response because a guarantee was not included in the agreement.
Such situations never happen with good and reliable software houses. Experienced developers take responsibility for their work and usually offer a guarantee that ensures the finished app will work smoothly or they will repair any bugs on their cost for the set time period. For example, when you cooperate with Ready4S, you are granted a 3-month guarantee period in which we ensure the best quality of our apps.
Another way to keep the highest quality of your app after launching it is agreeing for the maintenance period. Maintenance means that your developer agrees to take care of your app for a set amount of time. It shouldn’t be confused with a guarantee and usually, the guarantee period should be counted from the moment a developer finishes your app, not from the end of maintenance period.
A well-written agreement with a software house is the basis of your cooperation and defines all critical issues that might be problematic in the future. Include all the points from our checklist and you can be sure to be protected against the most common problems app owners face.
Are you ready for developing your own app project? Fill in this form to get a free quote for your app idea.