Leroy Merlin

Galerie

À propos du projet

1. Introduction
Travailler pour un géant du retail comme Leroy Merlin demande de la rigueur technique, mais aussi une grande capacité d'organisation.
J'ai eu l'opportunité d'intervenir sur la création d'une application web interne stratégique destinée à l'édition de devis en magasin.
Sur ce projet, j'ai occupé une position hybride et formatrice : Développeur Full-Stack au coeur du code, et Chef de Projet Adjoint.
J'ai ainsi collaboré avec et coordonné une équipe de 6 alternants (5 développeurs et 1 UI/UX Designer) pour mener ce projet à bien.

2. Le Besoin : Un outil de vente performant et flexible
L'objectif était de développer un simulateur de devis sur-mesure (notamment pour les stores).
Les employés avaient besoin d'un outil capable de : Configurer des produits complexes.
Gérer un historique de modifications. Générer des devis précis en temps réel.
Ma double responsabilité :
- Gestion de Projet :
 En tant qu'adjoint, j'ai aidé à structurer le travail de l'équipe, et m'assurer que nous suivions le cahier des charges, les maquettes et les délais. 
- Développement Full-Stack :
J'ai pris en charge des parties critiques du développement, notamment toute la partie Front-office du simulateur et la refonte du style côté Back-end.
3. La Stack Technique : Performance et Modernité
Pour garantir une expérience utilisateur fluide (proche d'une application native) tout en respectant les standards, nous avons utilisé une stack imposée mais trés pertinente pour ce type de besoin. Architecture :
- Laravel Inertia. 
Ce choix permet de lier la robustesse de Laravel (Back) avec la réactivité de React (Front) sans la complexité d'une API REST classique.
- Front-end : 
React (pour le dynamisme), Tailwind et SCSS (pour le design), avec un peu de jQuery (pour l'existant).
- Base de données :
MySQL (et exploitation de données existantes).
- Déploiement/Workflow : 
Collaboration monitorée via Github.

4. Challenges Techniques et Solutions
Le développement du simulateur a posé plusieurs défis intéressants que j'ai du résoudre techniquement :

A. Gestion d'états complexes et "Time Travel"
 Le simulateur devait permettre à l'utilisateur d'annuler une action, de revenir à une étape précédente ou de reprendre un devis là oû il l'avait laissé.
 La Solution : J'ai mis en place un systéme d'étapes pré-enregistrées.
 L'utilisation de WebSockets a permis une gestion en temps réel des données, assurant que l'état du simulateur soit toujours sauvegardé et synchronisé sans perte d'informations.

B. Intégration de l'Authentification
"à l'aveugle"
L'application devait se connecter au systéme d'authentification propre à Leroy Merlin et leur préstartaire.
Pour des raisons de confidentialité, nous n'avions pas accés au code source, seulement à des API internes et une documentation technique.
La Solution : J'ai travaillé avec l'équipe pour implémenter cette brique en nous basant strictement sur la documentation.
Nous avons dû "imaginer" les réponses du serveur pour développer localement, avant de valider le fonctionnement réel lors des phases de test.

C. Collaboration UI/UX
L'interface devait respecter à la lettre la charte graphique de Leroy Merlin.
La Solution : J'ai travaillé en binôme direct avec l'alternant UI/UX Designer.
Mon rôle a été de traduire ses maquettes en code (via Tailwind et SCSS) et d'assurer une refactorisation globale du style Back-end pour garder une coh�rence visuelle sur toute l'application.

D: l'intégration des prix des articles et leurs réductions
Les prix des articles était géré depuis une autres webApp, et les réduction etait faites via une régle de calcul que nous n'avions pa !
La solution : une équipe à était chargé de dévelloper une API pour récupéré les prix, et nous avons avancé à l'aide de nombreux test unitaire affin de garder un dévellopement cohérant !

5. Bilan
Ce projet est aujourd'hui fonctionnel (visible partiellement lors d'un devis de store en magasin).
Il m'a permis de prouver ma capacité à :
- Travailler dans un environnement "Grand Compte" avec des contraintes fortes.
- Prendre des responsabilités de gestion au sein d'une équipe de développement.
- Sur le plan technique, cette mission a renforcé mon expertise sur :
  - La puissance du combo Laravel + Inertia + React pour des développements rapides et robustes.
  - La capacité à s'adapter à des contraintes de sécurité fortes (API propriétaires). La gestion de logiques métiers complexes côté Front-end.