How to choose the right software development partner
By Michael Argentini
Managing Partner, Technology and Design
Finding a software development partner can be a real challenge. Even if you've been in this position in the past, it may not seem any easier today. Like choosing a doctor, mechanic, lawyer, or any other service provider, it helps to know a few things before you start your search. Don't worry. You don't have to become a software development expert.
It's important that you and your software development partner are in alignment with regard to values, ethics, and expectations. Below are some questions that may spark meaningful conversations with a prospective partner.
What's important to you?
Some people value low cost as most important. Some put a higher value on quality, or speed to market. What about the quality and quantity of communication during a project? Does post-launch support matter to you? Think about what matters most to you and share those concerns with prospective partners.
What's important to them?
When you discuss what's important to you with prospective partners, find out what matters to them. This will be a relationship, so you want to understand what motivates your partner. Look for examples that they value the same things that you do. For example, if they claim to value communication, ask them how they ensure great communication with their clients.
How have they handled adversity?
Ask your prospective partner to talk about a time when things didn't go exactly as planned, and tough decisions had to be made to make sure the project was a success. How did they handle it? How did their client respond? What did they learn from the experience?
Do they keep clients?
A great indicator of a software developer that values partnership is their long-term client relationships. It's not unusual for software development relationships to be transactional; short-term "hit and run" engagements. And that's what makes the long-term relationships really matter. Talk to your prospective partner about these relationships.
- Do they work well with others?
Sometimes your software development partner needs to work closely with your design or marketing partner, legal, IT, and others. Is this something they do well? Do they insist on handling all aspects of design, marketing, SEO, and development? Is that good or bad for you and your new project?
The way a software development partner conducts business is a great way to see how they value their clients. This includes contract terms and other agreements, whether or not they outsource work, support options, and more. Below are some considerations for doing business with a software development partner.
- Create a partnership, not a transaction.
Strong-arming a partner on contract terms could lead to a transactional client-vendor relationship where the vendor is going to strive to meet the minimum requirements and point to the contract as often as possible to justify not going the extra mile. They won't feel appreciated. And they certainly won't feel like a partner. Terms in your contracts should protect and value both parties. Be flexible!
- Leverage their expertise.
To get the best result, remember that the software developer is your partner. Don't dictate strategy and tactics in their domain of expertise. Speak in terms of goals and business requirements. Let your partner tell you how to get there with the technology.
- You have a responsibility to maintain your software platform.
If you're building any kind of software product from a website or intranet, to a mobile app or business operations platform, you must be prepared to support it as long as it's in use. That means budgeting for ongoing maintenance, support, and evolving it over time. Bugs will need to be fixed, features will need to be added, and security vulnerabilities will need to be patched. You have a responsibility to your company, users, and in many cases the Internet at large, to not be a vector for malware distribution.
Your software development partner should be a trusted, experienced partner. It's a tricky, ever-changing industry. So developers will certainly have their expertise in specific areas and technologies. Here are some considerations for evaluating the whether they are the right fit for you.
- What experience do they have building similar products?
Yes, your new idea is a product, and your prospective partner should have relevant experience building similar solutions. Ask them for samples that most closely match what you're looking to build (live tours, case studies, etc.) Do you need localized or multi-lingual support? Is universal (508) accessibility a requirement? What other specifics should they be able to handle?
- How do they support what they build?
As I mentioned previously, you have a responsibility to maintain what you have built, especially if it's on the public Internet. How does your prospective partner support the products they build? Do they provide hosting? If so, what are their backup strategies? How do they handle disaster recovery?
- How do they ensure a secure product?
Software vulnerabilities can't be avoided. How will your partner minimize the risk as they build? How will they protect your product once it's deployed? Do they monitor the CVE database and proactively apply security patches and other mitigations?
Don't be afraid to ask questions!
I've essentially scratched the surface with these concerns. As you think about them, you'll undoubtedly find that each question leads to others. Let the conversation take you places. The more you discuss these items with a software development partner, the more you'll realize you want to know. Don't be afraid to ask them questions and take notes.
From the software development partner side of things, Fynydd would love for a prospective client to ask questions like these. We're excited to share information about our company and how we can help bring your ideas to life and be a part of your success. We build great apps because we love doing it.
Article last updated on 4/28/2018