Lead développeur back-end spécialisé en architectures distribuées, j’accompagne la conception et la modernisation de systèmes complexes avec une forte exigence de qualité et de structuration. Expert des environnements Node.js/NestJS, je conçois des architectures robustes, scalables et maintenables, en mettant l’accent sur la modélisation métier et la solidité des fondations techniques.
Conception d'une solution en systèmes distribués pour les 2 référentiels tiers du groupe (DDD, CQRS, event-sourcing, architecture hexagonale)
Versioning et industrialisation du déploiement d'applications legacy en PHP 5.3 déployées sur un environnement OnPremise.
Conception et mise en place les différents outils permettant le versioning des applications legacy (Docker, sécurisation des secrets, nouvelle authentification OAuth2 keycloak, passage ibase -> PDO pour les base de données firebird, ...)
Rôle de lead dev: pilotage et supervision des développements relatifs la tâche de versioning, dans son ensemble
Développement d'APIs autour du datawarehouse (en NestJS, retroconcéption de procédure stockées en bdd vers un système en clean archi)
Recueil et analyse du besoin (collaboration avec les équipes métier et techniques, compréhension des contraintes On-Premise, définition des objectifs de modernisation et d’industrialisation des applications existantes)
Reprise et modernisation d’applications legacy (applications PHP 5.3 déployées en On-Premise via FTP, mise sous contrôle de version Git/GitHub, définition des stratégies de branches et des règles de versioning, mise en place de hooks Git)
Industrialisation du cycle de vie applicatif (dockerisation des applications, standardisation des environnements, préparation à la mise en place d’un pipeline CI/CD, externalisation de la configuration via variables d’environnement, suppression des secrets du code source)
Sécurisation des applicatifs (mise en place d’une nouvelle authentification OAuth2, amélioration des pratiques de gestion des accès et des configurations sensibles)
Conception d’une architecture back-end distribuée (design d’un nouveau référentiel tiers, modélisation des domaines et des flux métiers selon les principes DDD, CQRS et Event-Driven)
Mise en place d’un socle d’architecture réutilisable (implémentation des patterns Saga / Process Manager et Outbox, conception d’une structure technique générique et extensible)
Structuration du projet en monorepo (mise en place d’une approche monorepo avec Nx pour organiser domaines, applications et librairies partagées)
Gestion du versioning applicatif (mise en place de Changesets pour la gestion des versions et des évolutions contractuelles des composants)
Rédaction de la documentation technique (procédures de migration, documentation d’architecture, schémas de conception)