Une ingénierie de précision, définie avant la signature
Testé, relu, documenté, et gérant le cas d'échec. Une définition du fini que vous pouvez nous opposer sans lire le code.
Vous ne lisez pas le code, donc les promesses de qualité sont faciles à vous faire. Voici la nôtre, en termes vérifiables : une fonctionnalité est finie quand elle est testée, relue par quelqu'un qui ne l'a pas écrite, documentée là où le prochain développeur regardera, et qu'elle se comporte correctement quand les choses tournent mal. Cette dernière clause est l'endroit où vit réellement la qualité logicielle.
Le cas d'échec, c'est le produit
N'importe qui sait construire le chemin idéal. La démonstration où le formulaire s'envoie et le paiement passe, c'est les quatre-vingt-dix pour cent faciles. Ce que vous payez, ce sont les dix autres : ce qui se passe quand le prestataire de paiement expire après avoir débité la carte, quand deux personnes modifient la même fiche, quand le fichier d'import a une colonne que personne n'attendait. Le logiciel qui gère cela en silence, c'est ça, la précision ; celui qui ne le gère pas est une démonstration que vous avez payée.
Des choix faits exprès
- De la technologie ennuyeuse. Frameworks courants, bases gérées, motifs qu'un nouveau développeur reconnaît en une après-midi. Les choix exotiques sont une taxe de recrutement payée pour toujours.
- Des tests là où ils rapportent : les chemins de l'argent, les transformations de données, les règles qui ne doivent pas dériver. Pas un taux de couverture poursuivi pour lui-même.
- Une relecture de tout, y compris notre propre travail senior. Le second lecteur attrape ce que l'auteur ne voit plus.
- Migrations et retours arrière écrits ensemble. Un changement qu'on ne peut pas défaire est un changement dont la conception n'est pas terminée.
- Une documentation écrite pour l'équipe suivante, parce que le vrai test d'une architecture est qu'un autre puisse la faire tourner.
Ce que cela vous coûte, honnêtement
Travailler ainsi ajoute environ un cinquième à la première version par rapport à une construction de niveau démonstration. Cela en retire bien davantage sur les deux années suivantes, là où un logiciel passe réellement sa vie. La construction bon marché n'est bon marché que jusqu'à la rencontre du premier vrai client avec la première erreur non gérée.
- 100% des changements relus par une seconde personne
- ~20% ajoutés à la version un, remboursés dès l'année un
- 1 question qui révèle la qualité : que se passe-t-il en cas d'échec ?
La qualité n'est pas un vernis posé à la fin. C'est l'ensemble des choses qui n'ont pas cassé à deux heures du matin, parce que quelqu'un a décidé qu'elles ne le pourraient pas.
Questions fréquentes
Quelles technologies utilisez-vous ?
Des technologies courantes, délibérément : React et React Native, Next.js, Node, Postgres géré, les grandes plateformes cloud. La pile est choisie pour que n'importe quelle équipe compétente puisse prendre la suite, parce qu'un système que nous seuls savons maintenir est un levier sur le client, et nous cédons ce levier par contrat. Quand un projet exige réellement quelque chose d'inhabituel, nous l'isolons et documentons pourquoi.
Utilisez-vous l'IA pour écrire du code ?
Oui, comme n'importe quel outil puissant : pour la vitesse sur les parties bien comprises, jamais comme substitut à la relecture, aux tests ou à la conception. Chaque ligne est livrée sous la même définition du fini, quoi qu'il l'ait tapée en premier. Le défaut du logiciel écrit par IA, c'est le volume sans jugement — et le jugement est précisément ce que vous engagez.
Et si nous trouvons des bugs après la livraison ?
Les défauts de ce que nous avons construit sont à notre charge, sans frais, pendant la période de garantie fixée au contrat — et honnêtement au-delà quand la correction est petite, parce que débattre d'un bug d'une heure coûte plus cher que le corriger. Un comportement nouveau est une demande de changement ; un comportement convenu qui casse est un défaut. La spécification écrite est ce qui rend cette frontière nette plutôt que conflictuelle.