March Code

HowtoChooseaSoftwareDevelopmentCompany:10Criteria

10 proven criteria for choosing a software development company, from portfolio and tech stack to the contract and post-launch support. Plus a checklist, red flags and common mistakes.

How to Choose a Software Development Company: 10 Criteria
Eugene OlshevskyEugene OlshevskyCTO and co-founder
15 min read

Choosing a software development company is a decision you will live with for 2-5 years. A good partner saves you time and money. A bad one leaves behind technical debt that ends up costing more than the project itself. Industry data suggests that 37% of IT projects fail because the wrong vendor was chosen, not because of technical problems.

This article gives you 10 specific criteria we recommend for evaluating development partners. Not abstract advice like “check their reputation”, but concrete questions, metrics and red flags. Plus a checklist for the final decision.

10 criteria for choosing a software development company

1
A relevant portfolio. What matters is not the number of projects but how close they are to your task. Need a CRM? Look for a company that has built CRMs. Need a marketplace? Look for marketplace experience. A portfolio of 50 landing pages doesn't mean the company can handle a complex SaaS product

What to check: open 3-5 projects from the portfolio and see whether they still work (30% of portfolio projects on the market are dead). Run them through Google PageSpeed Insights. A score of 90+ means the technical side is in order. If it's 40-60, think twice.

2
Tech stack. The stack should fit your task. For web applications in 2026: React/Next.js or Vue/Nuxt on the frontend, Node.js/Python/Go on the backend, PostgreSQL/MongoDB for databases. For mobile: Flutter or React Native (cross-platform), Swift/Kotlin (native). If a company proposes jQuery and PHP without a framework, it's stuck in 2015

Red flag: a company that “works with everything”: React, Angular, Vue, PHP, Python, Java, Go, C#, plus WordPress. A team of 10 people can't be equally good at 8 stacks. Narrow specialization is a sign of expertise.

3
Development process. Ask how the work is organized. Agile/Scrum with two-week sprints is the industry standard. What matters is not a formal “we do Scrum” but the specifics: how often you get demos, how the backlog is managed, how tasks are prioritized, what happens when the scope changes

A good process includes regular demos (every 1-2 weeks), access to the task tracker (Jira, YouTrack, Linear), weekly progress reports, transparent time tracking (if you work on T&M), and code review and testing built into the process.

Tip

Ask the company to show you a real board in their task tracker (with client names hidden). It tells you more about their process than any sales deck.

4
Communication. The most underrated criterion. 80% of project problems are communication problems, not code problems. Test it during presales: how fast they reply (the norm is by the end of the business day), how clearly they explain technical things, whether they ask clarifying questions (a good sign) or give you an estimate right away (a bad sign)

Red flag: during presales you talk to one person (a salesperson), and once the contract is signed you're handed over to someone else (an account manager) who knows nothing about the project. Or worse, to a developer who doesn't speak your language and communicates through Google Translate.

5
Contract and legal guarantees. No contract, no guarantees. Check whether the source code and the rights to it are transferred to you (they should be), whether there's an NDA (if the project involves confidential data), whether there's a warranty period (1-3 months is normal), and how responsibility for deadlines and budget is defined

There are two pricing models. Fixed price (one price for the whole project) works when the scope is defined and unlikely to change. Time & Material (you pay for hours) works when the project is iterative and the requirements will evolve. Fixed price doesn't mean cheaper: the vendor builds the risks into the price (usually +20-30%).

6
A realistic estimate. If a company gives you an exact estimate after a 30-minute call, that's a red flag. The normal process: initial consultation (30-60 min) → rough range (±30-50%) → detailed specification (1-2 weeks) → accurate estimate (±10-15%). A vendor who says “$25K, done in 3 months” without working through the details is either naive or misleading you

The rule of three estimates: request quotes from 3-5 companies. Drop the cheapest (they cut corners on quality or misunderstood the task) and the most expensive (they overestimate or pad the price). Choose from the middle.

7
Reviews and references. Not the testimonials on their website (marketers write those), but real client contacts. Ask for 2-3 contacts, call them and ask: did the project stay on time and on budget, how were problems handled (there are always problems), did they have to switch vendors after launch, would they hire this company again

Other sources: the company's Clutch.co profile, ratings on industry platforms such as GoodFirms, and public case studies with real numbers.

8
The project team. Not the company “as a whole” but the specific people who will work on your project. Ask who the tech lead will be, how many developers there are, whether there's a dedicated QA engineer, whether there's a designer or only developers. The ideal minimal team: PM + tech lead + 1-2 developers + QA

Red flag: “a team of 15 people will work on your project” for a $15K project. That means each of them will spend 2 hours a week on it, not that 15 people will work on it full-time.

9
Post-launch and support. Development is 50% of the project. The other 50% is support, improvements and scaling. Ask: is there an SLA (response time for bugs), how much support costs, who will maintain the project after launch (the same people or a different team), how knowledge transfer works (documentation, code review, instructions)
10
Red flags: when to run. A guarantee of “100% on time and on budget”: impossible, because development always involves uncertainty. 100% prepayment: the norm is 30-50% upfront and the rest by milestones. No test task or pilot project: you have no way to judge quality before signing a big contract. A company registered 2 months ago that already calls itself a “market leader”

Checklist for choosing a development company

Print it out and use it to evaluate each candidate.

Portfolio and expertise

[ ] 3+ projects similar to my task

[ ] Portfolio projects are live and accessible

[ ] PageSpeed score above 80 for portfolio projects

[ ] The stack fits my task

[ ] Narrow specialization (not “we do everything”)

Process and communication

[ ] A clear development process (Scrum/Kanban)

[ ] Regular demos (every 1-2 weeks)

[ ] Access to the task tracker

[ ] Replies within the business day

[ ] They ask clarifying questions (instead of naming a price right away)

Contract and money

[ ] Transfer of the source code and rights

[ ] Warranty period (1-3 months)

[ ] Staged payments (no 100% prepayment)

[ ] Transparent pricing (fixed price, or T&M with reports)

[ ] An NDA if needed

Team and support

[ ] I know the specific people who will do the work

[ ] There's a dedicated QA engineer

[ ] There's a support SLA

[ ] There's documentation and knowledge transfer

[ ] I called 1-2 clients and they recommend the company

Types of development partners: who fits your task

Freelancer

Rate: typically around $30-100 per hour. Good for: small tasks (a landing page, an improvement, an integration), tasks with a clear spec, budgets under $10K.

Pros: cheap, quick start. Cons: no backup (if they get sick, the project stalls), no process (quality depends on their mood), no real legal guarantees (a freelance contract offers weak protection), no support after the project.

Small studio (5-15 people)

Rate: typically around $50-150 per hour. Good for: mid-sized projects ($10K-100K), startup MVPs, corporate websites and applications.

Pros: there is a process, but a flexible one (no bureaucracy), the team knows each other, the CEO or CTO is often personally involved in the project. Cons: limited capacity (1-3 projects in parallel), a narrow stack (which can also be a plus).

Large company (50+ people)

Rate: typically around $100-250 per hour. Good for: large projects ($100K+), enterprise solutions, long-term contracts.

Pros: formal processes and SLAs, a wide pool of specialists, stability. Cons: bureaucracy (an approval for every little thing), managers come and go (turnover), your project is one of 20-30 running in parallel.

The best partner is neither the biggest nor the cheapest. It's the one for whom your project matters: small enough to give it real attention, and experienced enough to avoid rookie mistakes.

5 mistakes when choosing a development company

Mistake 1: Choosing on price

The cheapest vendor turns out to be the most expensive. Saving $6K on development turns into losing $15K on rework when the project is delivered with bugs and unreadable code. Look for the right balance of price, quality and process, not the lowest price.

Mistake 2: Not checking the portfolio

Nice screenshots on a website ≠ real projects. Open the sites from the portfolio. Check their speed, whether they work at all, the mobile version. If half the projects are down or throw errors, that tells you something.

Mistake 3: Starting without a specification

“Let's get started and figure out the spec as we go” is a recipe for a budget disaster. Without a detailed requirements specification there's no way to estimate the cost, the timeline or the expectations. Projects without a spec end up 30-50% more expensive.

Mistake 4: Not getting involved

“I paid, so let them do the work.” No. Development is a joint effort. If you skip demos, don't give feedback on mockups and don't review interim results, you'll get a product that technically works but doesn't solve your business problem.

Mistake 5: Not thinking about post-launch

Development is 50% of the story. After launch you need support, improvements and scaling. If the company doesn't offer support, or prices it unreasonably, you'll end up with a nice product that starts falling apart six months later.

How we work at March Code

We're a studio of 10+ specialists and take on projects from $9,900. Our typical client is a CEO or CTO who needs a reliable custom software development partner, not “a website in 3 days”.

Our process: a free consultation (30 min) → a proposal with a price range → a detailed specification (paid separately and credited toward the project) → development in 2-week sprints with demos → launch → 30 days of warranty support → an SLA for ongoing support.

An example from our work: the ProControl case, a production management system we built in 4 months, from business process analysis to launch in production.

50+
projects completed
92%
of clients come back
30 days
of warranty support

FAQ

How many companies should I consider?

3-5 is enough. Fewer gives you too little data to compare. More drags the selection out for months. Request proposals from 5 companies, hold 3 detailed calls, pick a finalist. The whole process takes 2-3 weeks. Don't spend more time choosing than the first development sprint would take.

Fixed price or Time & Material: which should I choose?

Fixed price works when the scope is defined, the spec is ready and changes are unlikely. Example: a landing page, a corporate website with a clear design. Time & Material works when the project is iterative and the requirements will evolve. Example: a startup MVP, a CRM for a complex business process. A hybrid option: the first stage (spec + design) at a fixed price, then development on T&M with a monthly budget. This lowers the risk for both sides.

How do I keep tabs on the vendor during development?

Three tools: 1) a demo every 2 weeks, so you see real progress rather than abstract reports; 2) access to the task tracker, so you can see who is working on what and how much time it takes; 3) access to the repository (GitHub/GitLab), so your technical person can check the code quality. If the vendor refuses even one of the three, that's a red flag.

What should I do if the vendor misses deadlines?

First, find out why. If the scope grew (you added features), that's not the vendor's fault. If the cause is how the work is organized, put it on record and agree on a concrete recovery plan: not “we'll try to go faster” but “here are the tasks, here are the dates, here's who is responsible”. If the delays are systematic (3+ sprints in a row), that's grounds for ending the contract. This is why staged payments matter: you never overpay for work that wasn't done.

Do I need a technical person on my side?

It's strongly recommended for projects over $30K. This can be an in-house CTO, an outside technical consultant or CTO as a Service. Their job: review architecture decisions, do code review, control quality and take part in acceptance. A consultant only needs a few hours a week, which is cheap insurance against code that looks good but doesn't work.

Can I switch vendors in the middle of a project?

Technically, yes. In practice, it's painful and expensive. A new vendor will spend 2-4 weeks getting to grips with someone else's code (and will tell you that “it all needs to be rewritten”, which is an exaggeration 70% of the time). Switching costs 20-40% of the remaining project budget. To reduce the risk: make sure the contract covers the handover of code and documentation, insist on clean, commented code, and never pay 100% upfront.

About the authors

The March Code team

We're a software studio with years of commercial development experience in Russian and international markets. We help businesses go digital: we build web and mobile apps, automate routine work and bring AI in where it's actually needed.

Over that time we've delivered 20+ projects, from startup MVPs to complex SaaS platforms and enterprise solutions. Our clients include hospitality, e-commerce, logistics and education. For us, every project is not just code but a product that has to deliver results.

20+ delivered projects13+ years of founder experienceNDA on requestMore about the company →

An architect reviews your spec or idea in 48 hours

Free

Prices are indicative and not a binding offer.

We'll point out the risks, unnecessary features and a realistic budget range before you sign with a vendor.

Send your spec on Telegram, no form