Finding the right custom software development firm for your project is a tough job. Even a thorough RFP process won’t save you if you’re not looking for the right things.
Software projects are notorious for being late, over budget, and frustrating. Why? Making useful, valuable software products takes a lot more than technical know-how. Your team also needs good project management, experienced product development, great people skills, and more.
So how do you find a firm that has all these skills? And understands your industry? And works well with your management structure? And offers the kind of support you need down the road?
Whether you’re writing a software development RFP, calling a list of recommended firms, or doing research for your procurement team, the principles are the same. The most important thing you can do is ask the right questions. And that means asking about the company first. The details of your project can come later.
Evaluate the Software Firm First
I’ve been working in custom software development consulting at Atomic for 15 years and have helped hundreds of companies evaluate us as a potential development partner. Many are entirely focused on their project and want us to lay out a detailed approach—based on very limited information.
Before you ask for this kind of information, I recommend evaluating the firms themselves. Ask the questions below (and in subsequent posts) and choose your partner based on the strength and fit of their response. Then work with that partner to create a detailed engagement plan.
Were I in your shoes, there are four things I would look for in a software development partner:
- Longevity: A company that is going to be around to support me in the years to come
- Great People: Skilled, qualified people assigned to my project
- Experience: Relevant, organizational experience solving a problem like mine
- Engagement Management Process: A process and tools that allow me to make decisions on scope and budget throughout the project
This post focuses on longevity, but in the coming weeks, I’ll discuss the other areas, as well. The entire series will give you tools and insider information from the perspective of a consultancy, with a goal of helping you evaluate potential partners at a more foundational level and eliminate wasted time sifting through unnecessary details early in the evaluation process. Please feel free to directly use this content in your own process.
Below, I’ve outlined the questions I would ask each of the firms I’m evaluating. I’ve also included my experienced perspective on what kind of answers I’d like to see.
I want to pick a partner that is going to be around for years to come. I want my partner to be able to help with future work and maintenance if necessary.
I’m going to be investing time into this relationship. After my first project, my partner will know my business, and we will have a strong working relationship. I want the investment in this relationship to pay dividends when I work with my partner on other projects.
To get a better idea of a potential partner’s longevity, I’ll ask about the following criteria.
1. How many years have you been in business?
This question helps me gauge my interpretation of other questions related to longevity. A younger company is riskier to work with when it comes to longevity. A company that has been in business for many years has already demonstrated longevity, so I can ask additional questions about the work they’ve done to ensure continued longevity.
2. How has your company grown in the last 10 years (or applicable time frame)?
I’m interested to know if my potential partner has demonstrated the ability to mature and grow so they can stay competitive in the market and serve their clients better. Evidence of past growth is a strong indicator of continued growth and future market relevance. I’m equally interested in learning about growth in client-facing services and skills and internal, operational processes.
Growth in people shows that the company is able to attract and retain people. I want to see healthy growth, though. I believe sustained organic growth over 30% in a services company is a smell. Scaling a professional services business is hard. A professional services company needs to be selective in hiring and intentional about on-boarding and training. Growing too fast can result in dilution of culture and attrition of people.
3. What is your company’s strategic direction?
I might expand on this question by asking, “Will you stay focused on consulting? What services do you plan on providing in the next five years? Will you be growing in size?”
I’m interested to know if my potential partner is going to stay focused on consulting and custom software development. It’s not uncommon for service companies to try and transition to becoming a product company or extend their value chain into other services like strategic consulting or managed services.
Knowing a company’s plans for new services helps me know if I might be able to work with them on additional needs I have. It’s valuable to me to have fewer partners that can offer a wider set of services related to a common need.
There’s a balance between having a wide value chain and losing focus, though. A company’s growth plan for new services will reveal how focused they are and if there might be risks related to shifting the focus too far from their core.
Plans for growth in size will help me know if the company will likely be a stronger player in the market or if they might be taking risks due to accelerated growth. Growing too fast can lead to poor hires, poor culture, and a distracted management and leadership team. It’s extremely hard to scale a professional services firm, and it’s a bad sign if your potential partner is trying to grow quickly.
4. What is your company’s ownership structure, and how is your company planning for succession of owners and key people?
This question helps me understand if there is risk related to the succession of key people.
Big companies care about this question and commonly include terms in their master services agreements that put warranties or restrictions on significant changes in ownership or control.
Many companies do a poor job of succession planning, but changes in ownership or key people can drive significant changes. For example, what if your competitor acquires your software development partner? What if your partner’s owner sells to private equity and key people start leaving because they are afraid of a culture change?
I want a company to demonstrate a plan for ownership succession that will preserve its culture and values. I want to hear how a company is investing in a talent pipeline for internally hiring future managers and leaders.
5. Over the past three years, how has your revenue broken down by industry?
This question will help me see if a company is overly weighted in a small set of industries.
I believe strong consultancies work in a broad set of industries. Serving many industries reduces financial risk stemming from demand volatility in any given industry.
I’m not too concerned if I don’t see experience in my industry, as long as the company has worked on a project of similar complexity. Innovation can come from applying lessons learned in other industries to my problem or opportunity.
6. Over the past three years, how many clients did you serve per year, and what percentage of revenue was your top client?
This question, in addition to my next question about historical revenue, helps me see if a company is too dependent on a single client or small set of clients. Being dependent on too few clients can represent financial risk if those clients disengage. As a compounding risk, such dependencies usually mean that a company doesn’t have a fined-tuned process for gaining new work.
7. What is your company’s historical revenue for the last 10 years (or applicable term)?
Seeing a company’s history of annual revenue shows me two important things:
- Annual revenue and number of clients per year (from above) helps me understand the size of the company and likelihood of an unhealthy client dependency. I can see if there is financial risk from losing a client suddenly. For example, if a small company working with three clients loses a client suddenly, the impact can be very high.
- I can see if the historical revenue is smooth, has an interesting spike or dip, or has a sawtooth pattern. I like to see smooth revenue patterns, as they usually mean intentional, disciplined growth. A spike or dip can be a conversation starter that might lead to me learning more about how a company handled an interesting situation or opportunity. A sawtooth pattern is a bad sign for me. Sawtooth patterns can imply things like staffing up quickly to win a project or being stuck in a vicious cycle of growth and attrition.
8. What contingencies do you have in place to manage cash flow issues?
It’s a sign of maturity in risk management for a company to have contingencies in place to navigate short-term cash flow issues.
I like to hear that there is a process in place for using cash reserves, a line of credit, partner capital calls, etc. I’m not interested in knowing absolute dollar figures, rather a process and source of cash framed as being able to support the company at X% of team utilization for Y months.
Choosing the Right Software Development Partner
This is the first post in a series on choosing a software partner. In the next post, we will be taking a look at how to evaluate whether you’ll be working with great people.
Questions? Disagreements? Please leave a comment below.