Infraestrutura em velocidade: 5 lições aprendidas com a construção da Intercom na Europa

Publicados: 2022-05-06

Em dezembro, anunciamos a hospedagem de dados na Europa, resultado de um dos maiores projetos de infraestrutura da Intercom. As lições que aprendemos ao construir a infraestrutura são inestimáveis ​​à medida que continuamos a expandir a Intercom globalmente – a partir de abril de 2022, também estamos hospedando a Intercom na Austrália.

Até agora, o Intercom era um aplicativo multilocatário hospedado em uma única região na AWS. No entanto, falamos com nossos clientes e potenciais clientes sobre hospedagem de dados na Europa há muito tempo – sabíamos o que tínhamos para entregar e o problema que tínhamos que resolver : Intercom, mas com os dados armazenados e processados ​​na Europa.

O que sabíamos – e o que não sabíamos

Começamos com muitos “ conhecidos conhecidos”; problemas que sabíamos que tínhamos que resolver, como implantações de software em várias regiões. Também identificamos alguns “ desconhecidos conhecidos” ; problemas que precisávamos resolver, mas ainda não sabíamos como – como integrar a nova região ao nosso sistema de faturamento. Também tínhamos certeza de que havia muitos “desconhecidos desconhecidos” esperando para serem descobertos. Essas incógnitas desconhecidas dificultavam a estimativa de quanto tempo o projeto levaria ou quantas pessoas precisaríamos dedicar a ele. O escopo era muito amplo para ser comparado a outros projetos ou trabalhos que realizamos no passado, e o caminho para o sucesso era incerto.

Uma coisa que fizemos desde o início foi conversar com equipes de empresas semelhantes que já haviam realizado esse tipo de projeto antes. Em muitos casos, esses projetos acabaram sendo alguns dos maiores que essas empresas já assumiram, levando a maioria de sua equipe de engenharia mais de seis meses para ser concluída.

“Estávamos relutantes em desacelerar nossas equipes de P&D no meio de uma pandemia – então construímos nosso plano de projeto para refletir a maneira como gostamos de trabalhar na Intercom”

Algumas empresas chegaram ao ponto de reimaginar sua arquitetura no processo. Estávamos relutantes em fazer mudanças dessa escala e desacelerar nossas equipes de P&D (no meio de uma pandemia!), então construímos nosso plano de projeto para refletir a maneira como gostamos de trabalhar na Intercom.

Isso significava avançar rapidamente, apesar da escala do projeto. Mover-se rapidamente e otimizar a longo prazo , além de empregar nosso princípio de “envio rápido, envio antecipado, envio frequente” nos ajudou não apenas a tirar o produto do papel, mas também a entregá-lo aos nossos clientes antes do planejado por.

Lição nº 1: Comece a construir – rápido

Nossa dedicação em avançar rapidamente nos trouxe à nossa primeira lição e à decisão que realmente desbloqueou o início deste projeto. Em um podcast recente da Intercom on Product , nosso cofundador Des falou sobre aquele antigo meme da curva de sino Jedi e como isso se aplica à velocidade das startups. A maioria das startups passa pelo estágio de “instalar mais processos” até que finalmente percebem que só precisam se mover o mais rápido possível. Empregar velocidade e agitação nos ajudaria a descobrir essas “incógnitas desconhecidas” e encontrar soluções à medida que as encontrássemos.

E então nosso ex-CTO e cofundador Ciaran Lee decidiu que estávamos apenas começando. Íamos começar a construir e ir muito, muito rápido, com uma pequena equipe ad hoc dedicada ao projeto – com a orientação de que não havia problema em falhar.

“Ser permitido falhar transformou nossa abordagem ao projeto”

Se nossa abordagem não funcionasse, obteríamos aprendizados valiosos que nos permitiriam planejar algo que poderia funcionar no futuro. Na melhor das hipóteses, construiríamos algo rápido que funcionasse bem o suficiente para que pudéssemos começar a descobrir como colocá-lo nas mãos de nossos clientes. Ser permitido falhar transformou nossa abordagem ao projeto e nos permitiu começar a avançar. Em vez de tentar antecipar problemas e olhar para frente para garantir o sucesso desde o início, começamos a construir até encontrar um problema e depois descobrimos uma solução.

Também é importante notar que não estávamos construindo protótipos que poderiam ser usados ​​mais tarde como blocos de construção para uma implementação completa posterior – estávamos construindo a coisa real, descobrindo as coisas à medida que avançávamos. O ímpeto que mantivemos como resultado acabou sendo fundamental para o sucesso do projeto.

Lição 2: Atenha-se aos seus princípios

Assim que começamos a construir, nossos princípios de engenharia nos ajudaram a continuar avançando rapidamente. Havia muitas maneiras de construir a Intercom na Europa, incluindo reinventar nossa arquitetura, mas de acordo com nosso princípio “ Seja tecnicamente conservador ”, optamos por adotar a mesma abordagem que usamos para construir o ambiente de produção existente.

“Nós não apenas copiamos e colamos, em vez disso, encolhemos e simplificamos”

Não introduzimos praticamente nenhum novo software, serviços ou abordagens em nossa construção na Europa. Ao mesmo tempo, simplificamos drasticamente nossa arquitetura, pegando elementos de nossa infraestrutura dos EUA e reutilizando-os em nosso novo ambiente de uma maneira muito mais fácil de trabalhar. Não apenas copiamos e colamos, em vez disso, encolhemos e simplificamos, alinhando-nos ao nosso princípio “ mantenha-o simples ”.

Lição nº 3: Dobre as regras quando precisar

Precisávamos permitir muita flexibilidade em torno de nossos processos de planejamento e estruturas de equipe para que este projeto tivesse uma equipe e começasse, dobrando as “regras” enquanto nos certificamos de manter todos informados sobre o que estávamos fazendo. Criamos uma equipe de projeto ad-hoc, incluindo engenheiros experientes de equipes existentes para começar a trabalhar no projeto.

É claro que houve consequências para essa decisão: as equipes estavam com menor capacidade; os membros do projeto tiveram que enfrentar várias reuniões diárias; e outros projetos tiveram que ser despriorizados. Essa nunca poderia ser nossa abordagem padrão para todos os projetos, mas quando sabíamos o que precisávamos alcançar e queríamos começar imediatamente, fazia sentido contornar respeitosamente nossos processos em favor do progresso.

Lição nº 4: Mantenha o trabalho o mais local possível

Esta pode ser a decisão mais importante que tomamos para manter o projeto em andamento rápido. Apesar de tocar em todas as partes da Intercom como parte do projeto, decidimos não trabalhar em várias equipes e, em vez disso, mantivemos o máximo de trabalho possível local para nossa equipe de projeto ad-hoc. Além de evitar processos de planejamento mais amplos, isso significava que não precisávamos pedir às nossas equipes de P&D para facilitar a implantação de nossos recursos na Europa. Evitamos inúmeras reuniões, documentos e mensagens do Slack apenas fazendo o trabalho por conta própria como uma abordagem padrão.

“Assumimos a propriedade do problema e nos capacitamos para progredir nele”

Assumimos a propriedade do problema e nos capacitamos para progredir nele, minimizando o custo geral para a Intercom, minimizando as interrupções para as equipes que não trabalham no Projeto Europa. Em várias ocasiões, tivemos que pedir ajuda a pessoas com experiência e causamos algumas surpresas para algumas equipes – mas, no geral, essa foi uma abordagem de enorme sucesso.

Lição nº 5: Mantenha os cronogramas flexíveis

Depois que construímos a infraestrutura e garantimos que a Intercom Europe estava operacional, passamos para uma fase diferente do projeto e trabalhamos com várias equipes da Intercom para coordenar o lançamento voltado para o cliente.

Nossos bloqueadores de lançamento eram em grande parte nossos próprios processos internos e várias integrações voltadas para o cliente que não consideramos críticas para o lançamento. Então nos perguntamos, poderíamos simplesmente lançar sem recursos como o WhatsApp e preencher essas lacunas à medida que avançamos? O que realmente estava nos segurando?

“Olhando para a linha do tempo e avaliando o que restava fazer, percebemos que poderíamos adiar o lançamento para dezembro”

Nosso plano de projeto teve um lançamento em janeiro, mas analisando o cronograma e avaliando o que restava a fazer, percebemos que poderíamos adiantá-lo para dezembro. Precisávamos de ajuda do suporte ao cliente, vendas, análise, marketing, jurídico, P&D e outros, mas todos se uniram para agir rapidamente.

Temos um canal Slack mostrando quando nossa equipe de vendas fecha negócios com clientes usando a plataforma, trazendo receita real para a Intercom. A recompensa de lutar pela adoção nestes últimos estágios fica clara neste canal – isso aumenta o valor de todo o trabalho que colocamos para chegar até aqui. Teria sido muito mais fácil seguir nossa linha do tempo existente, mas, ao nos esforçarmos, conseguimos colocá-la nas mãos dos clientes um mês antes do planejado.

Nossos aprendizados nos ajudarão a continuar avançando mais rápido

Este foi um projeto tão empolgante para se trabalhar – estou orgulhoso do trabalho que fizemos e que minimizamos o impacto do projeto nas equipes da Intercom. Ainda há muito trabalho em andamento, mas os aprendizados que aprendemos com a experiência foram inestimáveis ​​à medida que construímos nossa hospedagem na Austrália e desenvolvemos infraestrutura em outras jurisdições.

Saiba mais sobre hospedagem de dados na Europa com a Intercom