Da prompt engineering à frontier company: por que o modelo já não é o diferencial

Três anos atrás, a pergunta que eu mais ouvia era: “qual é o melhor prompt?” Dois anos atrás, mudou pra: “como faço RAG?” Ano passado: “como construo um agent?” Esse ano, a conversa mudou de tamanho. Ninguém está perguntando só como fazer um chatbot melhor. A pergunta agora é como uma empresa inteira opera com agents, com governança, observabilidade e permissões de verdade. Essa sequência conta uma história boa sobre maturidade. E vale conectar os pontos porque ela explica por que tanta gente ainda discute o problema errado. ...

2 de julho de 2026 · 7 minutos · Ricardo Martins

Como RAG funciona: da teoria ao pipeline

O VP de produto chega na daily: “Quero que o chatbot responda perguntas sobre nossa documentação interna. Tem 2000 páginas de runbooks, políticas, e procedimentos. O ChatGPT não sabe nada disso.” O time de ML responde: “Vamos implementar RAG.” Todo mundo faz que sim com a cabeça. Você fica com a tarefa de provisionar a infra. Antes de subir recurso, vale entender o que RAG realmente faz por dentro. tl;dr: RAG é pipeline de indexação + retrieval + prompt. O que mais quebra em produção é chunk ruim, busca ruim e custo do LLM, não falta de fine-tuning. ...

2 de julho de 2026 · 8 minutos · Ricardo Martins

Como vector databases funcionam por dentro

O time de ML acabou de te pedir um “vector database” em produção. Você sabe operar PostgreSQL, Redis, Cosmos DB. Mas isso? É um banco de dados ou um índice de busca? Precisa de backup? Tem replicação? Qual o modelo de consistência? Aqui dentro: o que é, como funciona por dentro, e como operar em produção. tl;dr: vector database, na prática, é um motor de busca por similaridade com índice ANN. O custo mora em RAM, recall, rebuild de índice e operação de busca, não só em “guardar vetores”. ...

29 de junho de 2026 · 8 minutos · Ricardo Martins

Reinforcement learning: o que é e por que importa pra LLMs

Segunda-feira, 9h. Você pede pro chatbot um resumo do incidente da madrugada. Ele responde com educação, parece confiante e ainda improvisa quando não sabe. Esse comportamento não aparece por acaso: um modelo base sem alignment só completa texto estatisticamente provável. tl;dr: Reward, policy, RLHF e DPO ajudam a explicar por que um LLM ajustado parece prestativo, verboso ou confiante demais. Se você entende esse pipeline, entende melhor o comportamento do modelo em produção. ...

26 de junho de 2026 · 7 minutos · Ricardo Martins

Conceitos de LLMs: o deep dive que faltava

Sexta-feira, 17h. Você recebe um ticket do time de data science: “O modelo está retornando respostas cortadas. Parece que o context window encheu. Pode aumentar?” Você olha pro ticket. Context window? Aumentar como? Isso é configuração de infra ou limitação do modelo? É memória? É disco? Onde isso vive? Se você já passou por isso, esse post é pra você. Aqui dentro: o que cada peça de um Large Language Model faz, explicado pra quem entende de sistemas. Não pra virar ML engineer, mas pra ter vocabulário e contexto pra resolver problemas reais no dia a dia. ...

23 de junho de 2026 · 8 minutos · Ricardo Martins

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 · 17 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. No papel parece simples: “me mostra os posts de quem eu sigo em ordem cronológica”. Em produção vira outro bicho 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 · 17 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. O que impressiona aqui não é só a escala, mas a pressão simultânea por latência baixa, conexões persistentes e durabilidade. ...

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 é uma das perguntas mais clássicas de system design porque um sistema de vídeo encosta em quase tudo que costuma cair na entrevista: upload grande, processamento assíncrono, storage massivo, CDN global, adaptive streaming e leitura pesada com cache. 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 · 12 minutos · Ricardo Martins