Como é que a Lalamove dimensiona a sua Plataforma de Comunicação?

May 10 2023
Como a plataforma de comunicação Lalamove resolve os desafios de comunicação do usuário com uma nova arquitetura. Por Ray Chong, Will Lo, Mike Du, Eric Chan, Roy Shum, Maggie Suen, Leviero Introdução A plataforma de comunicação desempenha um papel importante no ecossistema Lalamove na comunicação com os usuários da Lalamove por meio de vários canais de comunicação.

Como a plataforma de comunicação Lalamove resolve os desafios de comunicação do usuário com uma nova arquitetura.

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

Introdução

A plataforma de comunicação desempenha um papel importante no ecossistema Lalamove na comunicação com os usuários da Lalamove por meio de vários canais de comunicação. A Lalamove envia centenas de milhões de comunicações mensalmente para se comunicar com os usuários da Lalamove por meio de vários canais de comunicação, como SMS, e-mail e Push. Nosso objetivo é fornecer uma plataforma de comunicação omnichannel escalável, de última geração e econômica para aumentar a eficiência operacional e de engenharia de nossas equipes internas.

No entanto, identificamos vários desafios do ponto de vista comercial e de engenharia em nossa plataforma de comunicação atual. Para entender melhor esses desafios, é necessário examinar nossa arquitetura legada.

Desafio

começo do caos

Sob esta arquitetura, cada equipe de recursos conectou diretamente seus serviços aos serviços de comunicação, criando desafios de escalabilidade e várias dificuldades para a equipe de engenharia da Lalamove.

A seguir estão os desafios que enfrentamos com essa arquitetura:

  • Difícil de integrar com vários serviços de comunicação - As equipes de recursos precisam se integrar com vários canais de comunicação de forma independente ao enviar comunicação. Por exemplo, se houver cinco canais de comunicação, as equipes de recursos terão que se integrar à plataforma de comunicação cinco vezes, o que requer um esforço significativo de integração e comunicação e afeta negativamente a eficiência da engenharia.
  • Falta de orquestração de comunicação - A arquitetura legada é uma solução multicanal, mas carece da capacidade omnicanal. Isso faz com que a plataforma de comunicação não seja flexível o suficiente para as equipes de recursos.
  • Esforço de desenvolvimento redundante - Atualmente, o esforço de desenvolvimento para recursos de comunicação comuns é enorme sob esta arquitetura, como visibilidade de dados e gerenciamento de modelos. Precisamos desenvolver o mesmo recurso em vários canais de comunicação de forma independente. Isso prejudica a eficiência e a manutenção da engenharia.

Arquitetura da plataforma de comunicação

Gateway de Comunicação

O gateway de comunicação é um componente crítico da plataforma de comunicação, permitindo que as equipes de recursos se integrem uma vez e desfrutem de atualizações contínuas.

Nesta arquitetura, pretendemos fornecer os seguintes recursos:

  • Forneça APIs escaláveis ​​e orquestração de comunicação para permitir a comunicação omnicanal
  • Encapsule a lógica de comunicação para evitar esforço duplicado
  • Defina responsabilidades claras para diferentes partes interessadas, separando as preocupações
  • Permita a melhoria dos negócios por meio da transparência de dados

Valor essencial

A plataforma de comunicação de última geração foi criada para fornecer quatro recursos principais: Propriedade, Escalabilidade, Flexibilidade e Transparência. Juntos, eles formam os valores centrais da plataforma de comunicação e permitem que a plataforma de comunicação forneça uma solução completa para usuários internos.

Valor essencial

Propriedade clara

A propriedade clara é fornecida na plataforma de comunicação, onde cada modelo é atribuído a uma equipe específica. Isso nos permite identificar facilmente a equipe responsável e o serviço acionador em caso de problemas na produção. A separação de preocupações também é priorizada no ecossistema de comunicação da Lalamove, com a equipe de negócios detendo o conteúdo da comunicação em vez da equipe de tecnologia.

Escalabilidade

Simplificamos a integração com a plataforma de comunicação oferecendo uma API omnicanal. O gateway de comunicação abstrai o processo de comunicação, tornando mais fácil para os usuários aproveitar seus benefícios. Ao integrar-se à plataforma de comunicação uma vez, os usuários podem desfrutar de atualizações contínuas.

Flexibilidade

Para gerenciar efetivamente a comunicação sob várias condições, como troca de canal e gerenciamento de conteúdo, precisamos de uma abordagem flexível. A plataforma de comunicação oferece exatamente isso, permitindo que nossas equipes de negócios atualizem canais e conteúdo sem a necessidade de nossos engenheiros fazerem alterações de código ou realizar implantações. Isso não apenas simplifica o gerenciamento dos canais de comunicação, mas também permite que nossa plataforma seja mais flexível.

Transparência

Nosso objetivo com a plataforma de comunicação de última geração é fornecer aos nossos usuários internos transparência de dados, permitindo que eles vejam a eficácia de nossos esforços de comunicação. Para conseguir isso, temos um pipeline de dados para ingerir os dados e fornecer transparência aos nossos usuários internos.

Então, como reprojetamos a plataforma de comunicação para resolver os desafios que tivemos e alcançar nossos valores fundamentais?

Omnicanal

Omnicanal

Com a API omnichannel, o gateway de comunicação é capaz de orquestrar a comunicação em diferentes canais de comunicação de acordo com diferentes estratégias de negócios. Além disso, fornecemos um único ponto de entrada para nossos usuários, permitindo que eles se integrem à plataforma de comunicação uma vez e desfrutem de atualizações contínuas.

Neste projeto, temos um conceito chamado “Ação” e é usado para definir a comunicação. Uma “Ação” geralmente se refere a um cenário de negócios. Cada “Ação” mapeia um ou vários canais de comunicação. Ao usar esse conceito, podemos escalar nossa comunicação mais facilmente sem acoplar a comunicação a um canal de comunicação específico.

Isso traz flexibilidade e confiabilidade para a plataforma de comunicação e conveniência para os usuários. Os usuários podem alternar os canais a qualquer momento sem alterações de código e se livrar da integração da plataforma de comunicação repetidamente.

Encapsulamento de comunicação

Conteúdo de comunicação do processo

O encapsulamento da comunicação é importante, pois ajuda a centralizar a lógica de manipulação da comunicação. Um dos princípios que adotamos na plataforma de comunicação é a Separação de Interesses.

Para entendê-lo, podemos tomar como exemplo a composição de conteúdo. O conteúdo e o canal são geridos pela plataforma de comunicação e não pelos nossos consumidores.

Posto isto, os utilizadores podem registar um modelo na plataforma de comunicação e enviar um pedido de comunicação fornecendo os parâmetros necessários. Depois disso, toda a lógica de composição de conteúdo será feita pela plataforma de comunicação. Isso separa as preocupações de diferentes partes interessadas e torna a lógica de comunicação mais coesa.

Modelo de portal

O portal de modelos serve como uma interface de usuário que permite que os usuários internos gerenciem modelos e canais de comunicação de maneira autoatendida, sem depender da equipe técnica para alterar o código de back-end. Com a separação de preocupações, agilizamos o processo de gestão das traduções dos templates de comunicação e damos autonomia aos usuários internos.

Chave para viagem

Existem algumas conclusões importantes de nossa jornada de re-arquitetura, incluindo

  • Fluxo de trabalho de gerenciamento de conteúdo - O gerenciamento de conteúdo foi um desafio crítico na Lalamove, pois o conteúdo estava espalhado por vários serviços, dificultando o dimensionamento e a definição da responsabilidade de manutenção. Para enfrentar esse desafio, alinhamos nossos valores principais e definimos que o conteúdo deve ser gerenciado por usuários corporativos e não por engenheiros de software. Para isso, desenvolvemos um portal que capacita os usuários de negócios a gerenciar o conteúdo do template e ter autonomia de comunicação.
  • Orquestração de comunicação - A orquestração de comunicação é um aspecto crítico de qualquer plataforma de comunicação, pois determina se a plataforma pode ser facilmente dimensionada ou não. Na Lalamove, enfrentamos o desafio de ter vários canais de comunicação, mas sem capacidade omnichannel. Através da nossa experiência, entendemos a importância de ter uma plataforma de comunicação equipada com capacidade omnichannel, pois pode fornecer a flexibilidade e confiabilidade necessárias para garantir uma comunicação perfeita em todos os canais.
  • Importância da Orquestração de Microsserviços - O serviço de orquestrador, Communication Gateway, em nossa nova arquitetura encapsula e centraliza a lógica de comunicação comum, o que elimina a necessidade de múltiplos pontos de entrada e reduz a complexidade da plataforma de comunicação. Os serviços de comunicação agora podem se concentrar apenas na comunicação, enquanto o gateway de comunicação lida com a orquestração da comunicação, como gerenciamento de solicitações, seleção de canais e composição de conteúdo. Esse projeto não apenas melhora a eficiência da engenharia, mas também facilita a manutenção e a escalabilidade da plataforma de comunicação.

Na arquitetura legada, havia componentes independentes sem conexão entre si, gerando desafios.

Com isso em mente, despendemos muito esforço pensando em como conectar diferentes componentes e construir uma plataforma de comunicação omnichannel escalável, de última geração e econômica. Ele oferece vários benefícios, como gerenciamento de modelo e canal, APIs escaláveis ​​e orquestração de comunicação.

A plataforma de comunicação foi projetada para fornecer 4 recursos principais, incluindo Propriedade, Escalabilidade, Flexibilidade e Transparência, e eles se combinam para estabelecer os valores centrais da Plataforma de Comunicação. Essa ajuda melhora a experiência do desenvolvedor e aumenta a eficiência operacional e de engenharia da Lalamove.

Agradecimentos

Agradecimentos especiais a (classificar por sobrenome em ordem alfabética) 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 por sua contribuição a este projeto.