Fidélisation et animation commerciale, 2015 à 2017

Loyalty Company : une plateforme de fidélisation pour les programmes de plusieurs grands comptes

Loyalty Company, groupe d'agences de marketing relationnel, conçoit pour de grands comptes des programmes de fidélisation et de stimulation des ventes : points, challenges, boutique de cadeaux, contenus et reporting. En 2016, le groupe a lancé MAX, une plateforme en marque blanche commune à tous ces programmes ; Innéair en a posé la structure et, jusqu'en 2017, en a dirigé l'équipe de développement. En 2017, Muse Motivation, l'agence du groupe consacrée à la motivation des forces de vente, a présenté MAX comme sa plateforme digitale d'animation.

Client
Loyalty Company, groupe d'agences de marketing relationnel et de fidélisation, réunies en 2017 sous les noms Kiss The Bride et Muse Motivation
Plateforme
MAX, d'abord appelée LWS : une seule application, déployée et configurée pour chaque programme client
Intervention d'Innéair
Direction de l'équipe de développement, structure de l'application et de l'API, pilotage du produit en binôme avec le product owner, authentification d'entreprise, livraisons et documentation
Technologies
  • Back-end PHP, Symfony, Doctrine
  • API REST, GraphQL
  • Interface AngularJS, React pour le back-office
  • Identité SAML 2.0, JWT, LDAP
  • Asynchrone IronMQ
  • Données MySQL
  • Qualité Codeception, Sonar, Sentry
Grands comptes utilisateurs
  • Michelin
  • Engie
  • Alain Afflelou
  • L'Oréal
  • La Vie Claire

Une seule application pour tous les programmes

Jusque-là, chaque programme était un projet dédié, construit et personnalisé pour son client. Avec MAX, d'abord appelée LWS, le groupe a choisi une seule application en marque blanche, dupliquée pour chaque client avec sa propre configuration : chaque fonctionnalité développée pour l'un profite à tous. L'équipe a déployé une instance par programme, configurée par un fichier de paramètres propre à chacun.

En janvier 2016, Innéair a posé la structure de l'application Symfony et de son API, puis, pendant dix-neuf mois, a dirigé une équipe qui a compté jusqu'à cinq développeurs et piloté la plateforme en binôme avec le product owner, sous la responsabilité du directeur technique et du directeur du numérique du groupe. D'octobre 2016 à mai 2017, l'équipe a mis en production dix programmes sur cette même plateforme, dont ceux de Michelin, d'Euromaster, de PepsiCo et de GroupAuto, puis les a livrés à chaque nouvelle version ; Innéair a elle-même préparé la configuration de production de plusieurs d'entre eux, dont ceux de PepsiCo et d'Euromaster.

Se brancher sur les systèmes d'information des grands comptes

Chaque client voulait son programme à sa marque, avec ses fonctionnalités et ses règles d'accès. Selon le programme, les participants s'authentifiaient par un formulaire, par un annuaire LDAP, par l'authentification unique (SSO) de leur entreprise ou par un lien signé. Innéair a piloté ces quatre modes et intégré elle-même les deux derniers : l'authentification unique SAML 2.0, pour des programmes comme celui de Michelin, puis la connexion par lien signé JWT depuis le système d'information du client.

Des modules qui se testent isolément

MAX s'appuyait sur le système central du groupe, qui tenait le catalogue, les commandes et les comptes de points. Innéair a regroupé les modules de la plateforme dans un seul dépôt, puis a sorti le reporting dans un module qui se teste et se publie à part. Innéair a construit ce reporting : ses tableaux de bord et ses classements, comme les produits et les catégories les plus commandés, lisaient la base analytique du système central. Quelques semaines plus tard, Innéair a regroupé de la même façon les appels au système central dans un module dédié.

Ne plus faire attendre l'animateur

Un animateur pouvait créditer ou débiter des points à de nombreux participants en déposant un fichier, mais l'interface restait bloquée tant que durait le traitement. Innéair a conçu le passage de ces imports en tâches asynchrones : le fichier est découpé en tâches qu'une file de messages distribue, et un courriel prévient l'animateur à la fin. Ce nouvel import est passé en production après le départ d'Innéair.

Livrer souvent sans dépendre d'une personne

Les versions de MAX se succédaient à un rythme soutenu. Innéair a décrit les six environnements de la plateforme : chaque branche est validée en recette avant de rejoindre une branche de développement qui doit toujours rester stable, et chaque livraison passe par une validation du client. Elle pilotait la préparation des versions, avec leurs scripts de migration et leurs notes de version, et a consolidé les tests automatisés.

Innéair a aussi écrit la documentation technique pour que chaque développeur puisse reprendre un sujet sans dépendre d'elle ; avant son départ, elle l'a restructurée et y a décrit tous les modules.

Avant MAX : reprendre un site en production

Avant MAX, Innéair a d'abord travaillé sur des projets de clients du groupe. Le premier était le site de fidélisation et de services qu'un client offrait à son réseau de plusieurs milliers de points de vente. Innéair y a pris en charge le changement de gérant d'un point de vente, détecté lors de la synchronisation nocturne avec la base du client, la réorganisation de sa hiérarchie commerciale et l'import des comptes de points.

Certains exports du back-office n'aboutissaient pas, même avec 1 Go de mémoire. Innéair les a réécrits : ils sont sortis en une ou deux minutes, avec 10 Mo au plus.

Ce qu'Innéair en retient

Une plateforme partagée par plusieurs clients tient par deux choses : des modules que l'on peut sortir et tester isolément, et une documentation qui permet au suivant de reprendre.

Réalisation suivante : Viaco : plateforme SaaS serverless du BTP

Vous lancez ou refondez une application métier ?

Innéair conçoit votre application métier avec vous, met très tôt une première version en production, puis l'enrichit par petites livraisons.

Écrire à Innéair Voir les autres réalisations