Comment Lalamove fait-elle évoluer sa plateforme de communication ?

May 10 2023
Comment la plateforme de communication Lalamove résout les défis de communication des utilisateurs avec une nouvelle architecture. Par Ray Chong, Will Lo, Mike Du, Eric Chan, Roy Shum, Maggie Suen, Leviero Introduction La plate-forme de communication joue un rôle important dans l'écosystème Lalamove en communiquant avec les utilisateurs de Lalamove via divers canaux de communication.

Comment la plateforme de communication Lalamove résout les défis de communication des utilisateurs avec une nouvelle architecture.

Par Ray Chong , Will Lo , Mike Du , Eric Chan , Roy Shum , Maggie Suen , Leviero

Introduction

La plate-forme de communication joue un rôle important dans l'écosystème Lalamove en communiquant avec les utilisateurs de Lalamove via divers canaux de communication. Lalamove envoie des centaines de millions de communications par mois pour communiquer avec les utilisateurs de Lalamove via divers canaux de communication tels que SMS, e-mail et Push. Notre objectif est de fournir une plate-forme de communication omnicanale évolutive, à la pointe de la technologie et rentable pour renforcer l'ingénierie et l'efficacité opérationnelle de nos équipes internes.

Cependant, nous avons identifié plusieurs défis d'un point de vue commercial et technique au sein de notre plate-forme de communication actuelle. Pour mieux comprendre ces défis, il est nécessaire d'examiner notre architecture héritée.

Défi

Début du chaos

Dans cette architecture, chaque équipe technique connectait directement ses services aux services de communication, créant des défis d'évolutivité et diverses difficultés pour l'équipe d'ingénierie de Lalamove.

Voici les défis auxquels nous avons été confrontés avec cette architecture :

  • Difficile à intégrer à plusieurs services de communication - Les équipes techniques doivent s'intégrer indépendamment à plusieurs canaux de communication lors de l'envoi de communications. Par exemple, s'il existe cinq canaux de communication, les équipes techniques doivent s'intégrer cinq fois à la plate-forme de communication, ce qui nécessite des efforts d'intégration et de communication importants et a un impact négatif sur l'efficacité de l'ingénierie.
  • Manque d'orchestration des communications - L'architecture héritée est une solution multicanal mais n'a pas la capacité omnicanal. Cela rend la plate-forme de communication pas assez flexible pour les équipes techniques.
  • Effort de développement redondant - Actuellement, l'effort de développement pour les fonctionnalités de communication communes est énorme sous cette architecture, comme la visibilité des données et la gestion des modèles. Nous devons développer la même fonctionnalité dans plusieurs canaux de communication indépendamment. Cela nuit à l'efficacité et à la maintenabilité de l'ingénierie.

Architecture de la plate-forme de communication

Passerelle de communication

La passerelle de communication est un composant essentiel de la plate-forme de communication, permettant aux équipes techniques de s'intégrer une seule fois et de profiter de mises à jour transparentes.

Dans cette architecture, nous visons à fournir les fonctionnalités suivantes :

  • Fournir des API évolutives et une orchestration des communications pour permettre une communication omnicanale
  • Encapsulez la logique de communication pour éviter les doubles efforts
  • Définir clairement les responsabilités des différentes parties prenantes en séparant les préoccupations
  • Permettre l'amélioration de l'activité grâce à la transparence des données

La valeur de base

La plate-forme de communication de nouvelle génération est conçue pour fournir quatre fonctionnalités clés : propriété, évolutivité, flexibilité et transparence. Ensemble, elles forment les valeurs fondamentales de la plate-forme de communication et permettent à la plate-forme de communication de fournir une solution complète aux utilisateurs internes.

La valeur de base

Propriété claire

Une propriété claire est fournie dans la plate-forme de communication, où chaque modèle est attribué à une équipe spécifique. Cela nous permet d'identifier facilement l'équipe responsable et le service déclencheur en cas de problème de production. La séparation des préoccupations est également une priorité dans l'écosystème de communication de Lalamove, l'équipe commerciale étant propriétaire du contenu de la communication plutôt que l'équipe technique.

Évolutivité

Nous simplifions l'intégration avec la plateforme de communication en proposant une API omnicanale. La passerelle de communication résume le processus de communication, ce qui permet aux utilisateurs d'exploiter facilement ses avantages. En s'intégrant une fois à la plate-forme de communication, les utilisateurs peuvent profiter de mises à jour transparentes.

La flexibilité

Pour gérer efficacement la communication dans diverses conditions telles que le changement de canal et la gestion de contenu, nous avons besoin d'une approche flexible. La plate-forme de communication offre exactement cela, permettant à nos équipes commerciales de mettre à jour les canaux et le contenu sans avoir besoin de nos ingénieurs pour apporter des modifications au code ou effectuer des déploiements. Cela simplifie non seulement la gestion des canaux de communication, mais permet également à notre plateforme d'être plus flexible.

Transparence

Notre objectif avec la plate-forme de communication de nouvelle génération est de fournir à nos utilisateurs internes la transparence des données en leur permettant de voir l'efficacité de nos efforts de communication. Pour y parvenir, nous disposons d'un pipeline de données pour ingérer les données et assurer la transparence des données à nos utilisateurs internes.

Ensuite, comment réorganisons-nous la plate-forme de communication pour résoudre les défis que nous avons rencontrés et atteindre nos valeurs fondamentales ?

Omnicanal

Omnicanal

Avec l'API omnicanal, la passerelle de communication est capable d'orchestrer la communication dans différents canaux de communication selon différentes stratégies commerciales. De plus, nous fournissons un point d'entrée unique à nos utilisateurs pour leur permettre de s'intégrer une fois à la plate-forme de communication et de profiter de mises à jour transparentes.

Dans cette conception, nous avons un concept appelé "Action" et il est utilisé pour définir la communication. Une « Action » fait généralement référence à un scénario d'entreprise. Chaque « action » correspond à un ou plusieurs canaux de communication. En utilisant ce concept, nous pouvons adapter notre communication plus facilement sans coupler la communication à un canal de communication spécifique.

Cela apporte de la flexibilité et de la fiabilité à la plate-forme de communication et de la commodité aux utilisateurs. Les utilisateurs peuvent changer de canal à tout moment sans changement de code et se débarrasser de l'intégration répétée de la plate-forme de communication.

Encapsulation des communications

Traiter le contenu de la communication

L'encapsulation des communications est importante, car elle permet de centraliser la logique de gestion des communications. L'un des principes que nous avons adoptés dans la plateforme de communication est la séparation des préoccupations.

Pour le comprendre, on peut prendre comme exemple la composition du contenu. Le contenu et le canal sont gérés par la plateforme de communication au lieu de nos consommateurs.

Cela dit, les utilisateurs peuvent enregistrer un modèle dans la plateforme de communication et envoyer une demande de communication en fournissant les paramètres nécessaires. Après cela, toute la logique de composition du contenu sera faite par la plateforme de communication. Cela sépare les préoccupations des différentes parties prenantes et rend la logique de communication plus cohérente.

Portail de modèles

Le portail de modèles sert d'interface utilisateur qui permet aux utilisateurs internes de gérer les modèles et les canaux de communication en libre-service, sans compter sur l'équipe technique pour modifier le code backend. Avec la séparation des préoccupations, nous rationalisons le processus de gestion des traductions des modèles de communication et donnons de l'autonomie aux utilisateurs internes.

Clé à emporter

Il y a quelques points clés à retenir de notre parcours de ré-architecture, y compris

  • Flux de travail de gestion de contenu - La gestion de contenu était un défi critique chez Lalamove, car le contenu était réparti sur divers services, ce qui rendait difficile la mise à l'échelle et la définition de la responsabilité de la maintenance. Pour relever ce défi, nous avons aligné nos valeurs fondamentales et défini que le contenu devait être géré par des utilisateurs professionnels plutôt que par des ingénieurs logiciels. Pour y parvenir, nous avons développé un portail qui permet aux utilisateurs professionnels de gérer le contenu des modèles et d'avoir une autonomie de communication.
  • Orchestration de la communication - L'orchestration de la communication est un aspect essentiel de toute plate-forme de communication, car elle détermine si la plate-forme peut être facilement mise à l'échelle ou non. Chez Lalamove, nous avons été confrontés au défi d'avoir plusieurs canaux de communication mais sans capacité omnicanale. Grâce à notre expérience, nous avons compris l'importance d'avoir une plate-forme de communication équipée d'une capacité omnicanal, car elle peut fournir la flexibilité et la fiabilité nécessaires pour assurer une communication transparente sur tous les canaux.
  • Importance de l'orchestration des microservices - Le service d'orchestrateur, Communication Gateway, dans notre nouvelle architecture encapsule et centralise la logique de communication commune, ce qui élimine le besoin de plusieurs points d'entrée et réduit la complexité de la plate-forme de communication. Les services de communication peuvent désormais se concentrer uniquement sur la communication, tandis que la passerelle de communication gère l'orchestration de la communication, telle que la gestion des demandes, la sélection des canaux et la composition du contenu. Cette conception améliore non seulement l'efficacité de l'ingénierie, mais permet également une maintenance et une évolutivité plus faciles de la plate-forme de communication.

Dans l'architecture héritée, il y avait des composants indépendants sans connexion entre eux, ce qui entraînait des défis.

Dans cet esprit, nous avons consacré tant d'efforts à réfléchir à la manière de connecter différents composants entre eux et de créer une plate-forme de communication omnicanal évolutive, à la pointe de la technologie et rentable. Il offre de nombreux avantages tels que la gestion des modèles et des canaux, des API évolutives et l'orchestration des communications.

La plate-forme de communication est conçue pour fournir 4 fonctionnalités clés, notamment la propriété, l'évolutivité, la flexibilité et la transparence, et elles se combinent pour établir les valeurs fondamentales de la plate-forme de communication. Cette aide améliore l'expérience des développeurs et renforce l'ingénierie et l'efficacité opérationnelle de Lalamove.

Remerciements

Remerciements particuliers à (trier par nom de famille par ordre alphabétique) Nick Chan , Winston Chandra , Lonnie Chen , Allan Chiu , David Choi , Amber Fung , Xavier Ho , Teddy Hong , Justin Hu , Shane Hu , Miranda Huang , Chatty Indrawan , Neha Jayaswal , Hyper Jiang , Edward Lam , Tommy Leung , Crystal Lin , Kayn Liu, Radio Liu , Steven Peng , Naveen Ramamourty ,Brian So , Homing Tam , Simon Tse et Hale Wu pour leur contribution à ce projet.