Do you have an idea for a new mobile app? Or are you looking for a custom built software solution for your business? You may be looking to make your business more competitive, or make your employees more efficient. The solution may involve new custom software, modifications to your existing systems. It also could be a customization and integration of a package into your environment. You may be trying to assess whether your solution should be cloud based, in full or in part. Maybe you need to take better advantage of today’s mobile technology to keep pace with competitors or the way your employees want to work.
There are so many different reasons why you need a custom solution. How do you choose the right software development partner?
Below you will find key questions that you should ask the firms you are evaluating. In addition to your own questions relative to your business or industry, these questions can help provide a framework to make a decision.
OWNERSHIP & MAINTENANCE
Who will own the finished product?
In a work for hire situation, the code and intellectual property belongs to the client. However, it’s important to note that the project needs to be paid in full so that no issues arise if a requirement has not been fulfilled.
Who will maintain the product?
Generally the client has the obligation for maintenance and support. However, some partners will include calls for maintenance over a period of time. Note that maintenance does not mean new features. Sometimes the lines get blurred between what is considered a new feature versus maintenance. In particular, modifying the software to work with a newer version of an underlying OS or other dependency is not maintenance. As a result, if you need continued support for your product make sure that is called out in your agreement.
TECHNOLOGY, EXPERTISE & DEVELOPMENT METHODOLOGY
What is the team’s technology expertise? Do they know multiple platforms and development languages?
You want a team that will pick the best technologies for your requirements. That may mean they will need to learn something if they need to integrate the new piece with your existing system. Ask how they’ve done this in the past. In addition, ask about how they’ve chosen cloud platforms, languages, and frameworks for projects – and why.
What are the skill sets of the team? Do they have solid architecture, user interface and experience, testing, and project management skills?
You need to have all of the above to develop a complete experience. Consequently, you need to consider what training or personnel might be necessary to maintain or use the product. Inquire as to whether the team can deliver that or “train a trainer”.
What is the team’s preferred development methodology? How do they use it? What’s the experience like for the client?
There are two main development methodologies, Waterfall and Agile. At FrogSlayer, we have a preference for Agile-based development. Read this previous blog post to understand our reasoning for this in more detail.
Can the technology the team selects grow with your company? In other words, can it scale with the needs of your business?
There may be reasons of cost or time to not develop a particular feature that has a long future. Regardless of these issues, that discussion still needs to take place. For example, perhaps upgrading to a more current platform is not a feasible or cost effective alternative at present. Regardless, a path can be outlined to get to where it needs to be in the future.
Does the team have expertise with solutions within your industry? Do they have expertise with your preferred technology platforms?
Depending on your needs, specific technology chops may outweigh specific experience in your industry. In other situations, the vertical expertise may be more important than the technology platform. Each situation will vary, sometimes even within the same company.
How will your data be protected?
Does the solution recommended include an effective strategy for meeting the business needs for uptime, backup, and exporting data to other systems if necessary?
COMMUNICATION, TEAM COMPOSITION, REPUTATION
How will the team communicate with you? Do you have an assigned account manager and project manager that will funnel all communications? Do you have access to the CEO of the firm? Furthermore, can you talk directly to designers and developers on the team as part of the process?
Naturally there has to be a process and an effective project lead or manager on both sides. Furthermore, it’s extremely important that communication is open and free flowing. Hierarchy shouldn’t stifle quick resolution of issues that come up. You will most likely find some firms that prefer to keep developers and clients separated. However, we find our projects to be more successful when the client is able to communicate directly with the developers on their project. As a result, there is less risk for confusion and stronger relationships are developed.
Does the development firm outsource work offshore or elsewhere?
Ask about the makeup and location of the team. How do they scale up or down to manage work? Sending technical work offshore is very common in this industry. Regardless of how common this practice is, we do not outsource work offshore or overseas. We take pride in sourcing local talent located solely in Texas.
What is the firm’s reputation? Do they have client references, and can you contact them?
Ask if you can contact clients directly, the more recent the better. Tread lightly if they cannot give you any references from happy clients. Consequently, if there has been an issue with a previous client in the past that you know about, how does the firm explain what happened?
Choosing the right development partner is not easy, just like software projects of seemingly moderate complexity often turn out to be much harder than expected. Furthermore, ask all the firms the same questions, and carefully weigh their answers.
If you have any other questions, please feel free to visit our FAQ page. You’ll find answers to some more commonly asked software questions in addition to what we’ve discussed above. Furthermore, please feel free to reach out to us if you have a more specific question.