[{"data":1,"prerenderedAt":197},["Reactive",2],{"navigation":3,"/projects/caramaps":63,"/projects/caramaps-surround":168},[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":29,"_dir":64,"_draft":65,"_partial":65,"_locale":66,"title":28,"description":67,"order":68,"date":69,"period":70,"role":71,"image":72,"tags":74,"type":78,"freelance":65,"salarie":79,"body":80,"_type":163,"_id":164,"_source":165,"_file":166,"_extension":167},"projects",false,"","Annuaire collaboratif de services pour camping-caristes",6,"2013-11","Nov. 2013 - Juil. 2016","Lead Web Developer",{"src":73},"/projects/caramaps/logo.svg",[75,76,77],"PHP","MySQL","Google Maps","Salarié",true,{"type":81,"children":82,"toc":158},"root",[83,92,111,137,143,148,153],{"type":84,"tag":85,"props":86,"children":88},"element","h2",{"id":87},"voyager-sans-se-demander-où-faire-le-plein",[89],{"type":90,"value":91},"text","Voyager sans se demander où faire le plein",{"type":84,"tag":93,"props":94,"children":95},"p",{},[96,98,109],{"type":90,"value":97},"Un camping-cariste qui prend la route a deux questions très concrètes en tête : où faire le plein d'électricité, et où vidanger les eaux usées. ",{"type":84,"tag":99,"props":100,"children":103},"a",{"href":101,"target":102},"https://www.caramaps.com","_blank",[104],{"type":84,"tag":105,"props":106,"children":107},"strong",{},[108],{"type":90,"value":28},{"type":90,"value":110}," y répond avec un annuaire de services : campings, aires de service, accueil à la ferme. Autour de cette base de données collaborative gravite tout un ensemble d'outils destinés à rendre le voyage des membres plus aisé, sur le site comme sur l'application mobile.",{"type":84,"tag":93,"props":112,"children":113},{},[114,116,121,123,128,130,135],{"type":90,"value":115},"De novembre 2013 à juillet 2016, chez Nala Multimedia dans la région bordelaise, j'étais Lead Web Developer et responsable du développement de ce projet. La plateforme réunissait alors ",{"type":84,"tag":105,"props":117,"children":118},{},[119],{"type":90,"value":120},"150 000 points d'intérêt",{"type":90,"value":122}," et ",{"type":84,"tag":105,"props":124,"children":125},{},[126],{"type":90,"value":127},"50 000 membres",{"type":90,"value":129},". La majorité de ces données était saisie par l'équipe elle-même, et environ ",{"type":84,"tag":105,"props":131,"children":132},{},[133],{"type":90,"value":134},"10 %",{"type":90,"value":136}," provenaient des contributeurs de la communauté.",{"type":84,"tag":85,"props":138,"children":140},{"id":139},"faire-tenir-150-000-points-sur-une-carte",[141],{"type":90,"value":142},"Faire tenir 150 000 points sur une carte",{"type":84,"tag":93,"props":144,"children":145},{},[146],{"type":90,"value":147},"L'enjeu formait une chaîne : agréger un grand nombre de données, les organiser efficacement, puis rendre la recherche aisée et rapide pour les membres. Dit avec mes mots : faire tenir ça sur une Google Maps, c'était chaud. Une carte ne pardonne rien, le membre voit immédiatement si les résultats sont incomplets ou lents à s'afficher.",{"type":84,"tag":93,"props":149,"children":150},{},[151],{"type":90,"value":152},"La recherche géographique tournait sur du MySQL brut. Pas de PostGIS, pas d'Elasticsearch : le socle était PHP et MySQL, et c'est là-dessus qu'il fallait la servir sur 150 000 points d'intérêt. Ce genre de contrainte ne laisse aucune marge : pas de moteur spécialisé pour rattraper une requête mal pensée ou une donnée mal structurée. Tout se jouait dans la façon d'organiser les points en base.",{"type":84,"tag":93,"props":154,"children":155},{},[156],{"type":90,"value":157},"Aujourd'hui encore, Caramaps est en ligne, bien après mon départ : le projet a survécu. En parallèle, j'intervenais chez Nala Multimedia sur de nombreux autres projets internes ou en prestation, notamment des sites e-commerce, sans fort trafic.",{"title":66,"searchDepth":159,"depth":159,"links":160},2,[161,162],{"id":87,"depth":159,"text":91},{"id":139,"depth":159,"text":142},"markdown","content:2.projects:6.caramaps.md","content","2.projects/6.caramaps.md","md",[169,183],{"_path":26,"_dir":64,"_draft":65,"_partial":65,"_locale":66,"title":25,"description":170,"order":171,"date":172,"period":173,"role":174,"image":175,"tags":177,"type":180,"freelance":79,"salarie":65,"_type":163,"_id":181,"_source":165,"_file":182,"_extension":167},"Plateforme de livraison à la demande, avant Uber Eats en France",5,"2013-01","Janv. - Nov. 2013","CTO & co-fondateur",{"src":176},"/projects/urdoor/card.png",[75,76,178,77,179],"Twilio","DevOps","Co-fondateur","content:2.projects:5.urdoor.md","2.projects/5.urdoor.md",{"_path":32,"_dir":64,"_draft":65,"_partial":65,"_locale":66,"title":31,"description":184,"order":185,"date":186,"period":187,"role":188,"image":189,"tags":191,"type":78,"freelance":65,"salarie":79,"_type":163,"_id":195,"_source":165,"_file":196,"_extension":167},"Data Management Platform pour mieux connaître sa clientèle et lui parler",7,"2016-07","Juil. 2016 - Juil. 2018","Fullstack Lead Developer",{"src":190},"/projects/naxxt/card.png",[75,192,193,194,179],"Node.js","Vue.js","MongoDB","content:2.projects:7.naxxt.md","2.projects/7.naxxt.md",1788691436357]