Blog

By

How to Hire a Software Development Company: What to Settle After You Choose

October 31, 2026
Conference table after a meeting with an open printed agreement, a pen and two coffee cups

Key takeaways:

  • Unless the agreement says otherwise, the developer keeps the intellectual property. WIPO is explicit that paying for custom software does not by itself transfer ownership.
  • Deloitte's 2024 survey of more than 500 executives found only 25% seeing lower vendor costs or better service quality, and 70% saying their own vendor management function is not fully mature.
  • Cure periods, notice periods and acceptance-failure counts are numbers you negotiate. Two real agreements filed with the SEC handle them completely differently.
  • Own the repository, the cloud account and the app-store accounts yourself from day one, and give the agency scoped access to each.

Most guidance on how to hire a software development company stops at the shortlist. You get the questions to ask, the portfolio review, the reference calls, and then nothing, as though the hard part ends when you pick a name.

The hard part starts there. Knowing how to hire a software development company really means knowing what to settle in the four weeks after you choose: what the signature actually covers, who owns the code and from what moment, what happens when a deliverable fails its test, and whether you can leave.

This guide is about that stage, and it assumes the evaluation is behind you. Still choosing? Start with the 12 questions that belong to the shortlist, because nothing below repeats them.

What the Signature Actually Covers

A master agreement rarely describes your project. It sets the terms, and the work itself lives in a statement of work or an exhibit attached to it, which means the document everyone celebrates signing is often not the one that defines what you are buying.

That structure is standard and it is also where ambiguity hides. In one form services agreement filed with the SEC as an S-1 exhibit, the work is defined entirely in "succeeding Exhibits with project name, description and project cost," each separately signed. The master agreement itself names no deliverable at all.

So read the exhibit, not the agreement, and judge it on whether a stranger could test it. "A reporting module" is not a deliverable. "A dashboard showing the five metrics listed in Appendix A, filterable by date range, loading in under two seconds on the reference dataset" is one, because somebody can tell you whether it is finished.

Name the people as well as the work. Which engineers are assigned, and whether they can be swapped without your agreement, is the difference between continuity and a quarterly handover, and a firm that publishes its team is easier to hold to that than one that does not.

Write down what you owe them too, with dates. The same filed agreement makes the client responsible for supplying technical data, programs, files, documentation and test data, and a delay you cause is not a delay the agency can be held to.

Who Owns the Code, and From What Moment

This is the clause people assume is settled and most often is not. The World Intellectual Property Organization states the default plainly: the software developer automatically retains IP ownership unless a software development agreement assigns it to the client.

WIPO notes that ventures frequently assume paying for custom software grants them full ownership of the code. It does not. There are four distinct arrangements, assignment, licensing, work for hire and joint ownership, and only one of them gives you what most buyers think they are getting.

The detail that matters more than the model is when ownership transfers. WIPO recommends specifying the exact moment in writing: on payment, on delivery or on signature. That single choice decides what you own if the engagement ends halfway.

Stop the same engagement at the same point three times and the clause decides the rest.

Three IP assignment moments against one halted engagement, and what the client holds

The two SEC filings we read answer it in opposite ways. The S-1 form agreement assigns everything to the client immediately and irrevocably, with no condition attached, while the second, a filed development agreement attached to an 8-K, names source code as a deliverable handed over with the software. Agreements written from the developer's side commonly condition assignment on payment in full, which is a reasonable position and a very different outcome for you in a dispute.

Two further pieces belong in the same clause. Background IP is whatever tools, libraries and internal frameworks the agency owned before your project, and you will not get those: expect a carve-out and a license instead. Open-source components need an agreed list of acceptable licenses up front, because WIPO's advice to list them is cheaper than discovering a copyleft dependency in your core during due diligence.

AGREEMENT REVIEW

Read the exhibit before you sign

VAULT will read your agreement from the buyer's side and tell you which clauses we would want changed before signing.

Contact Us

Acceptance, and What Happens When It Fails

Here is the clause that separates a document you can enforce from one you cannot, and the comparison is stark.

ClauseStartup form agreement (S-1 exhibit)Delaware company's filed agreement (8-K exhibit)
Acceptance testingNo clause at allTested against a mutually agreed acceptance test plan
Repeat testingNot addressedRepeated at reasonable intervals until criteria are met
Failure remedyNot addressedAfter three failures, client may terminate and the developer refunds fees within 14 days
Termination for cause30-day cure period after written noticeImmediate for unremediable breach, 30-day cure otherwise
Termination for convenienceAbsent entirelyEither party, on 30 calendar days' written notice
Source code as a deliverableNot namedNamed explicitly, handed over with the software
Confidentiality survival2 years2 years

Both are real agreements filed with the US Securities and Exchange Commission, and neither is a market standard. The second is governed by Malaysian law, so read it for mechanics rather than for US legal effect.

What the contrast proves is that these terms are choices, not boilerplate. One document gives you a tested, refundable, exitable engagement. The other gives you a 30-day cure period and no way out if the work is simply disappointing rather than breached.

So ask for three things specifically: a written acceptance test plan, a number of permitted failures before you can walk, and a deadline for the refund if you do. A firm that pushes back on all three is telling you something useful.

Change Orders, Agreed Before You Need One

Every project changes. The question is whether changing it is a conversation or an argument, and that is decided by paperwork nobody reads at kickoff.

Three mechanics make the difference. Who can authorize a change, which the S-1 form agreement handles by having each side name a project manager responsible for authorizing and executing change orders. How fast an estimate comes back, so a two-day decision does not wait two weeks. And what rate applies, since change work is often quoted above the base rate.

Insist that changes are written. The alternative is a verbal agreement in a status call that one side remembers as a commitment and the other remembers as an exploration, which is the most common source of invoice disputes on the projects we inherit.

The same discipline carries into how the work is run day to day, and the practices that distinguish a quality outsourced team are mostly these ones written down rather than assumed.

Pick the Engagement Model After the Firm, Not Before

Fixed price, time and materials, and a dedicated team are three different risk allocations, and the right one depends on how well defined the work is rather than on which sounds safer.

Fixed price suits work you can specify completely, and it prices the agency's risk into your number. Time and materials suits work that will change, and it moves that risk to you. A dedicated team suits continuing work where you want capacity rather than a deliverable, which is closer to staff augmentation than to a project.

The trap is fixing too much at once. You can fix the scope, the date or the budget, and you can usually fix two, but fixing all three means something gives silently, and what gives is quality.

Whichever you pick, settle support separately. Both filed agreements we read put ongoing updates and maintenance outside the development contract, one of them stating that support, maintenance, updates and new releases "shall be contracted under a separate agreement." That is normal and it means day 91 is a commercial conversation you should have on day one.

The Day-One Access Checklist

Ownership on paper is not ownership in practice. The accounts matter as much as the clause, and this is where engagements go wrong in a way the contract does not catch.

Both of those can be true at once, which is the whole problem.

A contract assigning IP against a production cloud account held by the agency

A founder on Reddit described having a contract stating the app and the IP belonged to the company, plus owner-level access to the GitHub repository, and then discovering the production cloud project had been created inside the agency's own organization. Moving it was quoted as separate billable work. That is anecdotal, and the replies from other developers were unanimous that the client should hold the cloud account and grant the agency scoped access instead.

What you holdWhat the agency getsWhy it matters
Repository organizationScoped write accessYour code stays reachable if the relationship ends
Cloud account and billingScoped roles on your projectNobody else can switch off your production system
Domain and DNSDelegated records as neededThe site stays yours
App store developer accountsUpload and release permissionsPublishing does not depend on them
Analytics and error reportingMember accessYou keep the history

Set all five up before kickoff rather than after, because retrofitting them is the awkward conversation this list exists to avoid. The other half of day one is human: one named decision-maker on each side, with an agreed response time, so the project does not stall waiting for an answer nobody owns.

DAY-ONE ACCESS

Settle ownership before the first invoice

VAULT will check who holds the repository, cloud account and domain from day one, and what handover your exit clause actually requires.

Book A Call

The First 30 Days

Deloitte's 2024 global outsourcing survey of more than 500 executives puts the problem on the buyer's side of the table rather than the vendor's. Only 25% of executives reported seeing reductions in vendor service costs or improvements in service quality, and 70% said their own vendor management function is not fully mature. Deloitte's framing is that the maturity of internal governance and management capability is what limits the result.

That survey covers outsourcing broadly rather than software specifically, and the pattern matches what we see on software engagements. The first month is where the relationship is actually configured.

Week one is access, environments and a shared understanding of the problem. By the end of it the team should be able to run the application locally and deploy something trivial to a real environment, because that proves the pipeline exists.

Week two should produce the first working increment, however small. Not a design, not a plan: something deployed that you can click.

Week three is the one to watch, and the signals are behavioral rather than numeric. Demos should run on a deployed environment rather than slides. The agency should flag a risk before you notice it. Change requests should arrive in writing without you asking. And you should be able to clone the repository and build the application yourself, which is a handover rehearsal disguised as a sanity check.

Week four is the first honest re-forecast. If nothing in the estimate has moved after a month of real work, the estimate is not being maintained.

On iCopy, the leadership team spent several months assessing their options before choosing anyone, and the first thing the engagement produced was not code. It was a clickable prototype of the Nimbus platform, which iCopy then used to pre-sell its new service model before the product existed.

At VAULT our engagements tend to settle fastest when something like that exists before the build starts, because it means everyone argues about the same artifact instead of the same adjective. Their CEO, Bridgette Ferraro, suggested that any entrepreneur looking for a powerful ally in building their platform should look to VAULT and the team.

Write the Exit Before the First Invoice

The handover clause is the one nobody negotiates and everybody eventually needs. WIPO's advice on termination names three things and is worth memorizing: ask for the source code, the documentation and the passwords.

A startup employee on Reddit described inheriting an outsourced build where, nine months in, the agency would not grant repository access and instead offered to prepare an estimate for the handover work. The poster's objection was that nobody accounts for handover in a contract. One widely upvoted reply argued that the work was done and paid for, so handover was an overdue deliverable rather than a new project.

The most useful comment in that thread came from someone running an agency, and it complicates the picture honestly. An agency may legitimately hold base modules it reuses across clients, and open-source frameworks cannot be assigned to anyone. What a buyer can reasonably demand is the project code plus a defined license to everything else, which is a more precise ask than "give me everything."

Three kinds of code, and only one of them can be signed over.

Project code, reusable agency modules and open-source frameworks, and what to ask for each

So name handover as a deliverable with a deadline, not as a courtesy. Specify the repository, the documentation, the credentials, the infrastructure configuration and a defined support window afterward.

What makes that package usable is whether a new team can run the system from it without the old one, which is the standard we apply when moving a project between teams.

Escrow is worth considering if you have no in-house engineers, and it is only worth the fee if three things are specified: that buildable source is deposited rather than a compiled build, how often it is refreshed, and what the escrow agent verifies before release.

How to Hire a Software Development Company and Know It Worked

Whether you got the hire right shows up in five questions you should be able to answer without opening the contract. Who owns the code today, and from what moment. What happens if a deliverable fails its test twice. What notice either side has to give. Who authorizes a change. And what you would receive, by when, if you ended it tomorrow.

If any answer is "I would have to check," check now rather than during the disagreement that makes you look. The firm you just chose will answer all five readily if the agreement was written to be used rather than to be signed.

A short technical due diligence pass at the end of the first month is also worth the day it costs, because the cheapest time to find out the architecture is wrong is while the relationship is still new.

If you are weighing an agreement in front of you now, contact us. We will read it from the buyer's side and tell you which clauses we would want changed before signing.

FAQs

What should I check before I hire a software development team?

Once you have chosen the firm, how to hire a software development company comes down to five clauses: what the deliverable actually says, when IP ownership transfers, what happens when something fails acceptance, what notice either side must give, and what you receive on exit.

Those five decide what the engagement is worth if it goes well and what you are left with if it does not. The portfolio and the reference calls belong to the earlier stage.

Do I automatically own the code if I pay for it?

No. WIPO states that the developer retains ownership by default unless the agreement assigns it, and that assuming otherwise is a common and expensive mistake.

Even with an assignment clause, expect carve-outs for the agency's pre-existing libraries and for open-source components, which cannot be assigned at all. What you can require is full ownership of the project-specific code plus a clear license to the rest.

Is it better to hire a dedicated software development team or contract per project?

A dedicated team suits continuing work where the scope keeps evolving and you want capacity you can direct. A per-project contract suits a defined outcome with a clear finish line.

The practical test is whether you can specify what done looks like. If you can, buy the outcome; if you cannot, buy the capacity and keep a short notice period.

How long should the notice period be?

It is negotiable, and the filings show how much it varies. One agreement we read allows either side to terminate for convenience on 30 calendar days' notice; another has no convenience clause at all and permits termination only for cause after a 30-day cure period.

Thirty days is common. What matters more is that a convenience route exists, since without one your only exit is to allege a breach.

What are the signs an engagement is going wrong in month one?

Demos that only ever run on a laptop, risks you discover rather than get told about, change requests agreed verbally, and an estimate that has not moved despite four weeks of new information.

The sharpest single test is whether you can build and run the application yourself from the repository. If you cannot, you do not yet have what you are paying for, whatever the contract says.

Want a Second Read Before You Sign?

An agreement is easiest to improve in the week before signature and hardest in the month after. Contact us and we will go through yours clause by clause, from the side of the person paying for the work.

We read these as builders rather than lawyers, so take it as commercial review and not legal advice. For the legal effect of any clause, ask a solicitor or an attorney in the governing jurisdiction.

We're here to help
Do you have questions about our services or need help building a product?
Contact Us