---
title: "Architecture Logicielle & Système - José DA COSTA"
description: "L'architecture logicielle et système, dans ma pratique, c'est l'art de **choisir les bonnes frontières** entre sous-systèmes, les **bons contrats** entre eux et la **bonne forme opérationnelle**. C'es"
locale: "fr"
canonical: "https://portfolio.josedacosta.info/fr/competences/architecture-logicielle-systeme"
source: "https://portfolio.josedacosta.info/fr/competences/architecture-logicielle-systeme.md"
html_source: "https://portfolio.josedacosta.info/fr/competences/architecture-logicielle-systeme"
author: "José DA COSTA"
type: "skill"
slug: "system-architecture-design"
generated_at: "2026-04-26T21:13:38.350Z"
---

# Architecture Logicielle & Système

Icône: 🏛️

## Ma définition

L'architecture logicielle et système, dans ma pratique, c'est l'art de **choisir les bonnes frontières** entre sous-systèmes, les **bons contrats** entre eux et la **bonne forme opérationnelle**. C'est là que SOLID, les design patterns, le REST API design et le DDD rencontrent les réalités du cloud, de l'observabilité et des topologies d'équipe. Une bonne architecture rend la croissance d'une codebase **linéaire au lieu d'exponentielle** ; une mauvaise architecture transforme chaque nouvelle feature en dette structurelle.

### Contexte

Je pratique l'architecture sur **4 échelles** différentes selon le contexte. **Module** : SOLID, hexagonal, domain-driven design. **Système** : REST + async + event-driven, contrats inter-services, gestion d'erreurs. **Plateforme** : monorepo Turborepo, packages partagés, environnements Terraform multi-tenants. **Écosystème** : intégration B2B, fournisseurs externes, contrats versionnés. **11 ans de pratique** continue, du **monolithe PHP** (Joomla, Zend, Symfony 2-7, Magento 1-2) au **SaaS moderne TypeScript** (Next.js 16, Prisma, Payload CMS), avec **28 références** dans le portfolio (Top 4 en fréquence brute) et le **Master ESIEA Expert en Ingénierie du Logiciel** comme socle théorique.

### Pertinence

En 2026, l'architecture entre dans une nouvelle phase : les SaaS verticaux régulés (clinique, défense, énergie, comptabilité) reposent sur des architectures **AI-native** où les workflows sont exprimés en actions et contraintes plutôt qu'en écrans. Le moat n'est plus dans la stack mais dans **la donnée gouvernée + les workflows embarqués + les intégrations profondes**. ce que Rob Saker analyse précisément dans [AI is Eating Enterprise SaaS](https://medium.com/@rsaker/ai-is-eating-enterprise-saas-1259d352f193). L'architecture devient le pari technique le plus défendable d'un CTO : feature-driven, observabilité par défaut, contrats inter-services traçables, et frontières module/cœur survivantes aux upgrades. Maddyness pose le même diagnostic côté francophone dans [Tendances IA 2026 : les 4 mutations qui changent tout](https://www.maddyness.com/2026/04/21/les-4-tendances-qui-font-entrer-lia-en-phase-de-maturite/), où **interface, donnée et souveraineté** redéfinissent le modèle SaaS.

## Mes éléments de preuve

### Architecture feature-driven du SaaS comptable ACCENSEO

**Contexte:** Quand j'ai démarré le SaaS comptable d'ACCENSEO début 2025, je savais que je serais seul à coder pendant 14 mois sur **plus de 200 K lignes de code**, avec un domaine régulé qui interdisait les raccourcis (PCG, CGI, e-facturation 2026-2027). Le piège classique sur ce genre de codebase, c'est de partir sur un découpage par couche technique (controllers / services / repositories) qui devient ingérable une fois passé les 30 modules. Il me fallait une architecture qui tienne 2 ans sans dette structurelle.

**Mise en œuvre:** J'ai posé une **architecture feature-driven** dès le premier commit : **42 modules autonomes** dans `src/features/` (banque, facturation, comptabilité, fiscalité, paie, IA assistant, reporting, juridique, OCR...), chacun avec ses propres composants, hooks, services, models et types. `src/app/` ne contient que le routing Next.js, jamais de logique métier. Pour la donnée, **91 modèles Prisma** organisés autour des entités domain (pas autour des tables SQL), avec **63 enums** typés, et **6 rôles** différenciés contrôlés par Better Auth. Côté contrats inter-features, j'ai exposé un `index.ts` par feature qui définit la surface publique consommable - tout le reste reste interne au module.

**Résultat:** **382 routes API** générées, nouvelles features ajoutées **en jours plutôt qu'en semaines**, et les frontières module/feature ont survécu à plusieurs refactorings majeurs (passage à Next.js 16, migration React 19, ajout de l'extension Chrome Teledec) sans avoir à toucher la structure d'ensemble.

**Valeur ajoutée:** Ce que j'ai validé sur ce projet, c'est qu'**une bonne architecture rend la croissance linéaire** au lieu d'exponentielle : à la 30ème feature, j'allais aussi vite qu'à la 5ème. C'est exactement la promesse que je dois pouvoir tenir sur le prochain rôle CTO scale-up - et je l'ai désormais éprouvée en solo, ce qui rend la transposition à une équipe beaucoup plus crédible.

### Réécriture v2 Rebirth de l'extranet European Sourcing

**Contexte:** L'**Extranet European Sourcing** était le back-office central du plus grand salon en ligne européen d'objets publicitaires - **15 sous-projets interconnectés**, base MySQL partagée de **15 Go sur 97 tables**, **7 langues**, **800 fournisseurs**, et certains catalogues comme SOL's portaient **15 000 variations pour un seul produit**. La v1, écrite en 2008-2013 sur un framework MVC PHP maison, ne tenait plus la cadence : chaque ajout métier coûtait de plus en plus cher.

**Mise en œuvre:** Le 14 mars 2016, on a démarré la **v2 "Rebirth"** sous **Symfony 3.1**, avec **PostgreSQL** à la place de MySQL, **RabbitMQ** pour la messagerie asynchrone, et surtout 2 bundles partagés - **ESCoreBundle** (entités, auth, système de fichiers) et **ESSourcingBundle** (logique métier) - pour mutualiser ce que les 15 sous-projets dupliquaient. Pour industrialiser les écrans d'administration, j'ai bâti un système de **listes génériques (EntityList)** avec colonnes configurables, actions en masse, actions par ligne et pagination. Côté formulaires, j'ai développé **plus de 70 Form Types Symfony** couvrant produits, variantes, marquages statiques et dynamiques avec profils, attributs simples / multiples / groupes, catégories, mots-clés, labels avec synonymes, abonnements et workflows d'import-export.

**Résultat:** La v2 a tenu **plus de 5 ans en production** (2016-2021), elle alimentait **37 connecteurs d'import automatisés** (Pixika, Makito, Midocean, BIC, Paul Stricker, Clipper, TopTex, Cybernecard...), et la pattern library posée à cette occasion a été **reprise par les apps en aval** sans qu'on ait à réécrire l'architecture une seule fois.

**Valeur ajoutée:** Ce projet m'a appris à **mutualiser sans coupler** : les bundles partagés sont restés stables pendant que chaque sous-projet évoluait à son rythme. C'est le pattern que je rejoue aujourd'hui sur le monorepo Turborepo d'ACCENSEO et que j'imposerai sur la prochaine plateforme scale-up - le coût d'une bonne factorisation est faible, le coût d'une mauvaise est toxique sur 10 ans.

### Architecture Magento Enterprise multi-store chez Fleurance Nature

**Contexte:** À la refonte de Fleurance Nature en 2017 chez Smile, j'ai trouvé une plateforme **Magento Enterprise Edition 1.10** chargée à bloc : **1 040 fichiers PHP** modifiés, **60 modules custom** accumulés, **3 storefronts** (Fleurance Nature France, International, Mincifine) à servir avec une **matrice tarifaire EAV** partagée entre **4 groupes clients** (anonymes, général, abonnés fidèles, comités d'entreprise) - soit 12 combinaisons tarifaires actives. Les spécifications elles-mêmes ont traversé **7 versions en 2 mois** (de 30 à 50 pages) au fil de la découverte des règles métier encapsulées dans le code legacy.

**Mise en œuvre:** J'ai refusé la tentation du big-bang. J'ai posé un **découpage clair backend/frontend** sur les 3 storefronts, **backporté ElasticSearch sur Magento EE 1.10** pour remplacer Solr (autocomplete, navigation à facettes, catégories virtuelles), et imposé sur chaque module custom le respect des patterns **Observer/Strategy** pour rester **PCI-aware** sans toucher au cœur Magento. Pour sécuriser les déploiements, j'ai mis en place une suite de **régression complète sur les 3 sites** avant chaque release, parce que toucher un module impactait potentiellement les 12 matrices tarifaires.

**Résultat:** La plateforme refondue a tenu **plus de 5 ans en production** sans nouvelle réécriture architecturale, **zéro incident sécurité majeur** pendant et après la migration, et le **cache Varnish** est resté opérationnel tout au long du process de refonte malgré la sensibilité du site live.

**Valeur ajoutée:** Ce que j'ai compris sur ce projet, c'est que les **frontières module/cœur** sont ce qui fait survivre une codebase aux changements de prestataire et aux montées de version - pas la qualité du code lui-même. Sur chaque audit CTO advisory que j'anime aujourd'hui chez ACCENSEO, c'est la première chose que je regarde dans la codebase du client.

## Mon autocritique

### Degré de maîtrise

Niveau **Expert (5/5)**. 11 ans de pratique architecturale, du monolithe PHP au SaaS moderne TypeScript en passant par les plateformes d'intégration ESB. Master ESIEA comme socle théorique, **28 références portfolio** comme volume de pratique.

Couverture confirmée sur les 4 échelles :

- **module** : SOLID, DDD, hexagonal
- **système** : REST, async, event-driven, CQRS partiel
- **plateforme** : monorepo Turborepo, packages partagés, Terraform multi-env
- **écosystème** : intégration B2B

Ce qui reste à muscler : event sourcing pur et service mesh à grande échelle.

### Importance dans mon profil

Cœur de ma crédibilité de CTO. Sans architecture solide, le produit ne tient pas la croissance, l'équipe ne scale pas et la dette devient existentielle en 18 mois. C'est aussi ce qui distingue le CTO opérationnel du CTO advisory : savoir traduire une intention business en frontières techniques, contrats inter-équipes et plan de migration concret.

### Conseils (pour moi-même et pour les autres)

### Mes principes d'arbitrage

À moi-même : *écrire un ADR pour chaque décision irréversible* et tenir un diagramme système vivant. Aux autres : préférer la simplicité jusqu'à preuve du contraire, refuser le pattern par autorité (« on fait comme ça parce que Netflix ») et exiger le critère métier qui le justifie. Toujours simuler le coût opérationnel d'un découpage avant de le valider, *un microservice, c'est aussi un pipeline, un dashboard et une astreinte*.

## Mon évolution dans cette compétence

### Rôle dans mon projet professionnel

L'architecture est ce qui transforme une intuition CTO en **plateforme défendable sur 3 ans**. Dans le projet à 24 mois, elle rend possibles les arbitrages *build vs buy* lourds, les migrations majeures sans interruption produit et la discipline d'équipe (revue de code, ADRs, contrats inter-services). Sans elle, l'organisation peut grandir mais la dette finit par tuer la cadence.

### Niveau souhaité à moyen terme

L'objectif est l'**extension event-driven et service mesh** : pouvoir dessiner et implémenter une bascule monolithe → modules autonomes **sans interruption produit**, et défendre cette trajectoire devant un board en langage business (risque, cycle, OPEX). Maintenir la maîtrise Expert sans dégradation reste la base. l'effort se porte sur les frontières où je n'ai pas encore opéré en production.

### Formations en cours

Lecture continue : Martin Kleppmann *Designing Data-Intensive Applications* (relu chaque année), Neal Ford / Mark Richards *Software Architecture: The Hard Parts*, Sam Newman *Building Microservices*. Pratique quotidienne sur les codebases ACCENSEO. Master Expert en Ingénierie du Logiciel actif jusqu'en 2026.

### Formations à venir

Conférence [QCon Paris 2026](https://qconferences.com/paris), possible programme Domain-Driven Design avancé (Vlad Khononov ou Eric Evans masterclass) en 2027. Certification AWS Solutions Architect Professional envisagée selon le contexte CTO cible.

## Progression à travers les parcours

Cette compétence a été développée dans 13 parcours différents.

- **1999** - [CTO · Founder · directeur technique](https://portfolio.josedacosta.info/fr/parcours/celiane-founder.md) (entrepreneurship) - Confidence: 2/5
- **2009** - [Software Engineer · développeur PHP Zend Framework](https://portfolio.josedacosta.info/fr/parcours/european-sourcing-engineer.md) (experience) - Confidence: 3/5
- **2013** - [Senior Software Engineer · lead développeur PHP Symfony](https://portfolio.josedacosta.info/fr/parcours/medialeads-senior-engineer.md) (experience) - Confidence: 3/5
- **2016** - [Technical Project Manager · Co-founder · Early-Stage Startup](https://portfolio.josedacosta.info/fr/parcours/adspower-cofounder.md) (entrepreneurship) - Confidence: 4/5
- **2017** - [Senior Software Engineer · lead développeur PHP Magento](https://portfolio.josedacosta.info/fr/parcours/smile-senior-engineer.md) (experience) - Confidence: 4/5
- **2019** - [Engineering Manager · Project Manager / Product Owner · Technical Lead](https://portfolio.josedacosta.info/fr/parcours/pichet-group.md) (experience) - Confidence: 5/5
- **2019** - [Technical Lead · Flux et Produits : contenus et intégration d'entreprise](https://portfolio.josedacosta.info/fr/parcours/pichet-technical-lead.md) (experience) - Confidence: 4/5
- **2020** - [Entrepreneur · divers domaines d'activités](https://portfolio.josedacosta.info/fr/parcours/auto-entrepreneur-jdc.md) (entrepreneurship) - Confidence: 4/5
- **2021** - [Project Manager / Product Owner · Flux et Produits : PIM & DAM & ESB](https://portfolio.josedacosta.info/fr/parcours/pichet-project-manager.md) (experience) - Confidence: 4/5
- **2023** - [MBA Management Stratégique de Projets](https://portfolio.josedacosta.info/fr/parcours/mba-strategic-project-management.md) (education) - Confidence: 5/5
- **2023** - [Master Expert en Ingénierie du Logiciel](https://portfolio.josedacosta.info/fr/parcours/master-software-engineering.md) (education) - Confidence: 5/5
- **2023** - [Engineering Manager · Intégration d'Applications d'Entreprise](https://portfolio.josedacosta.info/fr/parcours/pichet-engineering-manager.md) (experience) - Confidence: 5/5
- **2024** - [CTO · Founder · directeur technique](https://portfolio.josedacosta.info/fr/parcours/accenseo-founder.md) (entrepreneurship) - Confidence: 5/5

## Réalisations associées

- [Intelligent Accounting SaaS Platform](https://portfolio.josedacosta.info/fr/realisations/plateforme-comptabilite-saas.md) - Feature-Driven architecture with 42 autonomous modules and 91 database models. 382 REST API routes with multi-role access control (6 profiles) and DGFIP v3.1 e-invoicing readiness
- [European B2B Search Engine for Promotional Products (European Sourcing)](https://portfolio.josedacosta.info/fr/realisations/moteur-de-recherche-europeen-b2b-objets-publicitaires.md) - Decomposed the SQLI monolith into a microservices ecosystem (API, search, flux, translate, export, stats, supplierbo) with shared Symfony bundles (ESCoreBundle, ESSourcingBundle) and WSSE stateless inter-service authentication. Built a REST JSON API on Symfony 2.4 + Propel with WSSE stateless authentication (nonce + timestamp + digest), JMS Serializer, CORS, and multi-database connections (europeansourcing + tendanceobjet) - Applied microservices, MVC, SPA (AngularJS), Strategy pattern for 26+ heterogeneous supplier connectors (CSV/XML/API), and Doctrine behaviors (Sluggable, Sortable, Timestampable, Translatable, Blameable)
- [Partner Lead Reception API Platform (alias PSR)](https://portfolio.josedacosta.info/fr/realisations/plateforme-api-reception-leads-partenaires.md) - End-to-end architecture: API gateway, normalization, enrichment layer, CRM routing, Partner-facing REST endpoints, data contracts and 5 API versions
- [E-Commerce Platform Redesign Magento Enterprise Edition (alias Fleurance Nature)](https://portfolio.josedacosta.info/fr/realisations/refonte-ecommerce-magento-fleurancenature.md) - Multi-site architecture (3 storefronts), Solr to ElasticSearch migration with faceted search, ERP bidirectional flows redesign, 8-environment deployment topology - Magento XML rewrites pattern, MVC, Observer and Strategy patterns applied across 60+ modules without touching core code
- [ETL Pipeline for Real Estate Listing Syndication (alias Ligneurs)](https://portfolio.josedacosta.info/fr/realisations/pipeline-etl-syndication-immobiliere.md) - Designed the complete ETL architecture: modular per-partner pipeline, batch over real-time, centralized multi-format image pre-generation - Integrated PIM Akeneo v2 REST API for data extraction and several dozen partner endpoints (REST APIs and FTP/SFTP file drops)
- [PIM Extranet for B2B Promotional Products Search Engine (European Sourcing)](https://portfolio.josedacosta.info/fr/realisations/extranet-pim-b2b-objets-publicitaires.md) - PIM/data model bigger than Akeneo: 32+ fields per variant, 36 per marking option, 50+ pricing grids, 97 MySQL tables on 15 GB, European Sourcing REST API consumed by the Supplier BO SPA and downstream services across 7 languages. Shared Symfony bundles (ESCoreBundle, ESSourcingBundle), 70+ Form Types, generic EntityList system, MVC + SPA + ETL
- [Flux - Supplier Data Synchronization](https://portfolio.josedacosta.info/fr/realisations/flux-synchronisation-fournisseurs.md) - Designed scalable ETL framework with multi-protocol integration (FTP, HTTP, REST) and connector pattern. Integrated diverse supplier APIs and data formats (CSV/XML/JSON) with automated daily synchronization
- [E-Commerce Site Generator with Customization CMS (alias MyEasyWeb)](https://portfolio.josedacosta.info/fr/realisations/generateur-sites-ecommerce-avec-cms.md) - Designed multi-tenant SaaS architecture serving 400+ branded reseller sites with domain-based detection, Built REST APIs on Symfony 2.4 (FOSRestBundle, JMSSerializer, WSSE) for cross-application synchronization
- [SaaS platform for mortgage credit brokers powered by AI](https://portfolio.josedacosta.info/fr/realisations/plateforme-saas-courtiers-credit-immobilier.md) - Designed monorepo architecture with 7 apps, 14 shared packages, and 98 database models
- [AI Chat Export - Multi-Platform AI Conversation Export Extension](https://portfolio.josedacosta.info/fr/realisations/ai-chat-export.md) - Architected modular extension with Strategy pattern and AbstractExtractor
- [Gradient Generator - Advanced CSS Gradient Creation Tool](https://portfolio.josedacosta.info/fr/realisations/gradient-generator-css.md) - Architected 8 interconnected Zustand stores, feature-driven component structure, and dual-storage backend
- [Atlassian Forge Developer - Intelligent IDE Plugin](https://portfolio.josedacosta.info/fr/realisations/atlassian-forge-developer-ide-plugin.md) - Designed modular plugin architecture with IntelliJ Platform SDK extension points, PSI tree manipulation, and schema-driven validation
- [Multi-Supplier Product Data Import System](https://portfolio.josedacosta.info/fr/realisations/import-european-sourcing.md) - Evolved from legacy PHP monolith to Symfony-based async import system with queue processing
- [Food Truck & Mobile Concept Platform - French manufacturer (alias MCR)](https://portfolio.josedacosta.info/fr/realisations/plateforme-food-truck-concepts-mobiles.md) - Designed the monolithic full-stack architecture: Next.js App Router + Payload CMS v3 + PostgreSQL, 15 collections, 24 content blocks - every structural decision owned end-to-end
- [Centralized Multilingual Translation Management Platform](https://portfolio.josedacosta.info/fr/realisations/plateforme-gestion-traductions-multilingues.md) - Designed PO/MO file management system with MySQL catalog integration and multi-project synchronization
- [tailwindcss-obfuscator - Open Source CSS Obfuscation Tool](https://portfolio.josedacosta.info/fr/realisations/tailwindcss-obfuscator.md) - Designed modular pipeline architecture (extractors, transformers, plugins) supporting 10 frameworks and 4 bundlers
- [Supplier Back-Office - B2B Self-Service Portal](https://portfolio.josedacosta.info/fr/realisations/supplier-backoffice-european-sourcing.md) - Designed decoupled SPA architecture with 14 custom directives forming a reusable UI framework
- [MagicPlaylist - Android Music Discovery & Playlist Generator](https://portfolio.josedacosta.info/fr/realisations/magicplaylist-android-music-discovery.md) - Designed MVVM architecture with 5-strategy mapping pipeline, BFS expansion algorithm, and 3-level chunking
- [Collaborative Project Management Platform](https://portfolio.josedacosta.info/fr/realisations/plateforme-gestion-projets-collaboratif.md) - Designed 3-tier SPA architecture with layered backend (Controller/Service/Repository), DTOs, and 7-table database with triggers
- [Engineering Manager - Enterprise Integration Platform (alias ESB)](https://portfolio.josedacosta.info/fr/realisations/engineering-manager-integration-entreprise.md) - Supervised the architecture of 100+ production flows across 20+ enterprise systems, iPaaS evaluation
- [AI Machine Learning SaaS Platform for Ad Optimization (alias AdsPower)](https://portfolio.josedacosta.info/fr/realisations/plateforme-publicitaire-machine-learning.md) - Integrated Google AdWords, Bing Ads, and Facebook Ads APIs for multi-platform campaign management

Version interactive avec navigation : https://portfolio.josedacosta.info/fr/competences/architecture-logicielle-systeme
