Techlead Front
Plateforme d'enchères temps réel
VPAuto est une plateforme de vente de véhicules d'occasion dont le cœur d'activité est les enchères. La réactivité et la cohérence des données pour tous les utilisateurs sont critiques. J'ai pris le rôle de tech lead : refacto de la codebase (Next.js, TypeScript, React Query), architecture du temps réel et gestion centralisée des accès, pour une expérience fiable et fluide.

À mon arrivée, la base technique était déjà en place (Next.js, TypeScript, React Query, React Hook Form, Husky) mais la codebase manquait de structure. J'ai proposé une refonte de l'organisation et pris le rôle de tech lead pour rendre l'architecture scalable.
Refacto et architecture des données
React Query était utilisé de façon dispersée, les fichiers éparpillés et de nombreux any empêchaient un typage solide. J'ai restructuré la codebase et mis en place une architecture cohérente pour la gestion des requêtes, du cache et de la synchronisation des données. Pour aller plus loin sur l'organisation du code avec React Query, voir cet article.
Temps réel des enchères
Pour les enchères, tous les utilisateurs doivent voir la même information au même moment. J'ai choisi EventSource (Server-Sent Events) plutôt que WebSocket : protocole HTTP standard (pare-feu, proxy, équilibrage de charge plus simples), reconnexion automatique côté client, et modèle unidirectionnel serveur → client suffisant pour les mises à jour d'enchères. Moins de surcharge serveur et intégration naturelle avec HTTP/2.
Navigation et niveaux d'accès
Next.js (SSR / SSG) assure des temps de chargement courts et un préchargement des pages à la navigation. Par ailleurs, le site devait gérer trois profils : Vendeur, Acheteur, Invité — avec des pages et des éléments de page réservés à certains rôles. J'ai utilisé le middleware Next.js pour centraliser les redirections et le parcours d'onboarding, garantissant une navigation sécurisée et cohérente selon le profil.
Au final, une plateforme plus fiable pour les enchères, une architecture maintenable et une expérience utilisateur alignée sur les enjeux métier. Ce projet a confirmé ma capacité à prendre des initiatives techniques et à structurer un produit existant pour le faire monter en qualité et en scalabilité.