In che modo Lalamove scala la sua piattaforma di comunicazione?

May 10 2023
In che modo la piattaforma di comunicazione Lalamove risolve le sfide di comunicazione degli utenti con una nuova architettura. Di Ray Chong, Will Lo, Mike Du, Eric Chan, Roy Shum, Maggie Suen, Leviero Introduzione La piattaforma di comunicazione svolge un ruolo importante nell'ecosistema Lalamove nel comunicare con gli utenti di Lalamove attraverso vari canali di comunicazione.

In che modo la piattaforma di comunicazione Lalamove risolve le sfide di comunicazione degli utenti con una nuova architettura.

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

introduzione

La piattaforma di comunicazione svolge un ruolo importante nell'ecosistema Lalamove nel comunicare con gli utenti di Lalamove attraverso vari canali di comunicazione. Lalamove invia centinaia di milioni di comunicazioni mensili per comunicare con gli utenti di Lalamove attraverso vari canali di comunicazione come SMS, e-mail e Push. Il nostro obiettivo è fornire una piattaforma di comunicazione omnicanale scalabile, all'avanguardia e conveniente per aumentare l'efficienza tecnica e operativa per i nostri team interni.

Tuttavia, abbiamo identificato diverse sfide sia dal punto di vista aziendale che ingegneristico all'interno della nostra attuale piattaforma di comunicazione. Per comprendere meglio queste sfide, è necessario esaminare la nostra architettura legacy.

Sfida

Inizio del caos

Con questa architettura, ogni team di funzionalità ha collegato direttamente i propri servizi ai servizi di comunicazione, creando sfide di scalabilità e varie difficoltà per il team di ingegneri di Lalamove.

Di seguito sono riportate le sfide che abbiamo dovuto affrontare con questa architettura:

  • Difficile da integrare con più servizi di comunicazione: i team di funzionalità devono integrarsi con più canali di comunicazione in modo indipendente durante l'invio di comunicazioni. Ad esempio, se sono presenti cinque canali di comunicazione, i team delle funzionalità devono integrarsi con la piattaforma di comunicazione cinque volte, il che richiede un notevole sforzo di integrazione e comunicazione e ha un impatto negativo sull'efficienza ingegneristica.
  • Mancanza di orchestrazione della comunicazione: l'architettura legacy è una soluzione multicanale ma manca della capacità omnicanale. Ciò rende la piattaforma di comunicazione non abbastanza flessibile per i feature team.
  • Sforzo di sviluppo ridondante - Attualmente, lo sforzo di sviluppo per le funzionalità di comunicazione comuni è enorme con questa architettura, come la visibilità dei dati e la gestione dei modelli. Dobbiamo sviluppare la stessa funzionalità in più canali di comunicazione in modo indipendente. Ciò danneggia l'efficienza ingegneristica e la manutenibilità.

Architettura della piattaforma di comunicazione

Porta di comunicazione

Il gateway di comunicazione è un componente fondamentale della piattaforma di comunicazione, che consente ai team delle funzionalità di integrarsi una volta e godere di aggiornamenti continui.

In questa architettura, miriamo a fornire le seguenti funzionalità:

  • Fornisci API scalabili e orchestrazione della comunicazione per abilitare la comunicazione omnicanale
  • Incapsula la logica di comunicazione per evitare sforzi duplicati
  • Definire responsabilità chiare per le diverse parti interessate separando le preoccupazioni
  • Consenti il ​​miglioramento del business attraverso la trasparenza dei dati

Valore fondamentale

La piattaforma di comunicazione di nuova generazione è costruita per fornire quattro funzionalità chiave: proprietà, scalabilità, flessibilità e trasparenza, insieme formano i valori fondamentali della piattaforma di comunicazione e consentono alla piattaforma di comunicazione di fornire una soluzione completa per gli utenti interni.

Valore fondamentale

Cancella proprietà

La chiara proprietà viene fornita nella piattaforma di comunicazione, in cui ogni modello è assegnato a un team specifico. Questo ci consente di identificare facilmente il team responsabile e il servizio di attivazione in caso di problemi di produzione. Anche la separazione delle preoccupazioni ha la priorità nell'ecosistema di comunicazione di Lalamove, con il team aziendale che possiede il contenuto della comunicazione piuttosto che il team tecnico.

Scalabilità

Semplifichiamo l'integrazione con la piattaforma di comunicazione offrendo un'API omnicanale. Il gateway di comunicazione astrae il processo di comunicazione, consentendo agli utenti di sfruttarne facilmente i vantaggi. Integrandosi una volta con la piattaforma di comunicazione, gli utenti possono usufruire di aggiornamenti continui.

Flessibilità

Per gestire efficacemente la comunicazione in varie condizioni, come il cambio di canale e la gestione dei contenuti, abbiamo bisogno di un approccio flessibile. La piattaforma di comunicazione offre proprio questo, consentendo ai nostri team aziendali di aggiornare canali e contenuti senza che i nostri ingegneri debbano apportare modifiche al codice o eseguire distribuzioni. Questo non solo semplifica la gestione dei canali di comunicazione, ma consente anche alla nostra piattaforma di essere più flessibile.

Trasparenza

Il nostro obiettivo con la piattaforma di comunicazione di nuova generazione è fornire ai nostri utenti interni la trasparenza dei dati consentendo loro di vedere l'efficacia dei nostri sforzi di comunicazione. Per raggiungere questo obiettivo, disponiamo di una pipeline di dati per importare i dati e fornire trasparenza dei dati ai nostri utenti interni.

Quindi, come possiamo riprogettare la piattaforma di comunicazione per risolvere le sfide che abbiamo avuto e raggiungere i nostri valori fondamentali?

Omnicanale

Omnicanale

Con l'API omnicanale, il gateway di comunicazione è in grado di orchestrare la comunicazione in diversi canali di comunicazione in base a diverse strategie aziendali. Inoltre, forniamo un unico punto di accesso per i nostri utenti per consentire loro di integrarsi con la piattaforma di comunicazione una volta e godere di aggiornamenti continui.

In questo progetto abbiamo un concetto chiamato "Azione" ed è usato per definire la comunicazione. Una "Azione" di solito si riferisce a uno scenario aziendale. Ogni "Azione" è associata a uno o più canali di comunicazione. Utilizzando questo concetto, possiamo ridimensionare la nostra comunicazione più facilmente senza associare la comunicazione a uno specifico canale di comunicazione.

Questo porta flessibilità e affidabilità alla piattaforma di comunicazione e comodità per gli utenti. Gli utenti possono cambiare canale in qualsiasi momento senza modifiche al codice e sbarazzarsi dell'integrazione ripetuta della piattaforma di comunicazione.

Incapsulamento della comunicazione

Processo Comunicazione Contenuto

L'incapsulamento della comunicazione è importante, in quanto aiuta a centralizzare la logica di gestione della comunicazione. Uno dei principi che abbiamo adottato nella piattaforma di comunicazione è la separazione delle preoccupazioni.

Per capirlo, possiamo prendere come esempio la composizione dei contenuti. Il contenuto e il canale sono gestiti dalla piattaforma di comunicazione anziché dai nostri consumatori.

Detto questo, gli utenti possono registrare un modello nella piattaforma di comunicazione e inviare una richiesta di comunicazione fornendo i parametri necessari. Dopodiché, tutta la logica di composizione dei contenuti sarà fatta dalla piattaforma di comunicazione. Ciò separa le preoccupazioni delle diverse parti interessate e rende la logica della comunicazione più coesa.

Portale modello

Il portale dei modelli funge da interfaccia utente che consente agli utenti interni di gestire i modelli e i canali di comunicazione in modalità self-service, senza affidarsi al team tecnico per modificare il codice di back-end. Con la separazione delle preoccupazioni, semplifichiamo il processo di gestione delle traduzioni dei modelli di comunicazione e garantiamo autonomia agli utenti interni.

Chiave da asporto

Ci sono alcuni aspetti chiave del nostro viaggio di riarchitettura, tra cui

  • Flusso di lavoro per la gestione dei contenuti: la gestione dei contenuti è stata una sfida fondamentale per Lalamove poiché il contenuto era distribuito su vari servizi, rendendo difficile la scalabilità e la definizione della responsabilità della manutenzione. Per affrontare questa sfida, abbiamo allineato i nostri valori fondamentali e definito che il contenuto dovrebbe essere gestito dagli utenti aziendali piuttosto che dagli ingegneri del software. Per raggiungere questo obiettivo, abbiamo sviluppato un portale che consente agli utenti aziendali di gestire i contenuti dei modelli e avere autonomia di comunicazione.
  • Orchestrazione della comunicazione: l'orchestrazione della comunicazione è un aspetto critico di qualsiasi piattaforma di comunicazione, in quanto determina se la piattaforma può essere facilmente ridimensionata o meno. In Lalamove, abbiamo affrontato la sfida di avere più canali di comunicazione ma privi di capacità omnicanale. Attraverso la nostra esperienza, siamo giunti a comprendere l'importanza di disporre di una piattaforma di comunicazione dotata di funzionalità omnicanale, in quanto può fornire la flessibilità e l'affidabilità necessarie per garantire una comunicazione senza soluzione di continuità su tutti i canali.
  • Importanza dell'orchestrazione dei microservizi: il servizio dell'orchestratore, Communication Gateway, nella nostra nuova architettura incapsula e centralizza la logica di comunicazione comune, eliminando la necessità di più punti di ingresso e riducendo la complessità della piattaforma di comunicazione. I servizi di comunicazione possono ora concentrarsi esclusivamente sulla comunicazione, mentre il gateway di comunicazione gestisce l'orchestrazione della comunicazione, come la gestione delle richieste, la selezione dei canali e la composizione dei contenuti. Questo design non solo migliora l'efficienza ingegneristica, ma consente anche una più facile manutenzione e scalabilità della piattaforma di comunicazione.

Nell'architettura legacy, c'erano componenti indipendenti senza alcuna connessione tra di loro, portando a sfide.

Con questo in mente, abbiamo speso così tanti sforzi pensando a come collegare insieme diversi componenti e costruire una piattaforma di comunicazione omnicanale scalabile, all'avanguardia ed economica. Offre numerosi vantaggi come la gestione di modelli e canali, API scalabili e orchestrazione delle comunicazioni.

La piattaforma di comunicazione è progettata per fornire 4 funzionalità chiave, tra cui proprietà, scalabilità, flessibilità e trasparenza, e si combinano per stabilire i valori fondamentali della piattaforma di comunicazione. Questo aiuto migliora l'esperienza degli sviluppatori e aumenta l'efficienza tecnica e operativa di Lalamove.

Ringraziamenti

Un ringraziamento speciale a (in ordine alfabetico per cognome) 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 e Hale Wu per il loro contributo a questo progetto.