Software engineering for the systems your business can't do without.

You've got a tool that can't keep up, systems that won't talk to each other or a product to build, and you probably don't want to sign up for a project nobody can see the end of. We design, build and maintain that software, and once it's paid for, the code written for you and its documentation are yours.

Software that has to last gets written differently

Plenty of people can make software work on demo day. Keeping it working five years from now, when someone who's never seen it has to change it on a Friday night, takes a different kind of code. You pick the plain solution over the clever one. You write down why a decision was made. You leave tests behind that remember what the program is supposed to do. Anybody who's bought an old house knows the difference between a breaker box with labels and one without. That care, from the first conversation through years of maintenance, is what software engineering means to us, and it's the part of the work we love.

Sometimes nobody knows yet whether an idea will hold up technically. That's where R&D comes in: we build a prototype to find out before you commit more budget. A prototype that comes back with a no has already earned its keep.

We pick the technology after we understand the problem, and we'll talk you out of things. Usually a full rewrite, because old code holds years of rules nobody ever wrote down. A dozen separate little services for a product with a hundred users, because every split is one more thing that can fail. For a new backend (the behind-the-scenes part of an application that stores data and enforces the rules), our first choice is Rust. For a system that's already running, we usually stay in its language.

Codetics is a French software engineering and R&D company that works remotely with clients in France and abroad, including the United States. Behind it is the background of Kevin Vavelin: C++ at KDE, years on banking infrastructure, software testing at Air France, and a habit of explaining things, as an Apple Teacher since 2016.

Four kinds of work, from the server to your staff's screens

Most projects mix a few of these. Your quote says which ones, so nobody gets surprised halfway through.

Backends, APIs and distributed architectures

Your users never see this part, and it does the heavy lifting. An API is how two pieces of software exchange data, and we take care with it, because it's hard to change once other systems depend on it. Spreading the work across several machines, which is what a distributed architecture does, comes with a real price: any message over the network can fail. We only go there when your load calls for it.

  • Backend services sized for the load you expect
  • Internal or public APIs, with documentation
  • Message queues and background jobs that retry after errors
  • Databases and data models
  • Logs and metrics, so incidents can be diagnosed quickly

Business software and integration

Have someone key in the same order twice and sooner or later it'll be two different orders. We build the tools your staff opens every morning and connect them to the ones you already pay for.

  • Operations software for production, inventory, scheduling and field work
  • ERP (running the business), CRM (tracking customers) and customer or vendor portals
  • Web interfaces in React and Next.js
  • Connections between your existing software
  • Data migration from spreadsheets or older tools

Critical systems and R&D

Software is critical when an outage or a wrong result costs real money, data or trust. That means planning for the failure before it happens, and being able to show afterward what took place. To be straight about the limits: machine safety functions, power electronics and certification need a separate scope and specialized partners.

  • Operations you can audit afterward, thanks to retained records
  • Recovery plans: what to do to get back up after a failure
  • Testing focused on failures and edge cases
  • Prototypes that test a technical idea before you invest

Architecture, maintenance and ongoing development

Architecture is the blueprint of a system: its major parts and how they communicate. You can tell a good one because you can swap a part without tearing out the rest. We draw it up for new projects. On existing software, we first untangle the one that drew itself, one urgent fix at a time.

  • Architecture design, documented with the reasoning behind it
  • Taking over software nobody is looking after anymore
  • Step-by-step migration, with no rewrite unless one is needed
  • Bug fixing and new features over time
  • Regression tests, which catch a new feature breaking an old one

A bug or a failing API that can't wait?

When everything's stuck, a quote isn't what you need. Express Intervention goes after one specific problem remotely: something that worked yesterday and doesn't today, an integration error, slow queries. Fixed price, from €149 for a diagnosis, with a written report of what was found and done. VAT not applicable, art. 293 B CGI.

Get an Express Intervention

You may recognize one of these

Typical situations, offered as examples. None of them is a client reference.

  • The spreadsheet that got out of hand

    Your orders or schedules live in a file everyone's afraid to touch. Don't be too hard on it: with all those columns and formulas, your staff has already sketched the tool they need. We start from there and add clear rules and a record of who changed what.

  • Systems that give different answers

    Your operations software and your online store have two addresses for the same customer. Which one's right? That gets settled before anyone writes code, or the connection just spreads the mistake faster. After that, your staff can stop retyping.

  • The backend for a new product

    Someone will tell you to plan for a million users. We'd tell you to build for the ones you actually expect and leave room for what comes next. It costs less, and you'll know a lot more by the time it matters.

  • The software nobody dares to touch

    Your vendor left, or the code stopped moving because every fix breaks something else. We start by writing tests that pin down what it does today, then we put back what's missing. The fear tends to go before the bugs do, and the software can start changing again.

Every language has a personality and a reason to be there

We have our favorites and we'll tell you what they are. They come second to your system and what it has to do.

  • Rust

    Our first choice for new backends and infrastructure tooling, where reliability and low resource use matter, because its compiler stops mistakes that other languages let through to production.

  • C++

    Still hard to beat close to the hardware, in performance-critical code and in systems already running. Our background includes C++ at KDE, and we still have a lot of respect for it.

  • Java and C#

    Enterprise systems and established platforms. If yours lives there, we'll extend it in its own language, because replacing it on principle would be our ego on your dime.

  • Swift and Kotlin

    Native apps, written specifically for iPhone and for Android. Both can also run on the server, worth a look if your mobile developers want to stick to one language.

  • TypeScript, React and Next.js

    The web interfaces of business software, where your staff spends the day.

From your first email to handing over the keys

  1. 01

    You tell us what's stuck

    A few lines in your own words will do. You don't need the technical vocabulary. Asking the right questions is our job.

  2. 02

    We agree on scope in writing

    Your quote says what's included, what it costs and what's left out. That last part matters as much as the rest, since it's where misunderstandings usually start.

  3. 03

    You watch it take shape

    We ship in stages and check each one with you. A wrong turn spotted at stage two costs far less than one spotted at the end.

  4. 04

    We hand over code and documentation

    You leave with what you need to keep the software going, with us or with someone else. You should always be free to walk away, and to us that's what a clean handover looks like.

Where to start, depending on what's pressing

Express Intervention

From €149

You've got one specific problem and you want someone on it. Remote, at a fixed price. VAT not applicable, art. 293 B CGI.

See Express Intervention

Senior consulting day

€900

Seven hours of a senior engineer's time on one agreed subject: an architecture decision that's been dragging, a code review, an incident that keeps coming back. VAT not applicable, art. 293 B CGI.

See the consulting day

Project

Custom quote

For building or taking over software. You describe the need, we work out the scope together, and you get a detailed quote.

Send a brief

Frequently asked questions

What drives the price rarely shows up in a mockup. The number of features counts, of course, and so do the systems to connect, the data to migrate and the condition of any existing code. As a rough guide, our catalog puts an API integration at €2,500 to €15,000, a first version of a business application at €8,000 to €25,000, and taking over existing software at €3,000 to €30,000. The final price is set in the quote after scoping. Prices are in euros. VAT not applicable, art. 293 B CGI.

A number given before we understand the scope wouldn't be worth much, and you'd be right not to trust it. So your quote breaks the work into stages with a projected schedule. A date is only a commitment if the quote says so in writing. If something changes the schedule, you'll hear it from us as soon as we know, without having to ask.

Yes. Codetics is based in Saint-Louis on La Réunion, a French overseas department in the Indian Ocean, and works remotely by default. La Réunion stays on UTC+4 all year, 8 or 9 hours ahead of New York depending on the season, so a US morning is our late afternoon or evening. Scope, status updates and decisions are handled in writing, in English, which also leaves everyone a record, and calls are booked ahead of time. We have no US office, and prices are in euros.

You do, once the price is paid in full: the economic copyright in the code written specifically for you is assigned to you exclusively, for the purposes of your business. Codetics keeps its pre-existing components and gives you a royalty-free license to use them with your deliverables, and open-source software stays under its own license. Our terms and your quote lay out the details.

Usually not, even if the idea is tempting after years of living with it. Old code can be ugly, but it holds every exception your business has piled up, and a rewrite tends to lose them one by one. We start by looking at what works and what's really holding you back. If a full rewrite is the right call, we'll show you the numbers behind it. Otherwise we improve the system in stages, in its original language or by replacing only the parts causing trouble.
Software project

Tell us what your software has to do tomorrow.

A few lines will do: what's stuck, what you expect, what you're afraid of breaking. We'll work out the scope with you and send a detailed quote.

  1. 01You describe the need
  2. 02We clarify the scope
  3. 03You receive a detailed quote
Discuss a project