Aller au contenu

Ingénierie produit sur l’ensemble de la pile technologique

Cinq années à livrer des produits destinés aux clients, des services côté serveur, des systèmes de données, des migrations en direct et l’infrastructure nécessaire à leur exploitation.

Chronologie

  1. Covent

    Ingénieur frontend senior → Responsable d’équipe

    Aujourd’hui

    J’ai rejoint Covent, anciennement Dispo Genius, comme ingénieur frontend senior avant de devenir responsable d’équipe. Je suis responsable de l’architecture frontend, je livre des systèmes côté serveur, je définis les normes d’ingénierie et j’accompagne trois ingénieurs.

    • J’ai proposé Covent MCP et l’ai mené de l’idée à la production. Le service Go a livré 23 outils en lecture seule avec OAuth 2.0 et PKCE, un accès cloisonné par tenant, des garde-fous sur les crédits, une journalisation structurée, un état PostgreSQL, des analyses et de la documentation. J’ai conçu sa chaîne de livraison sur EC2 avec transfert de l’image Docker, contrôles de disponibilité de la base de données, sauvegardes, migrations, contrôles d’intégrité progressifs, retour arrière et rapports Slack.

    • J’ai conçu et livré Covent Spotlight, un système de recherche inspiré de Mac Spotlight, puis l’ai extrait dans le package partagé @covent/spotlight adopté par Inbox et Prospecting. Il coordonne des sources locales et côté serveur, l’annulation, la pagination, la navigation au clavier et la conservation de l’état. Prospecting utilise Fuse.js pour la recherche approximative. Un client a qualifié l’expérience de révolutionnaire.

    • J’ai réduit le JavaScript chargé au premier affichage sur six routes en différant les providers lourds, les interfaces adossées à des SDK, les onglets et boîtes de dialogue inactifs, ainsi que le code propre à chaque route. Les paquets de routes de la compilation de production ont diminué de 26 à 40 %, notamment de 482 à 295 kB pour l’intégration et de 808 à 487 kB pour les campagnes d’annonces. Le PDG de Covent a qualifié le résultat de nette amélioration.

    • Je dirige et accompagne une équipe de trois personnes tout en étant responsable du code frontend, en révisant les travaux produit et d’architecture, en définissant les standards d’ingénierie et en restant actif dans le code.

    • J’ai pris en charge la transition de Covent depuis son frontend CRA historique vers une plateforme native Next.js et React. J’ai maintenu le pont de navigation et d’authentification entre V1 et V2 pendant leur coexistence, puis supprimé l’iframe et la couche d’API historique lors de la bascule.

    • J’ai remplacé la génération de messages multi-agents précalculée par un flux à la demande, réduisant de 96 % les appels aux modèles dans le cas documenté et faisant passer les dépenses mensuelles d’environ 9 000 $ à environ 700 $.

    • J’ai conçu de bout en bout la Prospecting Insights API avec Django et PostgreSQL, notamment les requêtes d’agrégation et de fenêtrage, les histogrammes de prix, le classement des principaux investisseurs, les clés de cache canoniques, les tests et l’intégration frontend typée.

    • J’ai restructuré Investor Prospecting autour d’API immobilières en temps réel, de couches WebGL Mapbox, de recherches par lieu, point et polygone, d’un état client borné, de l’annulation des requêtes obsolètes et d’un accumulateur FIFO de 10 000 propriétés.

    • J’ai conçu un Inbox en temps réel avec conversations virtualisées, WebSockets capables de se reconnecter, envois optimistes de SMS et d’e-mails avec nouvelle tentative et retour arrière, pièces jointes, traduction, modèles, planification, routage par URL et préservation du défilement.

    • J’ai conçu et livré Auth 2.0 avec des parcours XState, une identité durable dans Zustand, un rafraîchissement sérialisé des jetons, OTP, les SSO Google et GHL, le choix du site, la synchronisation entre onglets et la restauration des redirections.

    • J’ai remplacé de manière autonome Vercel Flags par LaunchDarkly sur les surfaces rendues côté serveur et côté client, avec évaluation tolérante aux pannes, synchronisation d’identité, abonnements réactifs, valeurs de repli et tests de régression.

    • J’ai conçu des circuits de livraison contrôlés avec Vercel et GitHub Actions, le suivi des publications et retours arrière, l’observabilité Sentry et des contrôles qualité E2E, Lighthouse et Unlighthouse.

    • React
    • TypeScript
    • Next.js
    • Go
    • Django
    • PostgreSQL
    • XState
    • Zustand
    • LaunchDarkly
    • WebSockets
    • AWS EC2
    • Sentry
  2. Metal

    Ingénieur full-stack

    J’ai pris en charge de bout en bout les opérations de données, les communications, la persistance des brouillons, la formation frontend et les outils de plateforme dans une startup de levée de fonds par IA soutenue par Y Combinator et Andreessen Horowitz.

    • J’ai livré un DataOps Portal versionné en 20 jours, prenant en charge le rendu de tables arbitraires, les instantanés, les remplacements au niveau des champs et les données relationnelles issues de sources en couches.

    • J’ai conçu de bout en bout, côté interface comme côté serveur, un système multiniveau de brouillons de notes avec persistance Redis et repli sur localStorage.

    • J’ai travaillé sur Networks and Communications Hub, livré Communications Module dans les délais et documenté le projet dans une rétrospective technique.

    • J’ai animé des sessions Frontend 101 pour les ingénieurs côté serveur sur le rendu des navigateurs, le DOM et le CSSOM, les mécanismes internes de React et l’évolution de HTML, CSS et Next.js.

    • J’ai conçu avec Nuqs un système global de réglages piloté par URL et contribué aux fondations Vitest, Playwright, LaunchDarkly et Mixpanel.

    • React
    • TypeScript
    • Next.js
    • Redis
    • Nuqs
    • Vitest
    • Playwright
    • LaunchDarkly
    • Mixpanel
    • NestJS
  3. Bleed AI

    Ingénieur logiciel

    J’ai travaillé sur un produit d’IA en phase initiale, des livraisons pour les clients d’une agence et mes premiers services côté serveur en production.

    • J’ai conçu UpAutomate, un produit de rapprochement d’offres Upwork utilisant une notation par LLM, des filtres imbriqués et les API OpenAI. Il a atteint 150 utilisateurs en période d’essai.

    • J’ai livré des applications React et Next.js pour des clients de l’agence.

    • J’ai conçu des services FastAPI et déployé des charges de travail conteneurisées sur GCP avec Docker.

    • React
    • Next.js
    • FastAPI
    • Docker
    • Google Cloud
    • OpenAI
    • Python
  4. TimeXperts / Workforce Software

    Ingénieur logiciel associé → Ingénieur logiciel

    J’ai travaillé au sein de Workforce Software par l’intermédiaire de TimeXperts, en livrant des implémentations de gestion des temps et des présences pour Canon, Ornge et National Gypsum.

    • J’ai remanié des implémentations de gestion des temps et des présences pour Canon, Ornge et National Gypsum, contribuant à plus de 100 000 $ de chiffre d’affaires auprès de ces trois entreprises clientes.

    • J’ai conçu un Jira Comment Generator interne avec Next.js qui a réduit de 30 % le temps de création des commentaires.

    • Je suis passé du poste d’ingénieur logiciel associé à celui d’ingénieur logiciel en environ trois mois.

    • React
    • TypeScript
    • JavaScript
    • Next.js
    • HTML
    • CSS
  5. ZUE

    Ingénieur logiciel junior

    J’ai travaillé chez ZUE, une entreprise d’externalisation des processus métier issue des opérations de santé.

    • J’ai conçu un tableau de bord de reporting client qui facilitait la consultation des données opérationnelles et de santé.

    • J’ai conçu un système de gestion des présences connecté au dispositif biométrique de pointage de l’entreprise.

    • J’ai utilisé Python pour nettoyer et normaliser des rapports de santé, de livraison et de coursiers issus de plusieurs sources avant leur ingestion dans Power BI, remplaçant la préparation répétitive de feuilles de calcul.

    • React
    • MUI
    • Bootstrap
    • HTML
    • CSS
    • Python
    • Pandas
  6. Missions indépendantes pour des clients

    Ingénieur logiciel freelance

    Six mois de missions professionnelles centrées sur des produits de cryptomonnaie et une livraison full-stack.

    • J’ai conçu un portefeuille de cryptomonnaies full-stack avec des visualisations des avoirs, des prix et de l’historique, ainsi que des parcours d’achat, de vente, de transfert et de transaction avec React, Ionic, Redux, Express et MongoDB.

    • J’ai conçu une plateforme éducative payante pour un client avec Flask et SQLAlchemy, comprenant des comptes enseignant et étudiant, des classes, des devoirs, des évaluations pondérées, des tentatives répétées, des corrections et des classements.

    • React
    • Express
    • MongoDB
    • Flask
    • SQLAlchemy

Projets indépendants

Des systèmes que j’ai initiés et construits de bout en bout, dont des produits Covent utilisés en production et des projets Go privés.

De l’idée à la production chez Covent

Covent MCP

Un système Covent que j’ai proposé et pris en charge de l’idée à la production. Son service Go a livré 23 outils en lecture seule avec OAuth 2.0 et PKCE, un accès cloisonné par tenant, des garde-fous sur les crédits, une journalisation structurée, un état PostgreSQL, des analyses et une livraison EC2 documentée.

  • Go
  • MCP
  • OAuth 2.0
  • PostgreSQL
  • AWS EC2
De l’idée à la production chez Covent

Covent Spotlight

Un package de recherche réutilisable inspiré de Mac Spotlight, que j’ai conçu et mené de l’idée à la production chez Covent. Ce package privé compose des sources locales et côté serveur, prend en charge la pagination annulable et la navigation au clavier, et utilise Fuse.js dans Prospecting pour la recherche approximative. Il est utilisé en interne aujourd’hui, avec une publication npm prévue à terme.

  • React
  • TypeScript
  • Fuse.js
  • Async APIs
  • AbortSignal
De l’idée à la production chez Covent

Covent Codex

Une CLI Go qui se met à jour automatiquement pour distribuer des instructions, compétences et flux de travail Codex versionnés dans plusieurs dépôts sans les ajouter au code produit. Elle préserve le contenu personnel des fichiers AGENTS.md au moyen de blocs gérés, détecte les modifications locales grâce à des sommes de contrôle SHA-256, affiche un aperçu coloré des différences ligne par ligne avant la synchronisation, suit plusieurs dépôts cibles et publie des versions macOS dont les sommes de contrôle sont vérifiées.

  • Go
  • CLI
  • SHA-256
  • GitHub Actions
Projet privé

Daftar

Un compagnon professionnel privé en Go qui organise projets, étapes et dossiers professionnels sous forme de données typées et de tableaux de bord rendus côté serveur.

  • Go
  • net/http
  • html/template
  • Typed JSON
En cours

Khana

Un outil privé de suivi nutritionnel qui enregistre les calories hebdomadaires, estime la perte moyenne de graisse à partir du TDEE et présente des graphiques ordonnés, des rapports rendus côté serveur et des journaux. En cours de développement.

  • Go
  • net/http
  • html/template
  • JSON
  • go-chart
En cours

Nethergate

Un outil d’amorçage de serveur Minecraft en cours de développement, qui détermine les versions de Mojang, télécharge le serveur sous forme de flux, calcule son empreinte SHA-1 et rejette les sommes de contrôle non concordantes.

  • Go
  • HTTP streaming
  • SHA-1
  • Mojang API

Systèmes antérieurs et projets collaboratifs

Des projets de production, académiques et collaboratifs qui ont établi mes bases en développement serveur, en algorithmique, en logiciels de bureau et en apprentissage automatique appliqué.

J’ai commencé à programmer à 11 ans avec Turbo C et C. Dès 2017, j’utilisais Visual Basic pour créer un calculateur de coûts de construction qui estimait les quantités de matériaux et le coût total à partir des dimensions de la maison et des prix locaux des matériaux. Ces premiers travaux ont mené aux systèmes présentés ci-dessous.

Projet en production

Truck Fleet Management

J’ai conçu un système de suivi de flotte avec une gestion des entreprises et des camions fondée sur les rôles, l’affichage cartographique des dernières positions et un historique des déplacements. L’article associé explique comment j’ai déplacé les appels répétés à l’API de suivi vers un microservice NestJS planifié.

  • React
  • TypeScript
  • NestJS
  • MongoDB
  • Google Maps
Projet collaboratif

Dynamic Programmer

J’ai co-développé une application de bureau Electron qui présente dix problèmes de programmation dynamique à travers des saisies interactives et des solutions calculées.

  • Electron
  • JavaScript
  • HTML
  • CSS
Projet académique

Visualized Pathfinding GUI

J’ai conçu un visualiseur A* interactif avec Python et Pygame, comprenant des obstacles définis par l’utilisateur, une heuristique de Manhattan et une reconstruction animée du chemin.

  • Python
  • Pygame
  • Tkinter
  • A*
Projet collaboratif

Sentiment Analysis

J’ai co-développé un classificateur Bi-LSTM des émotions textuelles sur six classes, avec une précision annoncée de 88,9 % sur environ 22 000 commentaires étiquetés.

  • Python
  • TensorFlow
  • Keras
  • Bi-LSTM
  • GloVe