System design: URL Shortener, simplicidade em escala

“Design a URL shortening service like Bitly or TinyURL.” Essa é geralmente a primeira pergunta de system design que candidatos encontram. Parece simples: recebe URL longa, retorna URL curta, redireciona quando acessam. Dá pra fazer em 50 linhas de código, certo? Certo. Pra 100 usuários. Agora faz isso pra 100 bilhões de URLs com 100.000 redirects por segundo e vamos ver o quão “simples” é. O URL Shortener é o exercício perfeito pra fechar a série porque combina decisões aparentemente simples que revelam profundidade quando você puxa o fio: ...

30 de maio de 2026 · 16 minutos · Ricardo Martins

System design: Twitter/X, feed de notícias em escala

“Design a social media feed like Twitter.” Se YouTube é sobre arquivos grandes, WhatsApp sobre entrega garantida, e Uber sobre dados em movimento, Twitter é sobre o problema mais traiçoeiro de todos: fan-out. Um único tweet de alguém com 50 milhões de followers precisa aparecer na timeline de cada um deles, em segundos. O que parece simples (“mostrar posts de quem eu sigo em ordem cronológica”) se torna um monstro de engenharia quando a escala é: ...

28 de maio de 2026 · 17 minutos · Ricardo Martins

System design: Uber, geolocalização e matching em tempo real

“Design a ride-sharing platform like Uber.” Se YouTube é sobre throughput de dados e WhatsApp sobre latência de mensagens, Uber é sobre dados em movimento. Literalmente. Milhões de carros se movendo simultaneamente, e o sistema precisa saber onde cada um está, a cada segundo, pra conectar passageiros e motoristas em tempo real. O desafio do Uber é único porque combina: Geolocalização em tempo real (milhões de pontos se movendo) Matching otimizado (encontrar o melhor motorista, não apenas o mais próximo) Cálculo de rota e ETA (com condições de tráfego variando) Pricing dinâmico (oferta e demanda flutuando por região e minuto) Tudo isso com latência perceptível pro usuário de < 3 segundos entre apertar “pedir corrida” e ver o motorista atribuído. ...

26 de maio de 2026 · 16 minutos · Ricardo Martins

System design: WhatsApp, messaging em tempo real

“Design a messaging system like WhatsApp.” Se o YouTube é o exercício clássico de throughput e storage, WhatsApp é o exercício clássico de latência e conexões persistentes. O desafio muda completamente: em vez de entregar arquivos grandes pra milhões de viewers passivos, precisamos entregar mensagens pequenas pra bilhões de usuários em tempo real e garantir que nenhuma se perca. WhatsApp processa mais de 100 bilhões de mensagens por dia com uma equipe historicamente pequena (~50 engenheiros quando foi adquirido pelo Facebook em 2014). Esse é o poder de boas decisões arquiteturais. ...

24 de maio de 2026 · 14 minutos · Ricardo Martins

System design: YouTube, streaming de vídeo em escala

“Design a video-sharing platform like YouTube.” Essa é possivelmente a pergunta de system design mais clássica que existe. E o motivo é simples: um sistema de vídeo toca em quase todo conceito importante: upload de arquivos grandes, processamento assíncrono, storage massivo, CDN global, adaptive streaming, e leitura pesada com caching agressivo. Nesse artigo, vamos aplicar o framework do post anterior pra projetar uma plataforma de vídeo do zero. Não vou fingir que estamos inventando o YouTube. Vou explicar por que cada decisão arquitetural faz sentido no contexto de escala real. ...

22 de maio de 2026 · 11 minutos · Ricardo Martins

System design na prática: como pensar sistemas em escala

Você está numa entrevista. O entrevistador vira e fala: “Design a video-sharing platform like YouTube.” Você tem 45 minutos. O que faz primeiro? Se a resposta for “começo desenhando caixinhas no diagrama”, você já perdeu. System design não é sobre saber a resposta certa. É sobre demonstrar como você pensa. E pensar bem em system design é uma skill que se desenvolve com framework, prática e repertório. Este é o primeiro artigo da série System Design na Prática. Nos próximos posts, vamos dissecar sistemas reais como YouTube, WhatsApp, Uber e Twitter. Mas antes precisamos do toolkit mental. Esse artigo é o seu canivete suíço. ...

20 de maio de 2026 · 8 minutos · Ricardo Martins

Como se destacar em aplicações para vagas na gringa

Recrutadores gastam menos de 1 minuto na sua aplicação. Eu sei porque já estive dos dois lados: como candidato suando frio esperando resposta, e como entrevistador com 50 currículos pra revisar numa segunda-feira de manhã. Depois de anos aplicando para vagas fora do Brasil e participando de processos seletivos, compilei o que realmente funciona. E o que faz sua aplicação ir direto pro “não”. ...

19 de maio de 2026 · 12 minutos · Ricardo Martins

AI para engenheiros de infraestrutura: por que AI precisa de você

Esse é o primeiro post de uma série onde vou traduzir o mundo de AI para a linguagem que engenheiros de infraestrutura já falam. Se você é o tipo de profissional que configura VMs, monta pipelines de CI/CD e acorda de madrugada quando o Nagios dispara, esse conteúdo é pra você. A série é baseada no meu livro open-source AI for Infrastructure Professionals, adaptada e expandida aqui em português. A mensagem de segunda-feira de manhã São 8:47 da manhã de uma segunda-feira. Você está no meio do seu café, revisando um plano de Terraform pra um redesign de rede, quando uma mensagem no Slack acende sua tela. É do líder do time de data science: ...

26 de abril de 2026 · 7 minutos · Ricardo Martins

Technical Cheat Sheets

A RedHat publicou recentemente uma lista de “cheat sheets” para desenvolvedores bastante interessante. Estão disponíveis comandos básicos e avançados do Linux, Wildfly, Containers, MongoDB, Kubernetes, Eclipse, etc. Vale a pena dar uma olhada em: https://developers.redhat.com/blog/2017/05/23/technical-cheat-sheets-for-developers/

24 de maio de 2017 · 1 minuto · Ricardo Martins

Meu primeiro ano na Microsoft

Hoje eu completo meu primeiro ano trabalhando na Microsoft e por isto assim como eu fiz quando fui reprovado na primeira vez que participei no processo seletivo, e em seguida quando eu consegui ser aprovado e completava o terceiro mês, vou registrar aqui algumas palavras… Este foi um ano de muito aprendizado, desenvolvimento de novos skills, muita superação e muito trabalho. É como se todos os dias eu tivesse uma competição comigo mesmo, superando minhas limitações, descobrindo novas aptidões, testando e validando novas idéias/conceitos, assumindo riscos e me tornando um profissional melhor a cada dia. Para alguém que sempre trabalhou no lado do cliente, estar “do outro lado da bancada” tem sido um desafio incrível. ...

21 de dezembro de 2016 · 4 minutos · Ricardo Martins