L'ingénierie logicielle des systèmes dont votre activité ne peut pas se passer.

Vous avez un outil qui ne suit plus, des logiciels qui ne se parlent pas ou un produit à construire, et vous craignez sans doute de lancer un chantier dont personne ne voit le bout. Nous concevons, développons et faisons évoluer ce logiciel, et une fois le prix payé, le code écrit pour vous et sa documentation sont à vous.

Un logiciel qui doit durer ne s'écrit pas comme une démonstration

Faire marcher un logiciel le jour de la présentation, beaucoup savent le faire. Celui qui tourne encore dans cinq ans, quand quelqu'un d'autre devra le modifier un vendredi soir sans rien casser, s'écrit autrement. On y préfère une solution simple à une solution brillante, on note pourquoi telle décision a été prise, on laisse des tests qui rappellent ce que le programme est censé faire. Pensez au tableau électrique d'une maison : le jour de l'installation, les étiquettes ne servent à rien, et dix ans plus tard vous bénissez celui qui les a posées. L'ingénierie logicielle, c'est ce soin-là, du besoin jusqu'à la maintenance, et c'est ce travail que nous aimons.

Il arrive aussi que personne ne sache si une idée tiendra techniquement. C'est là que commence la R&D : nous construisons un prototype pour le vérifier avant que vous n'investissiez davantage. Un prototype qui répond non vous a déjà rendu service.

Nous choisissons la technologie une fois le problème compris, et nous n'hésitons pas à vous déconseiller certaines choses. Une réécriture complète, le plus souvent, parce qu'un vieux code contient des années de règles que personne n'a jamais notées. Dix petits services séparés pour un produit qui a cent utilisateurs, parce que chaque découpe ajoute une panne possible. Pour un nouveau backend, la partie invisible d'une application qui stocke les données et applique les règles, notre premier choix est Rust ; pour un système déjà en place, nous restons le plus souvent dans son langage.

Codetics est une entreprise française qui travaille à distance, pour des clients en France et à l'international. Derrière elle, il y a le parcours de Kevin Vavelin : du C++ chez KDE, des années sur des infrastructures bancaires, du test logiciel chez Air France, et l'habitude d'expliquer, Apple Teacher depuis 2016.

Quatre chantiers, du serveur à l'écran de vos équipes

Un projet en mêle souvent plusieurs. Le devis dit lesquels, pour que personne n'ait de surprise en cours de route.

Backend, API et architectures distribuées

C'est ce que vos utilisateurs ne voient jamais et qui fait le travail. Une API est la porte par laquelle deux logiciels échangent des données, et nous la soignons, car on la change difficilement une fois que d'autres s'y sont branchés. Répartir le travail sur plusieurs machines, ce qu'on appelle une architecture distribuée, a un vrai coût : chaque échange sur le réseau peut échouer. Nous n'y allons que si votre charge le justifie.

  • Services backend dimensionnés pour la charge attendue
  • API internes ou publiques, documentées
  • Files de messages et traitements en arrière-plan, avec reprise en cas d'erreur
  • Bases de données et modèles de données
  • Journaux et mesures pour diagnostiquer un incident vite

Logiciels métiers et intégration

Quand une même commande est saisie deux fois, quelqu'un finit par la saisir de deux façons. Nous écrivons les outils que vos équipes ouvrent chaque matin et nous les relions à ceux que vous avez déjà.

  • Applications de gestion : production, stocks, planification, interventions
  • ERP (gestion de l'activité), CRM (suivi des clients) et portails clients ou fournisseurs
  • Interfaces web en React et Next.js
  • Connexions entre vos logiciels existants
  • Reprise des données depuis vos tableurs ou anciens outils

Systèmes critiques et R&D

Un logiciel est critique quand une panne ou une erreur coûte cher, en argent, en données ou en confiance. Il faut alors penser à la panne avant qu'elle n'arrive, et pouvoir montrer après coup ce qui s'est passé. Une limite, pour être francs : les fonctions de sécurité des machines, l'électronique de puissance et la certification demandent un périmètre distinct et des partenaires spécialisés.

  • Opérations qui peuvent se vérifier après coup, grâce à des traces conservées
  • Plan de reprise, c'est-à-dire ce qu'on fait pour repartir après une panne
  • Tests centrés sur les erreurs et les cas limites
  • Prototypes pour vérifier une idée technique avant d'investir

Architecture, maintenance et évolution

L'architecture, c'est le plan du logiciel : ses grandes parties et la façon dont elles se parlent. Un bon plan se reconnaît à ceci qu'on peut changer une pièce sans démonter le reste. Nous le dessinons pour un projet neuf. Sur un logiciel existant, nous remettons d'abord à plat celui qui s'est dessiné tout seul, au fil des urgences.

  • Conception d'architecture, documentée et argumentée
  • Reprise d'un logiciel dont plus personne ne s'occupe
  • Migration par étapes, sans tout réécrire quand ce n'est pas nécessaire
  • Maintenance corrective et évolutions
  • Tests qui vérifient qu'une évolution ne casse pas l'existant

Un bug ou une API en panne, et ça ne peut pas attendre ?

Quand tout est bloqué, un devis n'est pas ce qu'il vous faut. L'intervention express s'attaque à distance à un problème précis : ce qui marchait hier et ne marche plus, une erreur d'intégration, des requêtes lentes. Prix fixe, dès 149 € pour un diagnostic, et vous recevez un compte rendu écrit de ce qui a été constaté et fait. TVA non applicable, art. 293 B du CGI.

Obtenir une intervention express

Vous vous reconnaîtrez peut-être

Des situations types, données en exemple. Ce ne sont pas des références clients.

  • Le tableur qui a trop grandi

    Vos commandes ou vos plannings vivent dans un fichier que tout le monde a peur d'abîmer. Ne le méprisez pas : à force de colonnes et de formules, vos équipes y ont déjà dessiné l'outil dont elles ont besoin. Nous partons de là, avec des règles claires et un historique de qui a fait quoi.

  • Des logiciels qui ne se parlent pas

    Votre gestion et votre boutique n'ont pas la même adresse pour le même client. Laquelle est la bonne ? Cette question-là se tranche avant d'écrire la moindre ligne, sinon la connexion ne fait que propager l'erreur plus vite. Ensuite, vos équipes peuvent arrêter de ressaisir.

  • Le backend d'un nouveau produit

    On vous dira peut-être de tout prévoir pour un million d'utilisateurs. Nous vous dirons plutôt de construire pour ceux que vous attendez, en gardant de la place pour la suite : c'est moins cher, et vous aurez appris beaucoup de choses d'ici là.

  • Le logiciel que plus personne n'ose toucher

    Votre prestataire est parti, ou le code ne bouge plus parce que chaque correction en casse autre chose. Nous commençons par écrire des tests qui fixent ce qu'il fait aujourd'hui, puis nous remettons en place ce qui manque. La peur s'en va avant les bugs, et le logiciel peut de nouveau évoluer.

Chaque langage a son caractère, et sa raison d'être là

Nous avons nos préférences et nous les disons. Elles passent après votre système et ce qu'il doit faire.

  • Rust

    Notre premier choix pour un nouveau backend ou un outil d'infrastructure, quand la fiabilité et la sobriété comptent, parce que son compilateur arrête des erreurs que d'autres langages laissent partir en production.

  • C++

    Toujours aussi précieux près de la machine, là où la performance se joue, et dans les systèmes qui tournent déjà. Nous en avons écrit chez KDE et nous gardons pour lui beaucoup de respect.

  • Java et C#

    Les systèmes d'entreprise et les plateformes existantes. Si la vôtre y vit, nous la faisons évoluer dans son langage : la remplacer par principe serait de l'orgueil à vos frais.

  • Swift et Kotlin

    Les applications natives, écrites spécialement pour l'iPhone et pour Android. Les deux peuvent aussi tourner côté serveur, une option à regarder quand votre équipe mobile veut garder un seul langage.

  • TypeScript, React et Next.js

    Les interfaces web des logiciels métiers, là où vos équipes passent leurs journées.

Du premier message à la remise des clés

  1. 01

    Vous nous racontez ce qui bloque

    Quelques lignes suffisent, avec vos mots. Vous n'avez pas à parler technique : poser les bonnes questions, c'est notre travail.

  2. 02

    Nous fixons le périmètre par écrit

    Le devis dit ce qui est fait, ce que cela coûte, et ce qui n'est pas fait. Cette dernière partie compte autant que les autres, car c'est souvent là que naissent les malentendus.

  3. 03

    Vous voyez le logiciel avancer

    Nous livrons par étapes, vérifiées avec vous. Une erreur de direction repérée à la deuxième étape coûte bien moins cher qu'à la dernière.

  4. 04

    Nous vous remettons le code et la documentation

    Vous repartez avec de quoi faire vivre le logiciel, avec nous ou avec quelqu'un d'autre. Vous devez rester libre de partir, et c'est à cela que nous reconnaissons un travail bien livré.

Par où commencer, selon ce qui vous presse

Intervention express

Dès 149 €

Vous avez un problème précis et vous voulez qu'on s'y mette. À distance et à prix fixe. TVA non applicable, art. 293 B du CGI.

Voir l'intervention express

Journée de conseil senior

900 €

Sept heures de travail d'un ingénieur senior sur un sujet convenu : une décision d'architecture qui traîne, une revue de code, un incident qui revient. TVA non applicable, art. 293 B du CGI.

Voir la journée de conseil

Projet

Sur devis

Pour construire ou reprendre un logiciel. Vous décrivez le besoin, nous fixons le périmètre ensemble, vous recevez un devis détaillé.

Envoyer un brief

Questions fréquentes

Ce qui fait le prix se voit rarement sur une maquette : le nombre de fonctions, bien sûr, mais aussi les logiciels à connecter, les données à reprendre et l'état du code existant. À titre indicatif, notre catalogue situe une intégration d'API entre 2 500 et 15 000 €, une première version d'application métier entre 8 000 et 25 000 €, et la reprise d'un logiciel entre 3 000 et 30 000 €. Le prix final est fixé dans le devis, après cadrage. TVA non applicable, art. 293 B du CGI.

Un chiffre donné avant d'avoir compris le périmètre ne vaudrait rien, et vous auriez raison de vous en méfier. Le devis propose donc un découpage par étapes et un calendrier prévisionnel. Une date ne vaut engagement que si elle est écrite comme telle dans le devis. Et si un imprévu change le calendrier, nous vous le disons dès que nous le savons, sans attendre que vous posiez la question.

Nous sommes installés à Saint-Louis, à La Réunion, et nous travaillons à distance par défaut, avec des clients en France et à l'international. La Réunion reste à UTC+4 toute l'année, soit deux ou trois heures d'avance sur Paris selon la saison. Le périmètre, l'avancement et les comptes rendus passent par écrit, ce qui laisse une trace à tout le monde. Les appels sont fixés à l'avance, et vous échangez directement avec la personne qui écrit le code.

À vous, une fois le prix intégralement payé : les droits patrimoniaux sur le code créé spécifiquement pour vous vous sont cédés à titre exclusif, pour les besoins de votre activité. Les composants préexistants de Codetics restent les nôtres, avec une licence gratuite pour les utiliser avec vos livrables, et les logiciels libres restent soumis à leurs licences. Tout est précisé dans nos CGV et le devis.

Le plus souvent, non, même si l'envie est compréhensible quand on a vécu avec. Un vieux code est laid, mais il contient toutes les exceptions que votre activité a accumulées, et une réécriture les perd une à une. Nous regardons d'abord ce qui fonctionne et ce qui freine réellement. Si une réécriture complète est la bonne réponse, nous l'expliquons chiffres à l'appui ; sinon, nous avançons par étapes, dans le langage d'origine ou en remplaçant les seules parties qui posent problème.
Projet logiciel

Racontez-nous ce que votre logiciel doit faire demain.

Quelques lignes suffisent : ce qui bloque, ce que vous attendez, ce que vous avez peur de casser. Nous clarifions le périmètre avec vous, puis vous recevez un devis détaillé.

  1. 01Vous décrivez le besoin
  2. 02Nous clarifions le périmètre
  3. 03Vous recevez un devis détaillé
Discuter d'un projet