[{"data":1,"prerenderedAt":213},["Reactive",2],{"navigation":3,"/projects/bme":63,"/projects/bme-surround":163},[4,8,55,59],{"title":5,"_path":6,"icon":7},"Services","/services","i-heroicons-briefcase",{"title":9,"_path":10,"children":11,"icon":54},"Projets","/projects",[12,15,18,21,24,27,30,33,36,39,42,45,48,51],{"title":13,"_path":14},"Groupama Gan Vie","/projects/groupama",{"title":16,"_path":17},"Smart Moov","/projects/smartmoov",{"title":19,"_path":20},"Noci.io","/projects/noci",{"title":22,"_path":23},"Bordeaux Métropole Énergies","/projects/bme",{"title":25,"_path":26},"UrDoor","/projects/urdoor",{"title":28,"_path":29},"Caramaps","/projects/caramaps",{"title":31,"_path":32},"Naxxt","/projects/naxxt",{"title":34,"_path":35},"Good Morning Business","/projects/gmb",{"title":37,"_path":38},"Fonxio","/projects/fonxio",{"title":40,"_path":41},"Sup de Pub - Groupe INSEEC","/projects/supdepub",{"title":43,"_path":44},"SeoBeach","/projects/seobeach",{"title":46,"_path":47},"Seoizi","/projects/seoizi",{"title":49,"_path":50},"Rent A Bike In France","/projects/rentabike",{"title":52,"_path":53},"Rudy Som","/projects/rudysom","i-heroicons-queue-list",{"title":56,"_path":57,"icon":58},"Parcours","/parcours","i-heroicons-map",{"title":60,"_path":61,"icon":62},"Contact","/contact","i-heroicons-envelope",{"_path":23,"_dir":64,"_draft":65,"_partial":65,"_locale":66,"title":22,"description":67,"order":68,"date":69,"period":70,"role":71,"image":72,"tags":74,"type":80,"freelance":81,"salarie":65,"body":82,"_type":158,"_id":159,"_source":160,"_file":161,"_extension":162},"projects",false,"","Tunnel de souscription et espace client Gaz de Bordeaux",4,"2024-06","Juin 2024 - Mars 2025","Lead Developer Frontend",{"src":73},"/projects/bme/card.png",[75,76,77,78,79],"Nuxt","Vue.js","Symfony","Design System","Figma","Freelance",true,{"type":83,"children":84,"toc":152},"root",[85,94,100,105,111,116,136,142,147],{"type":86,"tag":87,"props":88,"children":90},"element","h2",{"id":89},"cinq-étapes-pour-souscrire-une-offre-de-gaz",[91],{"type":92,"value":93},"text","Cinq étapes pour souscrire une offre de gaz",{"type":86,"tag":95,"props":96,"children":97},"p",{},[98],{"type":92,"value":99},"Bordeaux Métropole Énergies exploite la marque Gaz de Bordeaux. Je suis intervenu chez eux en freelance de juin 2024 à mars 2025, en hybride sur Bordeaux, au moment où l'entreprise déployait sa nouvelle identité visuelle et devait refaire son tunnel de souscription. Cinq étapes en apparence seulement : c'est par là que passent les nouveaux clients, et derrière chaque champ se cache une règle métier. Le volume de ces règles a été le vrai sujet du chantier, bien plus que l'interface.",{"type":86,"tag":95,"props":101,"children":102},{},[103],{"type":92,"value":104},"Comme Lead Developer Frontend, j'ai construit ce tunnel en Nuxt 3, face à un back Symfony. Une bonne partie de mon travail a consisté à ne pas rester dans mon couloir : j'ai coaché les développeurs backend sur la conception de leurs contrats d'API, pour que le front consomme des données déjà propres au lieu de rattraper en bout de chaîne ce qui aurait dû être tranché côté serveur. Du temps investi en amont plutôt qu'en correctifs à rattraper plus tard.",{"type":86,"tag":87,"props":106,"children":108},{"id":107},"un-espace-client-qui-nétait-pas-au-programme",[109],{"type":92,"value":110},"Un espace client qui n'était pas au programme",{"type":86,"tag":95,"props":112,"children":113},{},[114],{"type":92,"value":115},"Le second périmètre, le nouvel espace client Gaz de Bordeaux, ne figurait pas dans la feuille de route. Je l'ai conçu de ma propre initiative : factures, relevés, estimations, suivi de consommation, paiement, contact client. J'ai dessiné toutes les maquettes moi-même sur Figma, un outil que j'ai appris pour l'occasion. Je ne me présente pas comme un expert de l'UI, je reste mesuré sur ce terrain, mais j'ai pris le sujet au sérieux et posé des composants réutilisables d'un écran à l'autre.",{"type":86,"tag":95,"props":117,"children":118},{},[119,121,127,129,134],{"type":92,"value":120},"La proposition a assez plu pour que la décision se prenne vite : BME a mobilisé ",{"type":86,"tag":122,"props":123,"children":124},"strong",{},[125],{"type":92,"value":126},"6 développeurs",{"type":92,"value":128}," sur ce chantier, quatre au back et deux au front dont moi. J'ai réalisé ",{"type":86,"tag":122,"props":130,"children":131},{},[132],{"type":92,"value":133},"80% du front en un mois",{"type":92,"value":135},".",{"type":86,"tag":87,"props":137,"children":139},{"id":138},"un-actif-qui-reste-après-le-départ-du-freelance",[140],{"type":92,"value":141},"Un actif qui reste après le départ du freelance",{"type":86,"tag":95,"props":143,"children":144},{},[145],{"type":92,"value":146},"Le plus utile, dans cette mission, n'est pas un écran : c'est ce qui a survécu à mon départ. J'ai développé moi-même un design system en Vue 3, avec un vrai focus sur l'expérience développeur : des composants qu'on branche sans avoir à en décortiquer le fonctionnement, des conventions qui tiennent dans la durée. Il est aujourd'hui réutilisé sur beaucoup d'autres applications de BME. C'est l'actif le plus durable que j'ai laissé à cette équipe, et il sert encore alors que ma mission est terminée.",{"type":86,"tag":95,"props":148,"children":149},{},[150],{"type":92,"value":151},"J'ai aussi formé l'autre développeur frontend de l'équipe, par pair programming, revues de code, leçons dédiées et coaching en temps réel. Il est monté en compétences très rapidement, et il est aujourd'hui Lead Front chez eux. C'est l'autre trace concrète de mon passage.",{"title":66,"searchDepth":153,"depth":153,"links":154},2,[155,156,157],{"id":89,"depth":153,"text":93},{"id":107,"depth":153,"text":110},{"id":138,"depth":153,"text":141},"markdown","content:2.projects:4.bme.md","content","2.projects/4.bme.md","md",[164,197],{"_path":20,"_dir":64,"_draft":65,"_partial":65,"_locale":66,"title":19,"description":165,"order":166,"date":167,"period":168,"role":169,"image":170,"images":172,"tags":188,"type":194,"freelance":81,"salarie":81,"_type":158,"_id":195,"_source":160,"_file":196,"_extension":162},"Chatbots IA de recommandation produit et livechat maison",3,"2019-01","Janv. 2019 - Oct. 2021, puis en freelance","Lead Developer puis CTO",{"src":171},"/projects/noci/card.png",[173,176,179,182,185],{"title":174,"src":175},"Chatbot","/projects/noci/chatbot.png",{"title":177,"src":178},"Recommandation produit","/projects/noci/product.png",{"title":180,"src":181},"Construction d'un questionnaire","/projects/noci/survey.png",{"title":183,"src":184},"Statistiques","/projects/noci/stats.png",{"title":186,"src":187},"Construction d'un algorithme","/projects/noci/algorithm.png",[189,76,190,191,192,193],"Node.js","Kubernetes","MongoDB","MySQL","IA générative","Salarié puis Freelance","content:2.projects:3.noci.md","2.projects/3.noci.md",{"_path":26,"_dir":64,"_draft":65,"_partial":65,"_locale":66,"title":25,"description":198,"order":199,"date":200,"period":201,"role":202,"image":203,"tags":205,"type":210,"freelance":81,"salarie":65,"_type":158,"_id":211,"_source":160,"_file":212,"_extension":162},"Plateforme de livraison à la demande, avant Uber Eats en France",5,"2013-01","Janv. - Nov. 2013","CTO & co-fondateur",{"src":204},"/projects/urdoor/card.png",[206,192,207,208,209],"PHP","Twilio","Google Maps","DevOps","Co-fondateur","content:2.projects:5.urdoor.md","2.projects/5.urdoor.md",1788691436342]