Popafood

Popafood

Popafood est une startup créée en 2021 qui oeuvre dans le domaine de la FoodTech. Elle propose des boxes de cuisine équipés et connectés qu’elle loue clé en main à des restaurateurs professionnels.

Besoin

Si l’offre proposée par Popafood intègre bien évidemment une composante matérielle, elle inclut également un package logiciel conséquent. En effet, au cœur du dispositif se trouve une tablette Android qui permet à chaque restaurateur de recevoir en temps réel et de manière agrégée ses commandes et cela quelque soit le canal depuis lequel elles ont été passées : Uber Eats, Deliveroo, bornes et application mobile Popafood.

Un flux de travail (workflow) d’une précision millimétrique pilote les interactions entre les différentes parties prenantes (cuisiniers, livreurs, runners, consommateurs…). Ainsi, le processus démarre lorsqu’un client passe commande sur une borne ou sur son mobile. Le paiement de cette commande, par carte Visa, Mastercard (physique ou virtuelle) ou titre restaurant, déclenche sa visibilité en cuisine. Ensuite, le cuisinier dispose de quelques minutes pour vérifier la présence des ingrédients et accepter sa mission, dans le cas contraire le rejet de la commande aboutit à son remboursement immédiat. Une fois le plat confectionné, c’est au tour des livreurs et runners d’entrer en scène ; jusqu’à la livraison finale, les consommateurs peuvent suivre en temps réel l’évolution des préparatifs.

C’est sur la base de ces « user stories » que nous sommes intervenus sur le projet pour concevoir et développer l’intégralité de la plateforme logicielle.

Solution

Nous avons dans un premier temps construit la partie back à l’aide de plusieurs microservices, implémentés en Java 17 avec le framework Quarkus. Ceux-ci exposent assez classiquement une API REST et/ou communiquent en asynchrone au travers d’un cluster Kafka. La particularité, et une des sources de complexité de la plateforme, est représentée par les nombreuses connexions à des systèmes externes : flottes de coursiers partenaires, plateformes de paiement, Uber Eats, Deliveroo…

L’éventualité qu’un des appels à ces services échoue doit bien évidemment être prise en compte, le système se doit d’être résilient et tolérant aux pannes. Heureusement Quarkus dispose de fonctionnalités à ce niveau là, notamment via une implementation d’Eclipse MicroProfile Fault Tolerance. La garantie « at least once » que Kafka est en mesure d’offrir nous a également été très utile.

Côté front, les challenges techniques étaient également bien présents. Un sujet qui nous a accaparé beaucoup de temps a été la capacité des applications front à réagir avec un minimum de latence possible. Comme expliqué plus haut, différents profils d’utilisateur se livrent à un ping-pong où les actions des uns doivent être notifiées aux autres afin qu’ils agissent en conséquence. Pour remplir cette exigence nous avons développé une solution autour des technos SSE (Server-Sent Events), Firebase Cloud Messaging et toujours notre cluster Kafka pour faire circuler les informations entre les microservices.

En conclusion, l’architecture de Popafood est résolument moderne : grande hétérogénéité des technologies employées, redondante et réactive.

Transgourmet

Transgourmet

Leader sur le secteur des grossistes alimentaires, le groupe Transgourmet France est unique de par son offre étendue couvrant les besoins en produits ambiants, frais, surgelés et produits d’hygiène.

Besoin

Le groupe Transgourmet met à la disposition des ses clients l’extranet e-commerce « e-Gourmet« . Ce dernier leur propose l’ensemble du catalogue produits en commande en ligne.

Cet extranet s’appuie sur le moteur de recherche et d’indexation Elasticsearch déployé en cluster.

L’objectif était de réaliser un audit et une expertise du cluster au niveau de sa configuration afin d’en optimiser son administration et exploitation ainsi que les performances des requêtes proposées aux clients de la plateforme e-commerce.

Solution

Notre expertise a démarré par une étude de l’existant, avec une analyse fouillée du paramétrage des clusters, index, machines virtuelles et logs.

Cette analyse approfondie nous ayant permis de réaliser un diagnostic clair, aussi bien au niveau logiciels que systèmes, nous avons ensuite proposé un ensemble de recommandations et préconisations pour l’amélioration de la configuration et de l’exploitation des clusters Elasticsearch.

Ainsi le contexte technique était le suivant: Elasticsearch, Kibana, ILM, Cerebro, Analyzers, function_score, Docker, Red Hat Enterprise Linux, VMWare…

Amazon

Amazon

Créée en 1994, Amazon est une entreprise de commerce électronique américaine basée à Seattle et faisant partie des GAFAM, qui réunit les 5 entreprises ayant une influence majeure dans la révolution numérique. La société emploie à ce jour plus de 540 000 personnes dans le monde.
Sa spécialité initiale est la vente de livres en ligne, mais la société s’est ensuite diversifiée dans d’autres produits, notamment dans la vente de produits culturels et alimentaires.
En 2006, Amazon poursuit sa diversification et lance Amazon Web Services (AWS) sa nouvelle gamme de produits et services d’infrastructure Cloud, parmi lesquels ses renommés services de stockage Amazon S3 ou de capacité serveur « on demand » Amazon EC2.

Besoin

Amazon était à la recherche d’une solution de Product Lifecycle Management (PLM) et avait entrepris de consulter les principales plateformes Open Source disponibles sur le marché.

Solution

Le fait que l’architecture de DocDokuPLM soit autoscalable et s’adapte aux montées en charge de centaines de milliers d’utilisateurs a été différenciant.
La plateforme a également réussi son examen de passage quant aux aspects sécurité, Amazon ayant réalisé un audit complet du code avant sa prise de décision finale. Enfin, l’approche « Sandbox » proposée par DocDoku, permettant une mise en production rapide en mode Agile, a fini de retenir l’attention du géant du Web.

La Team DocDoku a donc déployé DocDokuPLM sur une infrastructure cloud AWS (sans surprise;), accompagnée de développements complémentaires pour répondre à ses spécificités métier.

Amazon a en outre souhaité que ces développements restent dans le domaine Open Source pour bénéficier des éventuelles évolutions apportées par la communauté.

John Bennett, Senior Technical Program Manager chez Amazon Corporate LLC, résume avec enthousiasme sa collaboration avec DocDoku :

“The DocDoku team is obsessed with the success of their customers. They were able to customize their solution to meet the needs of a very specific PLM use case and deploy to our environment on time and under budget. DocDoku made it all very easy.”