← Back to Insights
/ Engineering Insights

Des systèmes d'entreprise .NET à un SaaS mondial : ce qui s'est transféré et ce qui n'a pas fonctionné

Leçons d'architecture tirées d'une décennie de travail .NET en entreprise — ce qui s'est transféré directement à la construction de Contractly Pro, et ce qui a dû changer.

Des systèmes d'entreprise .NET à un SaaS mondial : ce qui s'est transféré et ce qui n'a pas fonctionné
Emile Ndagijimana
Emile Ndagijimana
August 4, 2026
/
Founder Journal

L'instinct qui s'est transféré directement : la séparation en couches

J'ai déjà écrit sur la façon dont je structure les backends .NET avec une séparation stricte en couches — Domain, Application, Infrastructure, Presentation, les dépendances pointant toujours vers l'intérieur. Cet instinct s'est transféré à Contractly Pro sans modification. Un SaaS servant des freelances dans dix langues à travers plusieurs pays a tout autant de raisons de garder les règles métier indépendantes de l'infrastructure qu'un système de sinistres d'assurance — sans doute davantage, car l'infrastructure (fournisseurs de paiement, prestataires de signature électronique, règles fiscales par pays) est garantie de continuer à changer à mesure que le produit s'étend vers de nouveaux marchés.

Quand j'ai ajouté un deuxième fournisseur de paiement pour une région spécifique, le changement n'a touché exactement qu'un seul projet de la solution. Ce n'est pas un hasard — c'est le résultat direct du fait de garder Infrastructure comme la seule couche autorisée à connaître le SDK d'un fournisseur spécifique.

L'instinct qui a dû changer : la vitesse d'itération

Les systèmes d'entreprise privilégient la correction et la stabilité au détriment de la vitesse de changement, car le coût d'une erreur — un sinistre d'assurance mal traité, une faille de conformité — est sévère, et la base d'utilisateurs est captive (les employés utilisent l'outil interne parce que c'est l'outil interne). Un SaaS avec des freelances qui peuvent annuler leur abonnement et passer à un concurrent en quelques minutes a un profil de risque complètement différent. Être lent à livrer un correctif ou une fonctionnalité demandée est en soi une forme d'échec.

Cela a impliqué de relâcher délibérément certaines habitudes d'entreprise : moins de portes de validation avant qu'un changement ne sorte, des mises en production plus petites et plus fréquentes plutôt que de grandes versions trimestrielles, et accepter qu'une partie de la finition soit ajoutée après qu'une fonctionnalité soit livrée à de vrais utilisateurs plutôt qu'avant. La rigueur architecturale est restée. Le processus de mise en production est devenu radicalement plus rapide.

Ce que le multi-pays et le multi-langue exigent réellement

Les logiciels d'entreprise que j'ai construits étaient généralement mono-tenant ou mono-marché — un seul assureur, un seul ensemble de règles métier, une seule réglementation nationale. Contractly Pro prend en charge 10 langues et doit s'adapter aux normes de contrats et de facturation de différents pays dès le premier jour. Cela a imposé quelques décisions qui n'auraient pas eu d'importance dans mon travail précédent :

  • Le formatage des devises et des paramètres régionaux vit en périphérie (Presentation), jamais présumé à l'intérieur de la logique Domain
  • Les règles de conformité (comme les champs de facture obligatoires) sont modélisées comme des politiques enfichables par pays, pas comme des conditions codées en dur dispersées dans le code
  • Chaque texte visible par l'utilisateur est externalisé pour traduction dès le premier commit, pas ajouté après coup
« Les schémas d'architecture qui gardaient maintenable le système de sinistres d'un seul assureur sont exactement les mêmes qui permettent à un fondateur solo de prendre en charge dix langues sans que le code ne s'effondre sous ses propres conditions. »

La vraie leçon

Une bonne architecture n'est pas spécifique à un secteur. La discipline qui gardait maintenables les systèmes d'entreprise — des limites claires, des dépendances pointant dans une seule direction, l'infrastructure fermement tenue à l'écart de la logique métier — est exactement ce qui a permis à une seule personne de construire et de maintenir un produit servant des freelances dans plusieurs pays sans se noyer dans la complexité. Ce qui a changé, ce ne sont pas les principes. C'est la vitesse à laquelle j'ai été prêt à avancer par-dessus.

Essayer Contractly Pro gratuitement →

/ My SaaS

I write about building Contractly Pro

Real decisions, real tradeoffs, real architecture — from solo founder to production SaaS. Read the Founder Journal or try the app.