Autor
Equipe Tech do Sonne
24 publicações
Cache: quando usar, onde colocar e como não se enganar com dado velho
Cache é a otimização mais poderosa e mais traiçoeira do desenvolvimento. Um guia sobre camadas, estratégias e o problema de verdade: a invalidação.
Por Equipe Tech do Sonne
Ler →Complexidade de algoritmos sem susto: entendendo o Big-O de verdade
O Big-O assusta na entrevista e desaparece no dia a dia — mas é a ferramenta que explica por que seu código fica lento quando os dados crescem. Um guia sem susto.
Por Equipe Tech do Sonne
Ler →Tratamento de erros que não engana: exceções, resultados e falhas que você consegue depurar
Erros esperados não são bugs, e código que engole exceção esconde a causa. Um guia prático de tratamento de erros que você consegue depurar às 3 da manhã.
Por Equipe Tech do Sonne
Ler →Os princípios SOLID na prática: cinco regras para um código que aguenta mudança
SOLID explicado sem dogma: o que cada princípio resolve, exemplos de violação e correção, e quando aplicá-lo custa mais do que a bagunça que evita.
Por Equipe Tech do Sonne
Ler →Concorrência e paralelismo: o que muda quando seu código faz várias coisas ao mesmo tempo
Race conditions, deadlocks, locks e o modelo de memória: entenda por que código concorrente é difícil e quais padrões o tornam seguro e previsível.
Por Equipe Tech do Sonne
Ler →Estruturas de dados essenciais: escolher a estrutura certa é escolher o desempenho
Array, lista ligada, hash table, árvore e grafo: entenda os trade-offs de cada estrutura de dados e por que a escolha certa define o desempenho do seu código.
Por Equipe Tech do Sonne
Ler →Code review eficaz: como revisar código sem virar gargalo nem carimbo
O que procurar numa revisão, como dar feedback que constrói, e por que a maioria dos code reviews desperdiça a oportunidade mais valiosa da engenharia em equipe.
Por Equipe Tech do Sonne
Ler →Carreira em engenharia de software: o que ninguém te conta sobre a progressão
Júnior, pleno, sênior e além: o que muda de verdade em cada nível, por que a progressão não é sobre saber mais tecnologias, e como crescer sem se perder.
Por Equipe Tech do Sonne
Ler →Como os índices SQL realmente funcionam (e por que sua query está lenta)
A B-tree, a busca sequencial, os índices compostos e o plano de execução: entenda o que acontece por baixo de uma query para tornar bancos de dados rápidos.
Por Equipe Tech do Sonne
Ler →Design de APIs REST: os princípios que separam uma API agradável de uma dor de cabeça
Recursos, verbos, códigos de status, versionamento e paginação: um guia prático para projetar APIs REST que os consumidores entendem e que envelhecem bem.
Por Equipe Tech do Sonne
Ler →Git além dos comandos: entendendo o modelo mental que evita as enrascadas
Commits, branches, merge e rebase fazem sentido quando você entende o grafo por baixo. Um guia do modelo mental do Git e dos fluxos de trabalho que funcionam.
Por Equipe Tech do Sonne
Ler →A pirâmide de testes: por que testar rápido e testar o suficiente não são a mesma coisa
Unitários, de integração e end-to-end: entenda a pirâmide de testes, o que cada camada prova, e como montar uma suíte que dá confiança sem virar um peso morto.
Por Equipe Tech do Sonne
Ler →Acoplamento e coesão: os dois eixos que decidem a arquitetura do seu software
Antes de escolher microsserviços ou monólito, entenda acoplamento e coesão — os dois princípios que realmente determinam se seu sistema será fácil ou impossível de evoluir.
Por Equipe Tech do Sonne
Ler →Clean Code na prática: escrevendo código que a próxima pessoa consegue ler
Nomes, funções, comentários e níveis de abstração: um guia prático de clean code para escrever código legível, testável e barato de manter no longo prazo.
Por Equipe Tech do Sonne
Ler →
Go errors v2: do 'if err != nil' ao que muda em 1.26
errors.Join, %w, wrapping em cadeia: o que evoluiu nos últimos cinco anos e por que importa.
Por Equipe Tech do Sonne
Ler →
Rust no front da fila: media-svc na real
Por que escolhemos Rust pra dois serviços de uma plataforma 90% Go e o que aprendemos.
Por Equipe Tech do Sonne
Ler →
ULID em coluna UUID: a interop que evitou uma migração inteira
Como armazenar ULIDs em colunas UUID sem perder funcionalidade nem performance.
Por Equipe Tech do Sonne
Ler →
Caddy on_demand_tls explicado em 10 minutos
Como servir TLS pra milhares de domínios sem pre-provisionar certificado — e como evitar abuso.
Por Equipe Tech do Sonne
Ler →NATS JetStream pra outbox, com o mínimo de cerimônia
Padrão outbox sem Kafka, sem Debezium, sem sofrimento. Cinco serviços em produção dizem que funciona.
Por Equipe Tech do Sonne
Ler →SpiceDB sem mitologia: schema, caveats e por que importa
Authz como serviço com modelo Zanzibar — quando vale, como modelar, onde a complexidade aparece.
Por Equipe Tech do Sonne
Ler →Postgres schema-per-service: o por que e o quando dói
Uma instância de Postgres, 15 schemas, 15 serviços. A defesa de uma escolha contra-intuitiva.
Por Equipe Tech do Sonne
Ler →Ansible idempotente: 15 playbooks pra um deploy reproduzível
Como camverly-ops cobre provisão, deploy, update e bootstrap sem precisar de SSH manual.
Por Equipe Tech do Sonne
Ler →Astro 5 SSR no Node 22: lições do web-public em produção
Por que SSR em Astro é diferente do que Next.js te ensinou, e o que ganhamos com isso.
Por Equipe Tech do Sonne
Ler →SystemD que não vaza: NoNewPrivileges, ProtectSystem e PrivateTmp
Três flags que isolam serviços a custo zero. O que cada uma faz e quando ativar.
Por Equipe Tech do Sonne
Ler →