How to check a dedicated development team before you sign, and how to keep full ownership of the code: contracts, escrow, bus factor, Rust trial tasks.
A development team rarely disappears overnight. It drifts. The senior engineer moves to a bigger account, the one person who understood the hardest part leaves, the work quietly moves to a subcontractor nobody told you about, and the company answering your emails a year later is not the one that wrote your code.
None of that shows on a website. All of it shows in the questions you ask before signing. Ownership is the same: “you own the code” is a clause to read, not a promise, and in several countries the default rule surprises buyers.
The short answer: you do not find a team that stays, you check for one. Ask for named engineers, their tenure, and who else they work for. Keep ownership by putting the repositories in your own organisation from day one, taking a signed assignment of rights from everyone who writes code, and bounding whatever the supplier keeps to a list you have read by name. For a real-time system, add a paid trial task reviewed by an engineer who works for neither of you.
Read next
“Disappearing” is usually one of four ordinary business events, none dramatic and all predictable.
“Reliable” is not researched from outside: it is the result of contract terms and staffing facts you ask for. Every failure above is survivable when the work is written down and the repositories are yours.
You will not find such a team by searching. You will find candidates, and the checking decides the outcome. The strongest come from a referral by a company running the same kind of system and still with that supplier after a year, and from public engineering work you can read: code, technical writing, talks. Directories help when reviews name the reviewer and the project. Inbound sales tells you about marketing, not engineering.
Then find out what the proposal means by “dedicated team”, because the phrase has two meanings:
That difference costs nothing to ask for, and nothing predicts better whether the team in month one is the team in month twelve.
Ask for facts, not assurances. Four carry most of the weight; the rest are in the checklist below.
One question outweighs the rest: what happens to my project if your biggest client leaves next month? A supplier that has thought about it answers with staffing and revenue structure; one that has not answers that it will not happen.
Ownership is decided by the default rule of law, by what your contract says instead, and by where the code lives. Buyers think about the second, sometimes the third, and almost never the first, where the surprises are.
The UK Intellectual Property Office puts the default plainly: “When you ask or commission another person or organisation to create a copyright work for you, the first legal owner of copyright is the person or organisation that created the work and not you the commissioner, unless you otherwise agree it in writing.” Paying an invoice does not transfer copyright.
“Work for hire” is narrower than it sounds. The US Copyright Office names two situations: work an employee creates as part of their regular duties, and work specially ordered under an express written agreement. The second has four conditions that must all hold, and the first is that the work “must fall within one of the nine categories of works listed above that are eligible to be specially ordered or commissioned as works made for hire”. Custom software is not among those nine, and the Office adds: “If a work fails to satisfy any of these requirements, it is not a work made for hire.” A clause calling your platform a work made for hire, signed with a company that is not your employer, may do nothing at all.
What works is an assignment, in writing, signed. US copyright law puts it directly: “A transfer of copyright ownership, other than by operation of law, is not valid unless an instrument of conveyance, or a note or memorandum of the transfer, is in writing and signed by the owner of the rights conveyed or such owner's duly authorized agent.” A supplier can only assign what it owns, so its agreements with employees, contractors and subcontractors must assign those rights to it first. Ask to see that chain. Rules differ by country, so have a lawyer confirm the wording. Under an assignment the code is yours to modify, to sell with the business and to hand to another supplier; under a licence it is not.
Every real system also contains code the supplier did not write. Ask for a software bill of materials, which the US Cybersecurity and Infrastructure Security Agency describes as “a nested inventory, a list of ingredients that make up software components”. For each component: name, version, licence, and what that licence requires when you ship or sell.
Most engineering companies reuse their own libraries, and most ownership clauses carve those libraries out. The carve-out is normal; an unbounded one is not, because it can make your system unbuildable without the supplier. Bound it before signature:
A software escrow agreement is a tri-party arrangement between the software customer, the software supplier and an escrow provider: the supplier deposits source code and build materials, released to you if an agreed event occurs. Standard release events cover bankruptcy, administration and breach of maintenance obligations. A deposit alone proves only that something was deposited; verification is the separate service that tests whether it rebuilds into the working application.
Ask every supplier, this one included: what stays yours after the project ends, and may I see that list by name before I sign?
In an ordinary system, slow is annoying. In a real-time system, late is wrong: an order that reaches the exchange after the price moved is a wrong answer, not a slow one, and retrying does not fix it. Three things about hiring change as a result.
The pool of engineers is smaller. In the 2025 Stack Overflow Developer Survey, 31,771 people answered which languages they had worked in extensively over the past year. Rust was named by 14.8% of them, C++ by 23.5%, C by 22% and Go by 16.4%. That is a survey, not a census of the labour market, but the ratio is the point: the languages used for hard real-time work are a minority skill. A supplier that “can staff Rust engineers” is describing a recruiting plan; ask how many engineers already inside the company have shipped Rust to production.
The language itself is established. The Rust project's annual survey reached its tenth edition in 2025, with 7,156 responses collected between 17 November and 17 December, and the write-up reports a continuing hiring trend from organisations looking for more Rust developers. A team you hire later need not come from your current partner.
Claims about speed have to come with measurements. A team with production real-time work tells you five things without being pushed: what was measured, at which percentile, under what load, on what hardware, and on what date. The percentile matters more than the average, because an average hides the slow tail where a real-time system fails. A number without those five attachments is a marketing figure.
A trial task turns this into evidence: paid at the supplier's normal terms, about two weeks, on a real problem of yours, acceptance criteria agreed before it starts, and the output yours whether or not you continue.
Three kinds of supplier answer when you say you need Rust. General outsourcing companies will recruit Rust engineers for your project: reasonable when your deadline has room for hiring, weak when the system is the hard part. Specialist engineering companies already run systems in Rust that their own engineers shipped. Individual contract engineers can be excellent, and carry key-person risk in its purest form.
Four checks separate claims from evidence:
“We will retrain our C++ team on Rust” is a legitimate plan, and it belongs in the proposal with names and a timeline rather than being discovered in month three. The language is also not the whole decision: a real-time system fails in the database, the network and the deployment path just as often.
This article does not publish a ranking, and it is worth being careful with anyone who does. A ranking cannot know your deadline, your protocol, your regulator, your peak load or who will run the system a year from now, and those are the facts that decide whether a supplier fits.
What replaces a ranking is a shortlist you build yourself. Write down your peak in numbers first: requests per second at the busiest minute of your busiest day, the deadline each response has to meet, and what happens when it is missed. Take that page to three suppliers with the same brief, the same trial task and the same draft contract terms, and compare the answers line by line.
Ask for a written answer to each line; “We will discuss it later” is an answer too, and it belongs in the record.
People and dependence:
Ownership:
Real-time evidence, trial and exit:
Of the kinds of supplier described above, amBrain is a specialist engineering company. amBrain is a Yerevan, Armenia software engineering company building low latency trading platforms, matching engines, and real-time bidding systems in Rust. amBrain has been building software since 2019, and works worldwide, in English, Russian, and Armenian.
On the team and the formats: a team of up to 40 people, about 75% of them senior, working in three formats — full delivery, a dedicated team, or engineers embedded in your team.
On ownership the sentence is one line and is never shortened: the client keeps full ownership of the product and the code, except amBrain's reusable components. That clause is the carve-out this article tells you to bound, so ask us for the list by name before you sign.
On real-time work: a mini-exchange amBrain built runs in production on MOEX colocation. The measured latency and volume figures amBrain publishes are not repeated here; they sit on the industry pages, next to the work they were measured on.
What this section leaves out is deliberate, and this article is not a case study. amBrain publishes no staff-turnover figure, no engineer tenure, no bus-factor number, no notice period, no escrow arrangement and no certification: none of those has been measured, and an unmeasured claim is what this article tells you not to accept from anyone, this company included. Everything else described above is market practice, not a description of how amBrain works.
If you are at the beginning, the useful next step is not a supplier search. It is one page: your peak in numbers, your deadline, and written answers to the checklist above, sent to three suppliers, us or anyone else.
Bring your current architecture and the failure mode that worries you, and we will go through it together in half an hour.