Ir para o conteúdo

Casos de projeto

Três projetos, do começo ao fim

O problema que encontramos, o que fizemos com ele, o que saiu disso e as tecnologias que sustentam cada um. Nomes usados com autorização.

Nordic Invest

holding

Integração dentro de um ambiente de escala de operadora

Construir e manter integrações de serviço em um ambiente onde uma mensagem perdida é um cliente sem serviço.

MultirregiãoIntegração de serviços em escala de operadora

O desafio

Plataformas de operadora são camadas sobre camadas. Provisionamento, faturamento, inventário e atendimento guardam pedaços diferentes da verdade, e foram construídos em décadas diferentes por times diferentes. Qualquer mudança precisa respeitar interfaces das quais milhares de outras coisas já dependem.

O que fizemos

  • Documentamos o contrato real de cada interface antes de mexer, incluindo o comportamento não documentado
  • Construímos as integrações contra schemas explícitos, com validação na fronteira
  • Adicionamos IDs de correlação para rastrear a ação de um cliente em cada salto
  • Instrumentamos os fluxos com métricas e alertas ligados ao impacto no cliente, não à saúde do servidor

O resultado

  • Falhas passaram a aparecer em minutos, em vez de serem descobertas por chamados de suporte
  • Reprocessar virou operação de rotina, e não incidente
  • Novas interfaces puderam ser adicionadas sem renegociar a cadeia inteira

Tecnologias

  • Java
  • REST e SOAP
  • Kafka
  • Oracle Database
  • Grafana

Mafra Informática

Delivery e operação de restaurantes

Conectando delivery e operação de restaurantes aos sistemas por trás deles

Produto, estoque e pedido circulando com confiabilidade entre os sistemas comerciais e a operação que precisa entregar.

Ponta a pontaInvocações aos sistemas por trás da operação

O desafio

Dado de varejo só serve se estiver atual. Preço muda, estoque anda, pedido chega mais rápido do que uma carga noturna consegue processar, e cada sistema envolvido tinha a sua própria ideia do que é um código de produto.

O que fizemos

  • Trocamos cargas noturnas por sincronização incremental onde a latência realmente importava
  • Construímos uma camada de mapeamento para cada sistema manter os seus códigos sem quebrar os outros
  • Adicionamos rotinas de conciliação que comparam os dois lados e relatam diferenças em vez de escondê-las
  • Colocamos o fluxo inteiro em um painel que a operação lê todo dia

O resultado

  • Diferenças de estoque e preço são pegas no mesmo dia, não no fechamento do mês
  • O fluxo de pedidos continua andando quando um sistema fica indisponível, e depois se recupera
  • A operação enxerga o estado de cada fluxo sem precisar perguntar para um desenvolvedor

Tecnologias

  • Java
  • Oracle Database
  • REST
  • Filas de mensagem
  • Grafana

Confidencial

Logística

Saindo de um sistema que ninguém queria tocar

Um sistema central sem testes, sem documentação e sem um fim de semana livre para desligar. Evoluído em fatias.

Sem downtimeMigração de legado sem congelamento

O desafio

O negócio não podia parar e os autores originais já não estavam mais lá. A reescrita foi proposta duas vezes e abandonada duas vezes, porque o risco era impossível de justificar.

O que fizemos

  • Envolvemos o sistema legado em uma fachada de API para que o código novo nunca falasse direto com ele
  • Adicionamos testes de caracterização em volta do comportamento que importava antes de mudar qualquer coisa
  • Movemos uma capacidade por vez para trás da fachada, com escrita dupla durante cada transição
  • Mantivemos os dois sistemas conciliados continuamente até o caminho antigo poder ser desligado

O resultado

  • A migração aconteceu sem congelar o negócio e sem janela de parada anunciada
  • Cada fatia podia voltar atrás sozinha, então o risco ficou pequeno
  • O time deixou de ter medo de fazer deploy naquela parte do sistema

Tecnologias

  • Fachada de API
  • Escrita dupla
  • CDC
  • Testes automatizados
  • Prometheus

O seu projeto não vai parecer com nenhum destes. É por isso que a conversa vem primeiro.

Fale conosco