Lead Dev Backend : Optimisation & Architecture ERP
Accélération de la transformation numérique par l'optimisation des flux ERP et la mise en place d'une architecture événementielle haute disponibilité.
01 Contexte & Mission
Cet acteur majeur déploie et exploite des réseaux Très Haut Débit sur tout le territoire français. Ma mission a consisté à piloter la refonte et l'optimisation de l'interface critique entre l'ERP central et les systèmes d'information métier.
L'enjeu majeur était de garantir une synchronisation en temps réel des commandes clients tout en assurant une résilience totale face aux pics de charge et aux latences réseau inhérentes aux infrastructures distribuées.
02 Réalisations Clés
Moteur de Commandes API-First
Développement d'une couche d'abstraction API sous Django Ninja, permettant une validation granulaire des données et réduisant la latence de traitement de 40%.
Architecture Événementielle Kafka
Mise en place d'un bus d'événements Kafka pour découpler les flux de l'ERP des services consommateurs, garantissant une persistance des messages et une reprise sur erreur simplifiée.
Optimisation Multi-Sources
Gestion de la cohérence transactionnelle entre PostgreSQL et SQL Server, avec mise en place de stratégies de retry et de monitoring temps réel.
03 Défis Techniques
Complexité de l'ERP : Adaptation aux contraintes structurelles d'un ERP monolithique via une couche de médiation asynchrone performante.
Intégrité des Données : Garantie d'idempotence sur le traitement des flux de commandes pour éviter toute duplication ou perte d'information.
04 Architecture System Design
Voici une vue d'ensemble simplifiée de l'écosystème mis en place pour assurer l'interconnexion entre l'ERP legacy et le bus d'événements Kafka.
05 Fiche Projet : Data Converter (DC)
Vision du Projet
"Le Data Converter (DC) est une API Gateway hybride et événementielle servant de pivot entre l'ERP Sage X3 et l'écosystème SI d'un opérateur télécom majeur. Sa mission est de moderniser l'accès aux données legacy et d'orchestrer les flux métiers complexes."
Piliers de l'Architecture
Accès Hybride
Accès "Direct Read" SQL pour la performance (divisé par 10) et SOAP pour l'intégrité des écritures ERP.
Événementiel
Découplage via Kafka et
injection de dépendances (injector) pour une modularité totale.
Résilience Legacy
Client SOAP customisé gérant les verrous (Locks) applicatifs et parsing XML complexe.
Rôle & Impact Lead Dev
| Domaine | Actions Réalisées |
|---|---|
| Architecture | Système modulaire avec injection de dépendances et pattern Outbox/Event-driven. |
| Qualité Code | Standardisation des tests (Unit/Integration) et linters rigoureux (Ruff). |
| Performance | Optimisation ORM (prefetch_related) et monitoring
Prometheus. |
| Mentoring / DX | Doc API exhaustive (Swagger) et automatisation via Makefile. |
Insights & Défis Relevés
Performance de Consultation
Le frontend subissait des latences de plus de 5 secondes pour lister les contrats clients via les webservices SOAP natifs de l'ERP.
Migration vers une lecture SQL directe optimisée via Django ORM. Résultat : temps de réponse stabilisé à ~300ms pour 10 000+ enregistrements.
Intégrité Transactionnelle
Des erreurs de synchronisation silencieuses menaçaient l'intégrité des données de facturation entre le SI et l'ERP.
Log structuré, alerting Sentry et tests de charge intensifs. Résultat : réduction du taux d'erreur de 15% à moins de 0.1%.
06 Fiche Projet : API FTTX (Infrastructure)
L'Interface Pivot
"L'API FTTX agit comme la passerelle critique pour le catalogue de produits et la prise de commande d'un opérateur d'infrastructure. Elle orchestre les échanges en temps réel entre les services internes et les protocoles métiers télécoms (Fiber to the Home/Exchange)."
Modernisation & Orchestration
Django Ninja & Async
Transition vers une architecture asynchrone Python 3.12, utilisant Django Ninja pour des performances accrues et une validation Pydantic rigoureuse.
Kafka & Celery
Mise en place de consommateurs Kafka pour le traitement en temps réel des messages du catalogue primaire, couplés à Celery pour la gestion des files d'attente.
Industrialisation & Qualité
| Rigueur Dev | Linter Ruff, Typage MyPy et suite Pytest avec couverture automatisée. |
| Monitoring | OpenMetrics via Prometheus et tracking d'erreurs en production avec Sentry. |
| Sécurité | Authentification JWT centralisée via Keycloak. |
| Documentation | MkDocs avec schémas Mermaid et Swagger OpenAPI auto-généré. |
Insights & Défis Relevés
Pourquoi Django Ninja ?
"Pour la vitesse (Pydantic), le support natif de l'asynchrone et la réduction drastique du code boilerplate par rapport à DRF, tout en garantissant une documentation API toujours à jour."
Scaling Kafka & Workers
"Déportation des traitements lourds vers des workers Celery et surveillance constante des offsets Kafka pour garantir une absorption fluide des pics de messages."
Expertise Déployée
Période
Sept. 2023 — Fév. 2026