<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0" xmlns:cc="http://cyber.law.harvard.edu/rss/creativeCommonsRssModule.html">
    <channel>
        <title><![CDATA[Stories by Allan Ciqueira Géa on Medium]]></title>
        <description><![CDATA[Stories by Allan Ciqueira Géa on Medium]]></description>
        <link>https://medium.com/@allanciqueira?source=rss-96973672709c------2</link>
        <image>
            <url>https://cdn-images-1.medium.com/fit/c/150/150/1*FAQRJmoAYXnJ9tfeqGnNaQ.jpeg</url>
            <title>Stories by Allan Ciqueira Géa on Medium</title>
            <link>https://medium.com/@allanciqueira?source=rss-96973672709c------2</link>
        </image>
        <generator>Medium</generator>
        <lastBuildDate>Sat, 14 Nov 2026 07:54:00 GMT</lastBuildDate>
        <atom:link href="https://medium.com/@allanciqueira/feed" rel="self" type="application/rss+xml"/>
        <webMaster><![CDATA[yourfriends@medium.com]]></webMaster>
        <atom:link href="http://medium.superfeedr.com/" rel="hub"/>
        <item>
            <title><![CDATA[FinOps na Prática: Eficiência Multicloud, Governança e Cultura de Otimização]]></title>
            <link>https://medium.com/@allanciqueira/finops-na-pr%C3%A1tica-efici%C3%AAncia-multicloud-governan%C3%A7a-e-cultura-de-otimiza%C3%A7%C3%A3o-2ed58d0150d5?source=rss-96973672709c------2</link>
            <guid isPermaLink="false">https://medium.com/p/2ed58d0150d5</guid>
            <category><![CDATA[finops]]></category>
            <category><![CDATA[scale]]></category>
            <category><![CDATA[money-management]]></category>
            <dc:creator><![CDATA[Allan Ciqueira Géa]]></dc:creator>
            <pubDate>Sun, 09 Feb 2025 16:43:40 GMT</pubDate>
            <atom:updated>2025-02-10T14:10:37.991Z</atom:updated>
            <content:encoded><![CDATA[<p>Em um mundo onde a nuvem é essencial para a operação digital, FinOps (Financial Operations) não se trata apenas de cortar custos, mas sim de otimizar investimentos, garantindo performance, eficiência e governança. No exemplo que vou descrever sobre nossa operação multicloud, temos flexibilidade para movimentar cargas entre AWS e Azure, buscamos sempre maximizar o uso da cloud mais eficiente em determinado momento, assim como temos sistemas/produtos que rodam apenas em uma usando o que tem de melhor por conceito.</p><p>Nosso modelo segue uma abordagem de prioridade dinâmica: trabalhamos sempre com uma cloud principal, mas mantemos a possibilidade de movimentação para a secundária. Isso nos dá resiliência e flexibilidade, permitindo otimizar custos sem comprometer disponibilidade.</p><p><strong><em>Eficiência Multicloud: O Conceito de “0 e 1”</em></strong></p><p>Uma das estratégias centrais para controle de custos é a forma como gerenciamos nossa cloud secundária. Aplicamos um modelo que chamamos de “0 e 1”, onde os recursos da infraestrutura que não estão atendendo tráfego ativo são reduzidos a quase zero.</p><p>Para garantir que tudo está up-to-date, adotamos uma prática chamada flip-flop, que ocorre a cada 45 dias. Nesse processo, passamos um final de semana rodando nossos canais digitais na cloud secundária. Isso nos permite testar resiliência, garantir compatibilidade e verificar a eficiência do modelo “0 e 1” na prática.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*MhHPAjZenAe5lXzHUc_EbA.png" /></figure><p><strong><em>Otimização no Uso de Containers, Spot Instances e Serverless</em></strong></p><p>Nosso stack de serviços opera fortemente em plataformas de containers, seja EKS (AWS) ou AKS (Azure). Para garantir eficiência, implementamos uma rotina de escalonamento dinâmico baseado em requisições e consumo de recursos, permitindo que:</p><ul><li><em>Os pods aumentem e reduzam conforme a demanda</em></li></ul><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*HFuIIOK_LxIgyKTCA47ajQ.png" /></figure><p><em>• Os nodes subam sob demanda e sejam removidos quando não necessários</em></p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*4dUTOMk1WmYA2Ok1EbD2eQ.png" /></figure><p>Além disso, adotamos Spot Instances para workloads não críticos, reduzindo custos em até 50% durante a madrugada.</p><p>Outro pilar importante na modernização da infraestrutura é a eliminação de pods e nodes para workloads de baixa utilização, movendo esses workloads para serverless. Estamos investindo na conversão de aplicações para GraalVM e Quarkus, o que nos permite rodá-las de forma mais performática e econômica.</p><p><strong><em>Uso Estratégico de Savings Plans e Reservas</em></strong></p><p>Para workloads previsíveis, otimizamos o uso da nuvem com Savings Plans e reservas, criando um equilíbrio entre instâncias sob demanda, reservadas e Spot, reduzindo custos fixos sem comprometer a flexibilidade.</p><p><strong><em>Rightsize das Máquinas</em></strong></p><p>O processo de rightsizing envolve ajustar o tamanho das instâncias de computação na nuvem para corresponder às necessidades reais de uso, evitando desperdícios e otimizando custos. Isso pode ser feito através da análise de métricas de uso, como CPU, memória e I/O, para identificar instâncias subutilizadas ou superdimensionadas. Ferramentas de monitoramento e análise de performance são essenciais para esse processo, permitindo ajustes dinâmicos e automáticos conforme a demanda.</p><p><strong><em>Famílias que Melhor Atendem</em></strong></p><p>A escolha da família de instâncias correta é crucial para otimizar custos e performance. As principais famílias de instâncias incluem as otimizadas para computação, memória, armazenamento e uso geral. A seleção deve ser baseada nas características do workload. Por exemplo, workloads que exigem alta capacidade de processamento podem se beneficiar de instâncias otimizadas para computação, enquanto aplicações que requerem grandes quantidades de memória podem se beneficiar de instâncias otimizadas para memória.</p><p><strong><em>Próximos Passos: Modernização, Automação Inteligente e Eficiência Operacional</em></strong></p><p><em>1. Ampliação do uso de Serverless</em></p><ul><li>Estamos convertendo aplicações para GraalVM + Quarkus e movendo workloads esporádicos para Lambda Functions e Azure Functions, eliminando infraestrutura ociosa.</li><li>Estamos alterando soluções de Cache, Banco de dados e Mensageria para o uso de Serveless, dessa maneira gerando eficiencia e pagando realmente pelo consumo efetivo da aplicação, que muitas das vezes é executada no horario comercial.</li></ul><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*fgRWAahsxzP6f2VNW0DPgg.png" /></figure><p><em>2. Piloto com AWS Karpenter</em></p><p>•	Estamos testando o AWS Karpenter, uma ferramenta de provisionamento e escalonamento de nós para Kubernetes.</p><ul><li>Como somos multicloud e essa solução atende apenas AWS, continuamos utilizando nossa automação e nosso modelo de Machine Learning, que usa o Prometheus e KEDA para tomar decisões de escalonamento sobre demanda.</li></ul><p>3.<strong><em> </em></strong><em>Migração Graviton. — AWS</em></p><ul><li>Os processadores Graviton da AWS são baseados na arquitetura ARM e oferecem uma alternativa eficiente em termos de custo e performance para workloads na nuvem. Eles são projetados para fornecer uma melhor relação custo-benefício, especialmente para aplicações que podem tirar proveito da arquitetura ARM. O uso do Graviton pode resultar em economias significativas, especialmente para workloads que são intensivos em computação e podem ser otimizados para ARM. Para isso é necessário buildar novamente a aplicação para ser compatível com o a arquitetura ARM.</li></ul><p><em>4. Afinidade de Zonas para Redução de Custos</em></p><p>• Implementamos um modelo onde as aplicações sempre tentam chamar recursos dentro da mesma zona, reduzindo custos de tráfego entre Zonas de disponibilidade, que podem ser significativos.</p><p><em>5. Infraestrutura e Network Escaláveis</em></p><p>•	Aplicamos Auto Scaling Groups e Scale Sets também na infraestrutura de rede.</p><p>•	Firewalls, roteadores virtuais e balanceadores de carga são dimensionados automaticamente conforme o volume de requisições, evitando custos fixos desnecessários.</p><p><strong><em>O Diferencial: Cultura de FinOps Desde o Início do Desenvolvimento</em></strong></p><p>Tecnologia e automação são essenciais, mas o verdadeiro impacto do FinOps acontece na cultura. O maior diferencial de uma operação eficiente não está apenas em ter as melhores ferramentas, mas em garantir que cada desenvolvedor, desde o início do projeto, já pense na eficiência da nuvem.</p><p>Para isso, investimos fortemente em aculturamento e treinamento. Estamos fomentando essa cultura com:</p><p>✅ Chapters de FinOps, onde discutimos boas práticas e novas estratégias</p><p>✅ Treinamentos frequentes para desenvolvedores e arquitetos</p><p>✅ Showback e transparência total nos custos da cloud</p><p>✅ Monitoramento contínuo e revisão de oportunidades de otimização</p><p>A eficiência real só vem quando o desenvolvedor olha para os custos da cloud todos os dias, faz parte da sua rotina e busca continuamente maneiras de reduzir desperdícios. Esse mindset precisa estar presente desde a concepção da aplicação, e não apenas na fase de operação.</p><blockquote>No fim das contas, FinOps não é só sobre pagar menos, mas sobre gastar certo e extrair o máximo valor da cloud.</blockquote><p><strong><em>Conclusão: FinOps é um Caminho, Não um Destino</em></strong></p><p>A transformação digital baseada em cloud não é só sobre migrar workloads, mas sobre reestruturá-los para serem realmente eficientes. O erro mais comum é fazer um lift-and-shift do on-premises para a nuvem e achar que isso vai reduzir custos. A realidade é o contrário: sem uma estratégia bem definida, o custo pode dobrar.</p><p>Por isso, nossa jornada de FinOps já dura mais de 4 anos e continua evoluindo. O equilíbrio entre custos, performance e inovação exige um trabalho constante, onde modernização, automação e cultura de eficiência são pilares fundamentais.</p><p>A cada dia, aprendemos, testamos e otimizamos. A nuvem deve ser um ativo estratégico, e não apenas um centro de custos. O verdadeiro FinOps não é gastar menos, mas sim gastar certo.</p><p>Agora me diz: como sua empresa está evoluindo no uso eficiente da cloud?</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=2ed58d0150d5" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Telemetria Funcional e Técnica: Redefinindo a Experiência Cliente End-to-End no Santander]]></title>
            <link>https://medium.com/@allanciqueira/telemetria-funcional-e-t%C3%A9cnica-redefinindo-a-experi%C3%AAncia-cliente-end-to-end-no-santander-1121dd0db951?source=rss-96973672709c------2</link>
            <guid isPermaLink="false">https://medium.com/p/1121dd0db951</guid>
            <dc:creator><![CDATA[Allan Ciqueira Géa]]></dc:creator>
            <pubDate>Sun, 12 Jan 2025 14:37:56 GMT</pubDate>
            <atom:updated>2025-01-12T20:25:09.509Z</atom:updated>
            <content:encoded><![CDATA[<p>No universo bancário digital, compreender o comportamento do cliente e garantir uma experiência consistente e fluida não é apenas um diferencial – é uma prioridade estratégica. No Santander, fomos além da telemetria técnica, combinando dados funcionais, experiências de usuário e análises técnicas para criar uma visão end-to-end que une a jornada do cliente à operação dos nossos sistemas.</p><p>Este artigo explora como utilizamos Dynatrace, OpenTelemetry (Otel) e o Elastic para capturar dados que transformam nossa visão sobre o cliente. Mostramos como informações como cliques, tempos de resposta, códigos de status e até jornadas abandonadas nos ajudam a otimizar a experiência digital enquanto rastreamos problemas técnicos com precisão. O impacto foi direto: melhorias no NPS, maior eficiência operacional e uma significativa redução no abandono de jornadas críticas.</p><p><strong>A Nova Era da Telemetria: Funcional e Técnica</strong></p><p>No Santander, a telemetria não se limita a identificar falhas técnicas. Ela é uma ponte entre a experiência do cliente e a saúde dos sistemas. Dividimos nossa abordagem em duas vertentes principais:</p><p>1.	Telemetria Funcional e de Experiência do Cliente:</p><p>•	Monitoramos a jornada do cliente: Onde ele clicou, quanto tempo demorou para uma página ou funcionalidade carregar e se abandonou etapas importantes, como um carrinho de compras ou uma transferência pendente.</p><p>•	Avaliamos indicadores de experiência: Analisamos métricas como tempo de resposta percebido pelo cliente, sucesso de operações e interação em pontos críticos da jornada.</p><p>2.	Telemetria Técnica:</p><p>•	Registramos tempo de resposta de APIs, códigos de status e erros técnicos, garantindo que as operações dos sistemas suportem a experiência desejada.</p><p>•	Rastreando eventos técnicos, correlacionamos problemas da experiência funcional com a operação de backend e infraestrutura.</p><p>Essa visão unificada nos permite entender o que aconteceu, por que aconteceu e como melhorar.</p><p><strong>A Arquitetura de Telemetria do Santander</strong></p><p>Nosso pipeline de telemetria combina tecnologias modernas com integração personalizada:</p><p>1.	Captura de Dados com Dynatrace e OpenTelemetry (Otel):</p><p>•	Utilizamos o Dynatrace para capturar spans (fragmentos de transações) no frontend e backend, conectando as interações do cliente com a operação técnica.</p><p>•	Com OpenTelemetry, implementamos rastreamento distribuído, propagando identificadores únicos (TraceID) em todas as chamadas, desde o Angular até os microsserviços Java, passando por APIs internas.</p><p>2.	Armazenamento e Análise com Elastic:</p><p>•	Os dados coletados são enviados para o Elastic, onde são indexados e transformados em dashboards detalhados. Isso permite que visualizemos métricas funcionais (como abandono de jornada) e técnicas (como erros em APIs) em uma única interface.</p><p>3.	TraceID Customizado:</p><p>•	Criamos um header customizado de TraceID para garantir rastreamento completo, até mesmo em interações com sistemas legados como mainframes. Esse identificador é gerado no frontend e propagado por toda a cadeia de microsserviços e APIs.</p><p><strong>Estratégia de Implementação: Conectores Padrão e Arquitetura Limpa</strong></p><p>Para assegurar que a telemetria fosse integrada de forma eficiente e sem impacto no desempenho dos sistemas, adotamos as seguintes estratégias:</p><p>•	Conectores Padrão com Boas Práticas de Desenvolvimento:</p><p>•	Desenvolvemos conectores seguindo princípios de Clean Code e Arquitetura Hexagonal, garantindo código limpo, modular e de fácil manutenção.</p><p>•	Esses conectores foram projetados para serem totalmente assíncronos, operando com conceitos de mensageria para não interferir no fluxo principal das aplicações.</p><p>•	Processo de Mensageria:</p><p>•	Envio de Dados: O cliente envia os dados de telemetria diretamente para um receptor dedicado.</p><p>•	Publicação em Fila: O receptor publica esses dados em uma fila de mensagens, assegurando processamento ordenado e confiável.</p><p>•	Consumo e Armazenamento: Um consumidor lê os dados da fila e os armazena no Elastic para análise posterior.</p><p>•	Envio de Spans do Dynatrace:</p><p>•	Os spans gerados pelo Dynatrace são enviados diretamente ao produto de maneira assíncrona durante sua execução, garantindo que o monitoramento não impacte a performance das aplicações.</p><p>Essa abordagem assegura que a coleta de dados de telemetria seja eficiente, não intrusiva e escalável, permitindo uma visão abrangente sem comprometer a integridade dos sistemas.</p><p><strong>Do Clique ao Código: Uma Visão End-to-End</strong></p><p>Graças à telemetria integrada, temos uma visão completa da jornada do cliente, desde o momento em que ele interage com o aplicativo até a execução de processos técnicos no backend.</p><p>Telemetria Funcional em Ação</p><p>•	Onde o cliente clicou? Monitoramos todos os cliques, interações e eventos no frontend para entender como os clientes navegam em nossos serviços.</p><p>•	Quanto tempo demorou? Avaliamos o tempo de resposta percebido pelo cliente e o comparamos com os tempos reais de backend para identificar gargalos.</p><p>•	Por que a jornada foi abandonada? Detectamos pontos críticos onde os clientes abandonam transações ou jornadas e correlacionamos com métricas técnicas, como erros de API ou lentidão no sistema.</p><p><strong>Um Caso Real: Contratação de Empréstimos</strong></p><p>Um dos maiores ganhos da nossa telemetria funcional veio no funil de contratação de empréstimos. Observamos que uma alta porcentagem de clientes estava abandonando a jornada em uma etapa quase no final do processo.</p><p>Diagnóstico da Telemetria</p><p>•	Usando os dados capturados, identificamos que o problema estava na etapa em que o cliente precisava inserir manualmente o valor do empréstimo desejado.</p><p>•	Ao analisar mais profundamente, percebemos que, ao digitar o valor sem incluir os decimais após a vírgula (ex.: “1000” em vez de “1000,00”), o sistema gerava um erro e impedia que o cliente prosseguisse.</p><p>Solução e Impacto</p><p>•	Ajustamos o sistema para aceitar valores sem a necessidade de decimais explícitos, corrigindo o problema.</p><p>•	O resultado foi uma redução de 90% na taxa de abandono dessa etapa específica da jornada.</p><p>Esse exemplo demonstra como a telemetria não só identifica problemas, mas fornece insights valiosos para otimizar processos e melhorar a experiência do cliente.</p><p><strong>Caso Real: Pro-atividade na prática</strong></p><p>A telemetria desempenha um papel crucial na prevenção e tratativa proativa de incidentes, permitindo que identifiquemos e solucionemos problemas antes que afetem significativamente nossos clientes. Um exemplo notável dessa abordagem ocorreu durante a ativação do ID Santander, nosso dispositivo de segurança para transações digitais.</p><p>Identificação do Problema</p><ul><li>Por meio de nossas ferramentas de telemetria, detectamos um aumento nos erros durante o processo de ativação do ID Santander. Observamos que os usuários, ao enfrentarem dificuldades, não conseguiam resolver o problema por meio do sincronismo padrão disponível no aplicativo.</li></ul><p>Ação Proativa</p><ul><li>Com base nesses dados, mapeamos os usuários afetados e implementamos uma ação centralizada para corrigir o problema de forma automática. Além disso, liberamos uma atualização do aplicativo com a correção definitiva.</li></ul><p>Resultados Monitorados pela Telemetria</p><ul><li>Após a implementação da correção, continuamos monitorando o comportamento dos usuários através da telemetria. Observamos que os clientes começaram a se recuperar automaticamente, sem necessidade de intervenções adicionais, indicando que a solução foi eficaz e não gerou novos impactos.</li></ul><p>Este caso exemplifica como a telemetria nos capacita a:</p><p>•	Detectar Anomalias: Identificar rapidamente aumentos inesperados de erros ou falhas nos processos.</p><p>•	Analisar Comportamentos: Compreender como os usuários interagem com nossas soluções e onde encontram dificuldades.</p><p>•	Implementar Correções Proativas: Agir antes que os problemas se tornem generalizados, melhorando a experiência do cliente.</p><p>•	Validar Soluções: Monitorar a eficácia das correções implementadas em tempo real.</p><p><strong>Impactos na Experiência do Cliente e no Negócio</strong></p><p>Os benefícios da nossa abordagem de telemetria vão além da resolução de problemas técnicos:</p><p>•	Aumento no NPS: Com uma experiência digital mais fluida e previsível, os canais digitais do Santander registraram um crescimento significativo no Net Promoter Score (NPS), refletindo maior satisfação dos clientes.</p><p>•	Melhoria na Acuracidade de Vendas: Ao otimizar jornadas críticas, como a de contratação de empréstimos, aumentamos a taxa de conversão e reduzimos gargalos no funil de vendas.</p><p>•	Proatividade Operacional: Com a telemetria funcional e técnica, identificamos problemas antes que o cliente precise abrir um chamado, agindo preventivamente para evitar insatisfações.</p><p><strong>Conclusão: Muito Além do Monitoramento</strong></p><p>No Santander, a telemetria vai além de capturar dados – ela conecta experiência funcional, operação técnica e estratégia de negócio. O resultado é uma operação mais eficiente, uma experiência mais satisfatória para o cliente e um ambiente onde problemas são resolvidos antes mesmo de serem percebidos.</p><p>Se você está implementando telemetria ou busca melhorar suas operações, compartilhe sua experiência! Juntos, podemos explorar ainda mais maneiras de transformar a jornada do cliente no universo digital.</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=1121dd0db951" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Estratégias de Resiliência Total: Como Stress Tests, Chaos Engineering e Patterns Garantem…]]></title>
            <link>https://medium.com/@allanciqueira/estrat%C3%A9gias-de-resili%C3%AAncia-total-como-stress-tests-chaos-engineering-e-patterns-garantem-82e4a385a012?source=rss-96973672709c------2</link>
            <guid isPermaLink="false">https://medium.com/p/82e4a385a012</guid>
            <category><![CDATA[patterns]]></category>
            <category><![CDATA[chaos-engineering]]></category>
            <category><![CDATA[sre]]></category>
            <dc:creator><![CDATA[Allan Ciqueira Géa]]></dc:creator>
            <pubDate>Sun, 22 Dec 2024 18:12:48 GMT</pubDate>
            <atom:updated>2024-12-23T20:34:21.885Z</atom:updated>
            <content:encoded><![CDATA[<h3><strong>Estratégias de Resiliência Total: Como Stress Tests, Chaos Engineering e Patterns Garantem Confiabilidade, Resiliência e Experiência do Cliente</strong></h3><p><strong>Introdução</strong></p><p>No mundo dos sistemas distribuídos, a busca por resiliência e confiabilidade vai além de simplesmente evitar falhas. É necessário garantir que os sistemas não apenas funcionem sob pressão, mas também proporcionem uma experiência consistente e fluida para os clientes, mesmo nos momentos mais críticos. No Santander, a área de <strong>Customer Experience Reliability Engineering (CXRE)</strong>, nossa versão customizada do modelo de <strong>Site Reliability Engineering (SRE)</strong>, desempenha um papel central nessa missão, combinando práticas avançadas como <strong>Stress Tests</strong>, <strong>Chaos Engineering</strong> e <strong>Patterns de Resiliência</strong>.</p><p>Este artigo detalha cada uma dessas disciplinas, as ferramentas que utilizamos, e como a integração entre elas não apenas valida a resiliência técnica, mas também reforça o compromisso do Santander com a experiência do cliente. No final de cada ciclo de testes, geramos um <strong>laudo completo</strong>, que reflete o aprendizado obtido e garante que todos os aspectos da confiabilidade estejam alinhados às necessidades dos nossos clientes.</p><p><strong>Stress Tests: Avaliando os Limites Sob Alta Carga</strong></p><p><strong>O que é?</strong></p><p>Stress Testing é a prática de avaliar o comportamento de sistemas em condições extremas, simulando picos de carga que ultrapassam os níveis normais de operação. É ideal para identificar gargalos de desempenho e testar a capacidade de escalabilidade do sistema.</p><p><strong>Como funciona?</strong></p><p>• Simulação de alta volumetria em APIs, servidores e bancos de dados.</p><p>• Análise de latência, throughput e consumo de recursos (CPU, memória).</p><p>• Testes em cenários críticos, como Black Friday ou fechamento de folha de pagamento.</p><p><strong>Ferramentas utilizadas no Santander:</strong></p><p>• <strong>LoadRunner:</strong> Para testes massivos em sistemas distribuídos, oferecendo métricas detalhadas de desempenho em tempo real.</p><p>• <strong>Apache JMeter:</strong> Para simulações de carga em componentes específicos e integrações contínuas com pipelines de CI/CD.</p><p><strong>Exemplo prático:</strong></p><p>Utilizamos stress tests em APIs de autenticação e processamento de pagamentos para garantir que, mesmo em condições de altíssimo tráfego, os sistemas permaneçam funcionais e escaláveis.</p><p><strong>Chaos Engineering: Resiliência no Meio do Caos</strong></p><p><strong>O que é?</strong></p><p>Chaos Engineering é a prática de introduzir falhas propositalmente para validar como o sistema responde e se recupera em condições adversas. Não se trata apenas de encontrar problemas, mas de preparar o sistema para “falhar bem”.</p><p><strong>Como funciona?</strong></p><p>• Simulação de falhas de rede, indisponibilidade de serviços e interrupção de nós em sistemas distribuídos.</p><p>• Avaliação de comportamentos em situações de degradação.</p><p>• Validação da recuperação automática do sistema.</p><p><strong>Ferramentas utilizadas no Santander:</strong></p><p>• <strong>Litmus Chaos:</strong> Para testes em clusters Kubernetes, simulando falhas como interrupção de pods e nós.</p><p>• <strong>AWS Fault Injection Simulator (FIS):</strong> Para criar cenários de falha em serviços gerenciados da AWS, como EC2 e RDS.</p><p><strong>Exemplo prático:</strong></p><p>Simulamos falhas de comunicação em serviços de mensageria durante picos de uso para validar se o sistema ativa corretamente estratégias de fallback e failover.</p><p><strong>Patterns de Resiliência: Operação Segura Mesmo Sob Pressão</strong></p><p><strong>O que são?</strong></p><p>Patterns de Resiliência são práticas de design que ajudam sistemas a se manterem operacionais, mesmo sob falhas ou alta carga. Eles garantem que partes críticas do sistema não sejam comprometidas por falhas localizadas ou temporárias.</p><p><strong>Principais Patterns utilizados no Santander:</strong></p><p>1. <strong>Rate Limiting:</strong> Limita o número de requisições processadas, protegendo o sistema contra sobrecarga.</p><p>2. <strong>Connection Timeout:</strong> Evita que conexões fiquem bloqueadas, liberando recursos.</p><p>3. <strong>Bulkhead (Compartimentação):</strong> Segrega recursos para limitar o impacto de falhas em partes específicas do sistema.</p><p>4. <strong>Circuit Breaker:</strong> Interrompe chamadas repetidas a serviços problemáticos, evitando falhas em cascata.</p><p>5. <strong>Fallback:</strong> Fornece respostas alternativas (como dados cacheados) quando um serviço principal está indisponível.</p><p><strong>Exemplo prático:</strong></p><p>Durante um teste de alta volumetria combinado com Chaos Engineering, utilizamos circuit breakers e bulkheads para garantir que APIs críticas continuassem operando enquanto serviços secundários estavam indisponíveis.</p><p><strong>HandOn — Pontos Importantes</strong></p><p><strong>Integração com DevOps e CI/CD:</strong> A integração das práticas de resiliência com DevOps e CI/CD é essencial para garantir que as melhorias sejam contínuas e automatizadas. No Santander, os testes são incorporados aos pipelines de CI/CD, permitindo que as equipes de desenvolvimento e operações implementem rapidamente as melhorias identificadas.</p><p><strong>Cultura Organizacional:</strong> A resiliência não é apenas uma questão técnica; é também cultural. No Santander, promovemos uma cultura de experimentação e aprendizado contínuo, onde as equipes são incentivadas a realizar treinamentos regulares e a adotar uma mentalidade de resiliência.</p><p><strong>Casos de Sucesso:</strong> Um exemplo de sucesso foi a aplicação de Chaos Engineering em nosso sistema de pagamentos, que resultou em uma redução de 30% no tempo de recuperação durante falhas. Isso não apenas melhorou a confiabilidade do sistema, mas também a satisfação do cliente.</p><p><strong>Desafios e Lições Aprendidas:</strong> Implementar essas práticas não é isento de desafios. Um dos principais desafios foi a resistência inicial das equipes em adotar falhas propositalmente. No entanto, ao longo do tempo, aprendemos que essas práticas são essenciais para identificar pontos fracos e fortalecer o sistema.</p><p><strong>Futuro da Resiliência:</strong> O futuro da resiliência está na automação e no uso de inteligência artificial para prever falhas antes que elas ocorram. Estamos explorando o uso de machine learning para analisar padrões de falhas e antecipar problemas potenciais. Dentro do Santander contamos com diversas iniciativas de GenAI, dessa maneira, exploraremos o máximo para prevenção e resolução de incidentes.</p><p><strong>CXRE no Santander: Garantindo Resiliência e Experiência ao Cliente</strong></p><p><strong>O que é a CXRE?</strong></p><p>A <strong>Customer Experience Real Ability Engineering (CXRE)</strong> é a versão customizada do modelo SRE no Santander, focada em garantir resiliência técnica enquanto coloca o cliente no centro das operações. Nossa abordagem não apenas identifica e resolve problemas, mas também promove inovação e aprendizado contínuos para oferecer a melhor experiência ao cliente.</p><p><strong>Nossos pilares:</strong></p><p>1. <strong>Confiabilidade:</strong> Sistemas que funcionam de forma consistente e previsível.</p><p>2. <strong>Resiliência:</strong> Capacidade de antecipar, mitigar e se recuperar de falhas.</p><p>3. <strong>Experiência do Cliente:</strong> Garantir que os impactos ao cliente sejam minimizados, mesmo em cenários de alta criticidade.</p><p><strong>A integração das práticas:</strong></p><p>A CXRE combina <strong>Stress Tests</strong>, <strong>Chaos Engineering</strong> e <strong>Patterns de Resiliência</strong> em um ciclo de testes estruturado, com foco na geração de resultados tangíveis que beneficiem diretamente nossos clientes.</p><p><strong>O Ciclo Completo: Da Validação ao Laudo Final</strong></p><p>No Santander, cada ciclo de testes segue uma abordagem estruturada para validar a confiabilidade técnica e a experiência do cliente:</p><p>1. <strong>Planejamento:</strong></p><p>Definimos os cenários de stress test e Chaos Engineering, alinhados aos padrões de resiliência.</p><p>2. <strong>Execução:</strong></p><p>Utilizamos ferramentas como HP LoadRunner, JMeter, Litmus Chaos e AWS FIS para criar cenários realistas e robustos.</p><p>3. <strong>Monitoramento:</strong></p><p>Medimos a resposta do sistema em tempo real usando dynatrace, coletando métricas como tempo de resposta, taxa de erro e disponibilidade(SLOs).</p><p>4. <strong>Geração do Laudo Final:</strong></p><p>Após os testes, produzimos um <strong>laudo completo</strong>, que inclui:</p><p>• <strong>Cenários testados:</strong> Descrição detalhada dos testes realizados.</p><p>• <strong>Resultados:</strong> Métricas de desempenho e resiliência observadas.</p><p>• <strong>Impacto na experiência do cliente:</strong> Análise de como o cliente foi (ou não) impactado em cada cenário.</p><p>• <strong>Recomendações:</strong> Melhorias a serem implementadas para reforçar a confiabilidade.</p><p><strong>Exemplo prático:</strong></p><p>Após um ciclo de testes em APIs de pagamento, o laudo final confirmou que, mesmo sob altíssima carga e falhas induzidas em serviços backend, a experiência do cliente permaneceu fluida graças à ativação de fallback e rate limiting.</p><p><strong>Conclusão: Resiliência Total e Experiência Garantida</strong></p><p>No Santander, a combinação de <strong>Stress Tests</strong>, <strong>Chaos Engineering</strong> e <strong>Patterns de Resiliência</strong>, aliada à expertise da <strong>CXRE</strong>, cria um ecossistema robusto que não apenas garante sistemas confiáveis, mas também reforça nosso compromisso com o cliente. Cada teste realizado é uma oportunidade de aprendizado, e cada laudo final reflete nosso esforço em entregar excelência operacional e uma experiência de qualidade.</p><p>Se sua organização ainda não adota essas práticas de forma integrada, o momento de começar é agora. No final, resiliência não é apenas sobre evitar falhas, mas sobre garantir que, mesmo diante do caos, seus clientes continuem confiando na sua capacidade de entregar o melhor.</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=82e4a385a012" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[HTTP/2 vs HTTP/3: Comparação de Desempenho e Segurança para Aplicações Web e Mobile com TLS]]></title>
            <link>https://medium.com/@allanciqueira/http-2-vs-http-3-compara%C3%A7%C3%A3o-de-desempenho-e-seguran%C3%A7a-para-aplica%C3%A7%C3%B5es-web-e-mobile-com-tls-f08bde331a40?source=rss-96973672709c------2</link>
            <guid isPermaLink="false">https://medium.com/p/f08bde331a40</guid>
            <category><![CDATA[protocol]]></category>
            <category><![CDATA[perfomance]]></category>
            <category><![CDATA[engenharia]]></category>
            <dc:creator><![CDATA[Allan Ciqueira Géa]]></dc:creator>
            <pubDate>Tue, 17 Dec 2024 15:54:09 GMT</pubDate>
            <atom:updated>2024-12-17T15:59:09.833Z</atom:updated>
            <content:encoded><![CDATA[<p>A evolução dos protocolos HTTP tem sido essencial para otimizar aplicações modernas, especialmente em ambientes que priorizam <strong>desempenho</strong>, <strong>resiliência</strong> e <strong>segurança</strong>, com <strong>TLS completo</strong>. A transição de <strong>HTTP/2</strong> para <strong>HTTP/3</strong>, impulsionada pelo protocolo QUIC (Quick UDP Internet Connections), apresenta ganhos significativos, mas também traz novos desafios e adaptações necessárias.</p><blockquote><strong><em>Principais Diferenças entre HTTP/2 e HTTP/3</em></strong></blockquote><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*peTZgvoD0kEp_ripDvxSdw.png" /></figure><blockquote><strong><em>O Problema do Head-of-Line Blocking</em></strong></blockquote><p>No <strong>HTTP/2</strong>, a multiplexação de requisições ocorre dentro de uma única conexão TCP. Contudo, o <strong>TCP exige entrega ordenada</strong> de pacotes, o que resulta no problema de <strong>Head-of-Line Blocking</strong> (HOL).</p><p>• <strong>Exemplo prático</strong>: Se um único pacote de um fluxo for perdido, todos os fluxos subsequentes ficam bloqueados até a recuperação do pacote, mesmo que não estejam relacionados.</p><p>• Isso afeta especialmente redes com alta <strong>latência</strong> e <strong>perda de pacotes</strong>, comuns em <strong>ambientes móveis</strong> ou <strong>Wi-Fi congestionado</strong>.</p><p><strong>Como HTTP/3 Resolve HOL Blocking</strong></p><p>O <strong>HTTP/3</strong> utiliza <strong>QUIC</strong>, que trata cada fluxo de dados <strong>independentemente</strong>. Pacotes perdidos são retransmitidos apenas no fluxo afetado, permitindo que os outros continuem seu processamento sem impacto.</p><p><strong>Resultado</strong>: Melhor desempenho em redes instáveis e ambientes móveis.</p><blockquote><strong><em>Cenários de Desempenho: HTTP/2 vs HTTP/3</em></strong></blockquote><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*B58y_fo4jmdsbRaJwQhBgA.png" /></figure><p><strong>Exemplo Real:</strong></p><p>Um estudo realizado pela <strong>Cloudflare</strong> mostrou que o HTTP/3 reduziu o tempo de carregamento de páginas em <strong>25%</strong> em comparação ao HTTP/2 em redes móveis, especialmente com <strong>latência</strong> e <strong>perda de pacotes</strong> elevadas.</p><blockquote><strong><em>Implementação e Compatibilidade</em></strong></blockquote><p><strong>Compatibilidade com Ferramentas e Infraestrutura:</strong></p><p>• <strong>Navegadores</strong>: Chrome, Firefox, Safari, Edge e Opera suportam HTTP/3.</p><p>• <strong>Sistemas Operacionais</strong>: Windows, Linux, macOS, iOS e Android oferecem suporte nativo.</p><p>• <strong>Servidores</strong>: NGINX, LiteSpeed e Cloudflare já têm suporte a HTTP/3.</p><p><strong>Adaptações Necessárias:</strong></p><p>1. <strong>UDP Firewall Rules</strong>: O HTTP/3 utiliza <strong>porta 443/UDP</strong>, o que pode exigir ajustes em firewalls e balanceadores de carga.</p><p>2. <strong>Monitoramento e Depuração</strong>: Ferramentas tradicionais precisam ser adaptadas para lidar com QUIC e criptografia TLS.</p><blockquote><strong><em>Ferramentas para Medir e Comparar HTTP/2 vs HTTP/3</em></strong></blockquote><p><strong>Ferramentas de Teste e Comparação:</strong></p><p>1. <strong>Wireshark</strong>: Captura e analisa pacotes HTTP/2 e HTTP/3, oferecendo insights detalhados de latência e retransmissões.</p><p>2. <strong>cURL</strong>: Permite testes de resposta com ambos os protocolos:</p><p>curl — http2 -I &lt;URL&gt;</p><p>curl — http3 -I &lt;URL&gt;</p><p>3. <strong>Lighthouse (Chrome DevTools)</strong>: Avalia o carregamento de páginas e mede o impacto em tempo real.</p><p>4. <strong>WebPageTest</strong>: Configura testes A/B entre HTTP/2 e HTTP/3.</p><p>5. <strong>Clumsy ou tc</strong>: Simulam perda de pacotes e latência.</p><p><strong>Ferramentas de APM com Suporte a HTTP/3</strong></p><p>1. <strong>Dynatrace</strong>:</p><p>• Monitora automaticamente HTTP/3, exibindo métricas de latência, throughput e perda de pacotes.</p><p>• Identifica gargalos e gera recomendações específicas.</p><p>2. <strong>Datadog</strong>:</p><p>• Suporte nativo ao QUIC, com dashboards personalizados para analisar tráfego HTTP/3.</p><p>3. <strong>New Relic</strong>:</p><p>• Suporte experimental ao QUIC e HTTP/3, coletando métricas e correlacionando com o desempenho da aplicação.</p><p>4. <strong>Elastic APM</strong>:</p><p>• Integra logs de servidores com suporte a HTTP/3 e QUIC.</p><blockquote><strong><em>Desafios e Considerações</em></strong></blockquote><p>Apesar das vantagens, HTTP/3 apresenta desafios técnicos:</p><p>1. <strong>Consumo de CPU</strong>: QUIC exige mais recursos devido à criptografia integrada.</p><p>2. <strong>Compatibilidade com Infraestrutura Legada</strong>: Firewalls e balanceadores antigos podem bloquear tráfego UDP.</p><p>3. <strong>Monitoramento e Debugging</strong>: A criptografia end-to-end dificulta a inspeção de pacotes para diagnóstico.</p><blockquote><strong><em>Conclusão</em></strong></blockquote><p>O HTTP/3 representa um salto importante para o desempenho e a segurança de aplicações web e móveis. Ao resolver problemas como <strong>Head-of-Line Blocking</strong> e oferecer suporte nativo ao <strong>TLS 1.3</strong>, ele se torna uma solução ideal para:</p><p>• Ambientes com alta latência e perda de pacotes (ex.: redes móveis e instáveis).</p><p>• Aplicações modernas que exigem troca rápida de rede (Wi-Fi/4G).</p><p>• Serviços de streaming e sistemas críticos com baixa tolerância a falhas.</p><blockquote><strong><em>Recomendações</em></strong>:</blockquote><p>1. Utilize ferramentas como <strong>Dynatrace</strong> para medir o impacto em produção.</p><p>2. Teste em ambientes A/B usando <strong>cURL</strong>, <strong>Lighthouse</strong> e <strong>Wireshark</strong>.</p><p>3. Ajuste sua infraestrutura (firewalls, CDNs, balanceadores) para suportar UDP/QUIC.</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=f08bde331a40" width="1" height="1" alt="">]]></content:encoded>
        </item>
    </channel>
</rss>