Engaging a software development partner can be a difficult process to navigate, and it can be very hard to know when you have found the right one. A lot like when you interview candidates for a role within your business though, there are some key things to look for. Things that will show you whether or not the organisations you are talking to have your interests at heart, know their stuff and are worth trusting with your projects.
As you get further down the line with your project, the questions will become more and more detail focussed; as your chosen partner needs to understand the data, the goals and the functions needed. However, early on in your discussions, there are some key questions about the project you should expect to be asked.
To help you assess potential partners, we’ve put together a list of questions that they should be asking you. This also doubles up as a way for you to prepare yourself for a meeting with a software developer.
What is the vision for the app?
This should be the very first question you are asked. Without a reasonable understanding of the aims you have for your project, your prospective partner will be missing vital context in order to future proof the product.
Your vision should tell the developer what you want to achieve and why. You should expect it to be written down and referred back to throughout the lifecycle of the product. When documented, the vision will encapsulate the purpose of the project and will focus on the business benefits for you if it is a success.
Can you explain what you want in a few simple sentences?
To ensure you understand your product and have clear goals in mind, your developer should make you explain it; without technical jargon and in simple language. If you can do this, it shows that you have a good understanding of what you want and what it will do. The idea is not to test your technical knowhow but to understand how you articulate your product, and therefore what about it is most important to you.
Your explanation will give the developer a lot more information than what the features are. It will tell them what is important to you, what you see as the unique-selling-point, what you want to get from it and who the users are.
Who is the customer?
Every process has a customer. That customer can be external or internal, but they will be the ultimate recipient for the product of that process. More often than not this is a paying customer, i.e. someone who gives you money in order to access your product. Software is also often built for internal processes, so you need to know who the customer is in that instance; who benefits from this process being software based?
Your development partner should distinguish “customer” from “user” as they are not always the same.
Who are the users?
It is not possible to build successful software without having a deep appreciation for the requirements of the user. The user is the most important person involved in the development of your app. They should be represented at every stage of the process.
Any development partner you work with should be very interested in who your users are, what type of people they are, how they currently do whatever it is your app will do and what the issues are with that. You should expect to be quizzed about your users, and you should be armed with as much information as you can be.
When do you need it by?
This is the ultimate question, and a very difficult one to answer. You may have a deadline in mind or you may not. You may know what “too long” looks like or you might just have a vague idea, but either way you should share it. A development partner will work with you to try and achieve your goals, so the sooner they know what you want to achieve, the sooner they can help you achieve it.
If your deadline is unfeasible then you should expect push-back, but you should also be prepared to sacrifice scope in order to achieve it. If your developer asks you this question early on, they are taking your project seriously and want to know if you have thought ahead and have a plan.
Who can we talk to about this going forward?
A development partner should be aware of and be in close contact with the right people inside your business. They should have access to someone they can work closely with to resolve problems, remove blockers and answer questions. A developer asking this question is thinking ahead to the future, imagining what their relationship will be like with you and how you will want to work with them.
You should consider the group of people that you nominate for this position carefully. It will most likely need to be more than one person to ensure that the correct areas of the business are covered (i.e. Marketing, IT); however, having too many people can risk no decisions being made.
A really excellent development partner will tell you the types of people they need, to make sure they have the right contacts for their purposes. So for example, they might ask for someone from IT, someone responsible for branding, and someone responsible for customer communications.
Where will the data come from?
Most applications will require some sort of data to function. This might be user entered, imported, or retrieved from elsewhere, so it’s really important that your developer knows which, and addresses each individually.
If the data is entered by users then there are UX implications for ensuring this is easy and clear. If it is imported, then the format of the data, and the import process is important. If there is integration required to get data from elsewhere, then that will need to be carefully scoped, and your developer should ask you for contact details of the third parties so they can engage with them directly.
What does success look like for you?
There are various ways this question might be asked, but a great development partner should definitely want to know what good looks like, no matter the purpose of the app.
Only by understanding the criteria for a successful project can a partner design and build software that helps you achieve them. This is true of all possible requirements for an app.
Let’s say you currently manage your customer’s inventory via a spreadsheet. This process is highly manual and prone to human error. Your customers rarely have an up to date view of their inventory, and they cannot rely on what they do have. Success for you may be to give your customers a real-time view of their information, which would result in an increase in customer retention. You may already have a measurement for this, or you may want to put one in place for the purposes of this project.
Are you aware of any existing companies doing this?
Although you should definitely expect your software developer to brush up on your industry and your offering early in the process, you cannot expect them to be an expert in your field. It is your responsibility to know who your business will compete with, what your USP is, and how you fit into the market, and this information should be passed to your developer. You should have this information so that you are able to work with them to ensure the success of your product.
A development partner should be keen to know what products are already out there, how your offering differs from them, which you like, which you don’t and which you are inspired by. This will help them no end when they are building your product.
Don’t forget, this is your product. You are ultimately responsible for its success, so you should be able to work closely with your development partner to guarantee that. Don’t expect to sit back and relax during the process; you should be involved, asking questions and pushing for information to make sure that your project will deliver your business case. Your developer should welcome this, and ask for it from the very start of your relationship. If they aren’t, then maybe you should consider looking elsewhere.
Already have an idea for an app that you are dying to talk about?
Use our free template for the questions you should be asked and the answers you should have.