Bonjour, je suis

Churchill
Atchedji

Churchill Atchedji

Ingénieur Backend - NestJS / TypeScript - Pipelines de données & architectures multi-tenant

Je conçois des systèmes backend NestJS/TypeScript multi-tenant, des pipelines de données asynchrones et des intégrations B2B - de l'architecture au déploiement Kubernetes.

Profil professionnel

01 / À propos

Ingénieur backend spécialisé NestJS / TypeScript, avec une expérience en production des architectures multi-tenant : isolation par tenant, RBAC granulaire, cache par tenant avec invalidation contrôlée, authentification via Keycloak/JWT. Je conçois des systèmes robustes, testables et maintenables, avec une séparation claire des responsabilités à chaque couche.

Je conçois des pipelines de données complets : ingestion SFTP, traitements batch asynchrones via GCP Pub/Sub, stockage sur Google Cloud Storage, analytique BigQuery. J'intègre les systèmes externes (SFTP, HTTP, email, webhooks) avec retry logic, idempotence et observabilité via Prometheus et logs structurés.

J'assume la chaîne complète de delivery - architecture, tests (Jest, Supertest), containerisation Docker, déploiement Kubernetes via Helm, CI/CD GitLab avec semantic-release. J'ai également conçu et publié une bibliothèque NestJS interne consommée par plusieurs services, de la conception de l'API à la distribution sur registre npm privé.

4+
ans d'expérience
15M+
tickets/jour
Master
Informatique, parcours E-Services · Université de Lille · 2022 - 2024 · Mention Très Bien
Licence
Informatique · Université de Lille · 2019 - 2022 · Mention Bien

Stack technique

02 / Compétences

01Backend

  • Node.js
  • TypeScript
  • NestJS
  • REST API

02Architecture

  • Microservices
  • Event-Driven
  • Multi-tenant

03Auth & Sécurité

  • Keycloak
  • JWT
  • RBAC
  • OAuth2

04Bases de données

  • MongoDB
  • PostgreSQL
  • BigQuery

05Messaging & Data

  • GCP Pub/Sub
  • SFTP
  • Webhooks
  • GCS

06DevOps & Cloud

  • Docker
  • Kubernetes
  • Helm
  • Helmfile
  • GCP
  • GitHub Actions
  • GitLab CI

07Tests

  • Jest
  • Supertest
  • Integration Testing

08Frontend

  • Angular
  • React
  • SCSS
  • HTML
  • CSS

Réalisations

03 / Projets

  1. 01

    Ernest Net

    Calculateur de salaire brut en net pour la France, avec un simulateur d'augmentation et un comparateur de deux offres d'emploi : cotisations, prélèvement à la source et estimation du net après impôt, en français et en anglais. Site React + TypeScript pré-rendu au build ; tous les calculs se font dans le navigateur. Tests Vitest, versions publiées par semantic-release et déploiement continu sur VPS (GitHub Actions, rsync, Caddy). Développement assisté par l'IA.

    Projet personnelReact · TypeScript · Vite · Vitest · GitHub Actions · Caddy · Claude Codeernestnet.fr
  2. 02

    Portfolio Platform

    Développement d'un site portfolio statique en Astro avec toggle dark/light et FR/EN. Déploiement en production sur VPS OVH avec Caddy en reverse proxy et certificats TLS automatiques. Automatisation du build et du déploiement par une pipeline CI/CD GitHub Actions ; configuration et administration du serveur via Ansible over SSH (provisioning, mises à jour, secrets).

    Projet personnelAstro · TypeScript · Tailwind · Caddy · Ansible · GitHub Actions
  3. 03

    Data Export Pipeline

    Conception d'un microservice NestJS automatisant la génération et la livraison d'exports CSV pour plus de 10 tenants en production, avec des volumétries allant de milliers à plusieurs millions de lignes selon la fréquence (quotidienne, hebdomadaire, mensuelle) et le type de données. Patterns clés : architecture event-driven via GCP Pub/Sub, verrous MongoDB pour la concurrence multi-instances, retry idempotent sur les uploads SFTP, tâches cron orchestrant la planification par tenant, observabilité Prometheus et logs structurés.

    En production · LimpidiusNestJS · TypeScript · MongoDB · GCP Pub/Sub · Docker · Kubernetes · Helm
  4. 04

    Enrichissement CO2e des tickets

    Conception d'un flux d'enrichissement des tickets de caisse : rapprochement des produits passés en caisse avec un catalogue produit synchronisé en continu (données d'empreinte carbone), restitution aux clients finaux par email. Reporting CO2e en production sur environ 1 490 magasins Coopératives U.

    En production · LimpidiusNestJS · TypeScript · MongoDB · GCP Pub/Sub
  5. 05

    Rattrapage de 7,8M de transactions

    Conception et exécution d'un traitement batch reprenable pour le rattrapage de 7,8M de transactions de production sur données live, sans interruption de service et sans doublon.

    En production · LimpidiusNestJS · TypeScript · MongoDB · Batch
  6. 06

    Data Import Pipeline

    Refonte complète du système d'ingestion de données NestJS en environnement multi-tenant. Traitement de volumétries hétérogènes selon le type d'import : de centaines de lignes pour les référentiels à plusieurs millions pour les données métier volumineuses. Fonctionnalités livrées : ingestion SFTP automatisée avec validation et mapping configurable, écriture directe en base optimisée pour les forts volumes, lignes en erreur exportées pour rejeu (CSV), dashboard Angular de suivi des statuts avec téléchargement des fichiers originaux et mappés.

    En production · LimpidiusNestJS · TypeScript · MongoDB · PostgreSQL · SFTP · Angular · Docker · Kubernetes
  7. 07

    Internal NPM Library

    Conception, packaging et distribution d'une bibliothèque NestJS d'extraction et d'enrichissement de données produit à partir du contenu des tickets de caisse retail, réutilisée par plusieurs services pour les opérations liées aux produits. Persistance MongoDB et cache configurable. Publication sur un registre npm privé self-hosted, avec versioning et changelog automatisés via semantic-release. Workflow de release intégré au pipeline CI/CD GitLab avec linting, tests et publication automatisée par bumps conventionnels.

    En production · LimpidiusNestJS · TypeScript · MongoDB · npm · semantic-release · GitLab CI · Self-hosted Registry
  8. 08

    Modern Receipt Viewer Refactor

    Refonte complète du viewer web de tickets de caisse destiné aux clients finaux des enseignes retail (PWA Angular, multi-tenant). Migration d'une base legacy vers une architecture Angular moderne, thèmes multi-tenant en SCSS, conformité RGAA 4.1 / WCAG 2.1 AA, gestion fine des états. Développement assisté par Claude Code, avec review humaine systématique du code généré et des choix d'architecture.

    En production · LimpidiusAngular · TypeScript · SCSS · PWA · RGAA / WCAG · Claude Code

Travaillons ensemble

04 / Contact

Vous avez un projet ou une opportunité à partager ? Je lis tous les messages.