3. Do they ship on time? — Given enough time and money, anyone can build an app. But since it's your money and time we're talking about here, you need a contractor with a proven track record of shipping working apps on time. Again, ask their references.
Define your app's scope
Once you've found a candidate whose communication skills, past work, and shipping track record withstand your scrutiny, it's time to start scoping out your app with a round of discovery.
Discovery is all about surfacing the details about what you want your app to be and do. A successful discovery phase sets a project on a smooth course toward completion by clarifying expectations, dispelling misconceptions, and solidifying actionable items.
This is the part of the project where you and your developer learn from each other. A good developer will listen intently during the discovery phase, take copious notes, and ask thoughtful questions to better understand any nuances about your goals and objectives.
Bear in mind that this process requires not just a good contractor, but a good client as well. You can be a good client by coming to the table prepared with the following:
1. A clear description of what your app is going to be. If you haven't yet decided what you want a developer to build, hold off until you do.
2. A short list of key features your app must have. Keep this to the essentials only. These should be only the most basic capabilities that make your app your app.
3. A prioritized list of optional nice-to-haves. These are the nifty extras that will help make your app fun and interesting. Don't feel that putting these on a separate list from the essentials will force you to leave them out. A good developer can work with you to build these into the project's scope, and prioritizing them increases your odds of ending up with a great app that ships on time and includes the things that are most important to you.
4. Examples of similar apps that you like. The more the better. Be explicit about what it is you like about these other apps. Seeing what you like, and understanding what you like about it, will make your developer's job easier and ultimately save you time and money.
Your contractor may ask you for some additional information or ideas at the outset. Once you've collected all these things, take plenty of time to sit down with the developer and review all of it. Answer their questions as thoroughly as you can. Be as expressive as you can be.
All the while, be sure to maintain a clear sense of your priorities. Software development is typically defined by compromises, and adding certain kinds of features can limit your capacity for creating other kids of features. The clearer you are about what's most important to you, the better equipped you'll be to cut the rope when you're forced to choose between two conflicting options.
Sign up for CIO Asia eNewsletters.