Software takeover

Software takeover: taking back control of existing software

Has the vendor or freelancer left, does the agency no longer answer, or has your software stopped evolving because no one dares touch it? We establish what still holds up, what threatens operations, and what can change without interrupting your business.

In short

A software takeover means taking back control of software built by someone else: recovering access, understanding the code, the data and the hosting, securing production, then fixing it and evolving it. THE LEVEL CODE, a development studio in Lille, always starts with a costed code audit that states what can be kept, fixed or rewritten. Rewriting everything is rarely the best answer: a progressive takeover often is, and the code stays in your name.

By Romain Nivelle, President of The Level Code · Updated on

What is software takeover?

Taking over code means becoming responsible for software you did not write. The software is already running and supporting your business: this is not about starting from scratch, but about regaining the ability to run it, fix it and evolve it without risk. A takeover starts with access and a stocktake, continues with securing production, then moves on to changes delivered in small batches.

The term covers several services that are often confused. The table below sets them apart: a software takeover can lead to one or more of them, depending on what the audit reveals.

TermWhat it isWhat changes for users
Software takeoverTaking charge of existing software: access, stocktake, securing it, then changesNothing at first; fixes follow
RefactoringReorganising part of the code to make it easier to evolve, without changing its behaviourNothing visible, but the following changes move faster
Progressive redesignReplacing the software piece by piece, while keeping the service runningChanges in stages, part by part
Complete rewriteRebuilding the whole piece of software, then switching over in one goA new tool at the final switchover
TMA (ongoing application maintenance)Maintenance contract that follows the takeover: fixes, updates, changesOne accountable point of contact over time

When should you call in a software takeover company?

The most common case: the vendor, agency or freelance developer who built the software is no longer around. The agency has closed, the freelancer no longer answers, the technical co-founder has left, or the relationship simply ended. The software still works, but no one knows how to deploy it any more, or what breaks if you touch what.

A takeover is also justified without a vendor leaving, when technical debt is paralysing the product: each change costs more than the last, the same defects keep coming back, a security update has been put off for months because it risks breaking everything. These signs justify a software takeover, not necessarily a rebuild. The first need is to separate immediate risks from irritants that can wait.

  • Vendor, agency or freelancer gone, failing or unreachable
  • Changes blocked by the fear of breaking production
  • Defects that return after every update
  • Unmaintained dependencies or versions, known security flaws left unpatched
  • Backups, hosting and deployment that no one can describe
  • SaaS that has become hard to evolve: code refactoring needed
  • Software inherited after acquiring a company or a business
  • An application built very quickly (no-code tool, AI-generated code) that needs to be made reliable

Choosing a software takeover agency: the right questions

A software takeover agency must read your code before quoting for anything. Offering to rewrite everything is the quickest answer to give, and the most expensive one to pay for. A good takeover partner tells you what they have seen, what they still do not know, and what each option costs. They should also avoid creating the very dependency you are trying to escape.

Here are the questions to ask any software takeover company, us included. Our guide Freelancer or development agency? helps you compare the two types of provider.

  • Is the audit sold separately, with a fixed scope, and a report that stays yours even if you continue elsewhere?
  • Does the takeover partner clearly state what they were not able to check?
  • Will the resulting code sit in your repository, with accounts (hosting, domains, app stores) in your name?
  • Is there a licence, an exit fee or mandatory maintenance? With us: no.
  • Who reads the code and who will maintain it afterwards? The same team, ideally.
  • How does the service stay available while the work is under way?

The pre-takeover code audit: what we look at

The audit examines the code and everything that makes it run. It separates what can be kept from what deserves rewriting, with the reasons why. Technical debt is broken down into batches, costed in days and ordered by risk and business value. You receive a usable plan even if you have the follow-up work done elsewhere.

An audit does not remove all uncertainty: some parts only become understandable by watching the software in use. Scoping therefore includes a day on site with users, comparing expected behaviour, real data and what the code actually does today. This comparison avoids labelling an unusual business rule a “bug”, or keeping a fault simply because it has existed for a long time.

  • The repository: history, branches, what is actually in production
  • Build and deployment: can the software be rebuilt and shipped today, without the former vendor?
  • Dependencies: versions, abandoned components, known vulnerabilities
  • Architecture: how the parts call each other, where the business rules live
  • Data: database schema, quality, duplicates, volumes
  • Backups: do they exist, and has a restore ever actually succeeded?
  • Security: access management, passwords and technical keys, personal data
  • Tests and monitoring: what warns of an outage, what guards against a regression
  • Running costs: hosting, third-party services, current subscriptions
Audit deliverableWhat it contains
Map of the existing systemThe software's parts, how they link, hosting and data flows
Access inventoryWhat you hold, what is missing, whose name each account is under
Risk listRanked by severity: what threatens production, what can wait
Decision per partKeep, fix, isolate or replace, with the reasons
Costed batchesWork broken down and estimated in days, in a recommended order
Security planBackups, urgent fixes and monitoring to tackle first

The steps of a software takeover and their timescales

A takeover always follows the same order: you do not evolve software you cannot yet redeploy. Timescales mainly depend on what you can provide at the start. The audit's duration is given before it begins, on a fixed scope; the schedule for the following work is set from what it found, batch by batch.

  1. First conversation: you describe the software, how it is used and what you no longer dare to touch
  2. Recovering access: repository, hosting, database, domains, third-party accounts
  3. Code audit and a day on site with users, followed by a written report
  4. Securing the system: backups checked with a real restore, urgent fixes, monitoring
  5. Refactoring, fixes and changes in batches, each one tested and documented
  6. Ongoing maintenance (TMA): long-term maintenance and changes, or handover to your team
StepWhat makes the duration vary
Recovering accessCooperation from the former vendor, accounts held in your company's name or not
AuditSize of the codebase, number of applications (web, mobile, API), existing documentation
Securing the systemState of backups, versions to update, flaws to fix
ChangesScope agreed, availability of a test environment, data migration

Checklist: what to recover before the takeover

A takeover goes smoothly when these items are gathered from the start. If any are missing, recovering them becomes the first task of the stocktake, before any development. Ask the former vendor for them in writing, and check whose name each account is under: an account held in the vendor's name is a risk, even if it works today. Our guide Taking over code from a vendor sets out the steps to follow.

ItemWhere it isWhy it is critical
Complete code repository, with its historyGitHub, GitLab, Bitbucket or the vendor's own serverA file archive does not show what is actually in production
Access to hostingCloud provider console, servers, admin accountsWithout it, nothing can be deployed or fixed
Database and backupsHosting provider, database service, backup storageThis is your business data: it cannot be rebuilt
Domain names and DNSDomain registrarIf the domain is lost, the site and emails stop working
App store accountsApp Store Connect (Apple), Google Play ConsoleWithout them, the mobile app cannot be updated
Third-party servicesPayments, email and SMS sending, mapping, monitoringEach one can break a feature if it expires
Configuration secretsEnvironment variables, API keys, technical passwordsWithout them, the code will not start
Deployment pipelineScripts, continuous integration, installation documentationIt saves having to rediscover how to ship
Documentation and known incidentsWiki, tickets, exchanges with the vendorEven partial, it saves days of audit work
Contract and code ownershipService agreement, terms and conditionsIt states what was assigned to you; if in doubt, have it reviewed by a lawyer

Refactoring a SaaS codebase: evolving without breaking everything

Code refactoring means reorganising part of the software to make it easier to evolve, without changing what users expect from it. On a SaaS, each customer's data, subscriptions and access must also be protected throughout the operation: a mistake does not affect one user, it affects all your customers at once.

We work in readable batches. Before touching any part, we put tests in place on critical journeys (login, billing, key data entry) so we know immediately if something has changed. Version upgrades happen one at a time, starting with those that expose production. Each batch is delivered, checked, then documented before the next one.

This work only has value if it addresses an identified risk or need: a part of the code that slows down every change, a dependency that is no longer maintained, a fragile process. We build and run our own SaaS, Trackary, and know these constraints from the inside. For a SaaS to be built or extended, see also B2B SaaS development.

  • Sign that refactoring is worthwhile: a small change touches files everywhere
  • Sign that refactoring is worthwhile: no one dares update the framework
  • Sign that refactoring is worthwhile: the same calculation is coded in several places, with different results
  • What it must not do: change behaviour without you having decided to

Progressive takeover or complete redesign?

Redesigning existing software does not start by switching off what still works. We first look at backups, restores, urgent fixes and monitoring, then we stabilise the incidents that genuinely hinder teams. If a rewrite is unavoidable, it is preferably done piece by piece, with a prepared switchover and a service that keeps running throughout the transition.

Rewriting everything looks simpler on a diagram, but it means rediscovering exceptions built up through real use, and shifting data and habits all at once. Conversely, keeping every old element at all costs can stall the product. The decision is made part by part across the system: keep, fix, isolate or replace.

Takeover and progressive redesignComplete rewrite
Service during the workKeeps runningOld and new run in parallel until the switchover
RiskSpread across several small switchoversConcentrated into one final switchover
First benefitsFrom the first batch deliveredWhen the new software goes live
Business rules hidden in the codeKept, then documentedTo be rediscovered one by one
When to choose itThe existing base remains partly usableThe whole existing base is blocking the business

After the takeover: ongoing maintenance and further changes

TMA (ongoing application maintenance) is the contract that follows a takeover: fixing defects, security and version updates, monitoring backups, and functional changes as needs arise. A serious maintenance contract starts with a takeover: no one should commit to fix times for software they have not read.

The maintenance scope is separate from the takeover and chosen according to your needs: nothing obliges you to take it with us. If you prefer to bring the software back in-house, the documentation produced during the takeover and a handover period with your team are part of the plan. A maintenance contract that left you dependent on a single provider would simply reproduce the problem that brought you here.

  • Corrective maintenance: reported defects are analysed and fixed
  • Preventive maintenance: updates, checked backups, monitoring
  • Evolutive maintenance: new features, delivered in batches
  • Reversibility: up-to-date documentation and a handover possible at any time

How much does a software takeover cost?

A software takeover is priced on request, after an audit. The cost depends on actual access to the code and environments, the volume of data, the state of backups, incidents to deal with and the desired scope of changes. The audit must be kept separate from the work it leads to: without a diagnosis, a redesign quote only gives a misleading impression of precision. Scoping is billed separately and its outcome is yours. Our guide How much does custom software cost? explains the pricing factors, and How much does a SaaS cost? covers the running costs of online software.

For the work we carry out, the code lands in your repository from the first commit and third-party accounts stay in your name. No licence, no exit fee, no mandatory maintenance. This freedom matters especially in a takeover: the original problem is often a dependency on a vendor that has become hard to break.

Why entrust your software takeover to The Level Code

THE LEVEL CODE is a software development studio based in Lille (The Level Code SASU, chaired by Romain Nivelle). We build business software, web and mobile applications and SaaS products, and we run our own software in production, Trackary. For us, taking over software means applying to your code the same standards we apply to our own: backups actually restored, repeatable deployments, history kept intact.

We work in Lille, across the Lille metropolitan area and throughout France: the scoping day takes place on site, the audit and the work itself remotely. If the code cannot be recovered or its technology falls outside our skills, we tell you at the audit stage, not in month three. For the detail of how we work, see the Method page.

Frequently asked questions

What is a software takeover?

It means taking back control of software written by someone else: recovering access, understanding its code, data and hosting, securing production, then fixing it and evolving it, rather than rewriting everything as a matter of principle.

What is the difference between a takeover, a redesign and a rewrite?

A takeover keeps the existing software and improves it in stages, without interrupting the service. A progressive redesign replaces parts one by one. A rewrite rebuilds everything before a final switchover. A takeover is almost always the right first step: it then lets you judge whether a redesign is truly necessary.

How much does a software takeover cost?

It is priced on request, after an audit. The cost depends on the state of the code, the data, access, and operational risks. The audit is billed separately and its report stays yours; the guide How much does custom software cost? sets out the budget factors.

How long does a software takeover take?

The audit's duration is given before it starts, on a fixed scope. What follows mainly depends on the access available, existing documentation and the scope of changes: the schedule is set batch by batch after the audit.

Can you take over code from another agency or a freelancer who has left?

Yes, provided we have the necessary access and rights. We examine the code, the data and the operations before proposing next steps. The guide Taking over code from a vendor lists what needs to be recovered.

What if the former vendor will not hand over access?

Ask for them in writing, precisely listing the repository, hosting, database, domains and third-party accounts. We do not promise to recover code or an account that is genuinely inaccessible: we identify what is missing, the associated risks, and build the plan on what is actually available. For a dispute over code ownership, a lawyer is the right person to speak to.

Do we need to rebuild our software entirely?

Not necessarily. The audit states what should be kept, fixed or replaced. We secure production first and favour a progressive redesign whenever possible.

What is refactoring a SaaS codebase?

It means reorganising part of a SaaS codebase to make it simpler to evolve, without changing what customers see. It is done in batches, with tests on critical journeys, while protecting each customer's data and subscriptions.

Do you offer ongoing maintenance after the takeover?

Yes, if you want it: fixes, updates, monitoring and changes. The scope is separate from the takeover and is never imposed; you can also bring the software back in-house with the documentation produced.

Do we own the code from the changes?

Yes. The code we produce sits in your repository from the first commit, third-party accounts are in your name, and no exit fee is imposed on you.

A project, a question?

Describe what you need in a few lines: you deal directly with the team, in Lille.