Short answer
You recognise a good software firm not from its list of technologies but from how it defines your work, what its quote states clearly and how concretely it answers your questions. Talk to at least two candidates on the same written scope and compare their quotes on scope, deliverables and handover.
Look at how they define the work
A useful discovery meeting covers target users, the core workflow, existing data and acceptance criteria. Comparing prices is difficult without the same written scope.
It is a good sign when the firm asks about your process, users and constraints before describing its own solution. A team that proposes technology and a price without listening may have to redefine the work later.
What a proposal should include
Deliverables, exclusions, testing responsibilities, source and account ownership, maintenance terms and change pricing should be explicit. Payment milestones can be tied to observable deliveries.
What a quote excludes matters as much as what it includes. Check whether testing, data migration, go-live support, training and a first bug-fix period are written down. A task left vague can turn into an extra cost later.
Read references in context
Look for similar constraints rather than similar screens. Ask how migration, integration and launch were managed. Technology logos or client names alone do not demonstrate delivery quality.
In a reference call, ask: Was the schedule kept? How were scope changes handled? How did the team behave when a problem appeared after delivery? A good reference tells you about the way of working, not just satisfaction. For a team without a publishable reference yet, a technical example showing how it thinks about a similar problem is also valuable evidence.
Questions for a meeting
What defines a successful first release? What happens when requirements are missing? Who owns code and service accounts? How does handover work if the team changes? Compare concrete answers in a short assessment table.
Read the answers by whether they are backed by a concrete example rather than a one-word "yes". Instead of "we test", can they explain which flow they will test, with which data and with whose acceptance?
Candidate comparison table
After the conversations, fill in the table below for each candidate. It is not a scoring system but a note-taking aid that makes differences visible.
A practical evaluation exercise
Before meeting suppliers, share the same one-page brief with each: user, starting data, main action and acceptance condition. Ask which delivery will make that workflow usable. Clarify testing, migration and maintenance omitted from the quote; comparing headline prices alone can hide different scopes.
This exercise makes the assumptions behind the price visible. If two candidates assumed different scopes, clarify it together in a meeting, then ask both for an updated written quote.
Frequently asked questions
The questions we hear most often when companies choose a software firm.
How many firms should I talk to?
Two or three candidates are enough for most projects. What matters is giving all of them the same written summary of your need so that you can compare answers and quotes on the same footing.
How do I choose between a small team and a large firm?
Size is not a measure of quality. Small teams can decide quickly and give direct attention; large firms may have stronger processes and backup staff. Depending on how critical your project is, look at the handover plan, documentation and continuity if people change.
How should I structure payment?
Tying payment stages to observable deliverables is a common approach, for example a working flow or an accepted release. Ask for what each stage corresponds to in the quote.
Should I decide between off-the-shelf and custom software together with the firm?
Think about this independently first. Off-the-shelf or custom software? offers a comparison framework; make sure the firm is not steering you only towards the solution it sells.