Objectif de la mission
Akeneo, entreprise développant un PIM leader du marché, a eu besoin pour enrichir leur App Store et offrir plus de visibilité, d'une application permettant de synchroniser des catalogues produits vers la solution e-commerce SAAS la plus utilisée, Shopify.
Ils ont fait appel à mon expertise de l'écosystème Shopify, ainsi que mon expertise de Symfony pour aider à construire un connecteur entre le PIM Akeneo et les boutiques Shopify.
Les problématiques étaient de minimiser les temps de synchronisation entre les données provenant de l'API Akeneo, et ingérées sur Shopify par l'API Shopify.
Ils ont fait appel à mon expertise de l'écosystème Shopify, ainsi que mon expertise de Symfony pour aider à construire un connecteur entre le PIM Akeneo et les boutiques Shopify.
Les problématiques étaient de minimiser les temps de synchronisation entre les données provenant de l'API Akeneo, et ingérées sur Shopify par l'API Shopify.
- Application Shopify sur l'APP Store Akeneo : Voir l'application sur Shopify
- Application Akeneo sur l'APP Store Shopify : Voir l'application sur Akeneo
Déroulement de la mission
La mission a été géré en mode agile avec un product owner et un lead développeur permettant de définir les priorités.
La partie développement back-end, a été développé en TDD, en utilisant un framework Gherkin permettant de définir le fonctionnement des fonctionnalités en language naturel avant de faire leur implémentation.
Le fait d'utiliser CQRS, permettait de découpler les fonctionnalités et de travailler plus efficacement à plusieurs.
La partie développement back-end, a été développé en TDD, en utilisant un framework Gherkin permettant de définir le fonctionnement des fonctionnalités en language naturel avant de faire leur implémentation.
Le fait d'utiliser CQRS, permettait de découpler les fonctionnalités et de travailler plus efficacement à plusieurs.
Technologies utilisées
Pour cette mission, pour rester cohérent avec les technologies utilisées chez Akeneo, il a été choisi de partir sur PHP avec le framework Symfony.
En effet, le PIM Akeneo a été fait historiquement en Symfony, il y a donc une accointance naturelle avec ce framework.
Concernant la partie front, nous utilisions le DSM Akeneo, utilisant React avec styled components.
La partie CI utilisait Circle CI avec pour destination Cloud run sur GCP.
En effet, le PIM Akeneo a été fait historiquement en Symfony, il y a donc une accointance naturelle avec ce framework.
Concernant la partie front, nous utilisions le DSM Akeneo, utilisant React avec styled components.
La partie CI utilisait Circle CI avec pour destination Cloud run sur GCP.
Problématiques et résolutions
Il a fallu être faire des recherches sur l'API Shopify afin d'utiliser les endpoints les plus adaptés pour faire une synchronisation efficace.
De même manière l'architecture logicielle utilisait une architecture événementielle pour découpler les synchronisations en message et faire le maximum de traitements en asynchrone.
Les problématiques rencontrées, liées souvent au problème de quota de l'API Shopify ou Akeneo, nécessitait une système de retry efficace.
De même manière l'architecture logicielle utilisait une architecture événementielle pour découpler les synchronisations en message et faire le maximum de traitements en asynchrone.
Les problématiques rencontrées, liées souvent au problème de quota de l'API Shopify ou Akeneo, nécessitait une système de retry efficace.