All Stories

System Design - Padrões de Comunicação Síncronos

Este texto é uma continuação direta do capitulo onde falamos sobre Protocolos e Comunicação de Redes. A ideia é seguir com os conceitos direcionados anteriormente para aplicá-los em diferentes tipos...

System Design - Protocolos e Comunicação de Rede

Neste capítulo, abordaremos de forma simplificada os conceitos essenciais dos principais tópicos de comunicação de rede sob a perspectiva de System Design. Compreender os protocolos de comunicação é de extremo...

System Design - Cache

Neste artigo, vamos abordar conceitos de cacheamento, ou caching, sob a ótica de System Design. À medida que exploramos as possibilidades de uso do caching, é fundamental compreender que, embora...

System Design - Performance, Capacidade e Escalabilidade

Esse é mais um artigo da série sobre System Design. Nele, vamos abordar três tópicos: Capacidade, Performance e Escalabilidade (não necessariamente nessa ordem), sempre com uma perspectiva conceitual de System...

Teoria das Janelas Quebradas e a Engenharia de Software

Este artigo é um exercício de um curso de escrita que eu estou fazendo. O objetivo era produzir um artigo abstrato e de opinião. Inicialmente ele não seria publicado, mas...

System Design - Microsserviços, Monolitos e Domínios

Este é o quarto artigo da série sobre System Design, e estou muito satisfeito com a direção que este material está tomando. Analisando o artigo depois de finalizado, acho sinceramente...

System Design - Load Balancers e Proxies Reversos

Este é o terceiro artigo da série sobre System Design. Hoje, vamos dar um deep dive em um tópico interessante e frequentemente subestimado: os Balanceadores de Carga e os Proxies...

System Design - Teorema CAP, ACID, BASE e Bancos de Dados Distribuídos

Esse é mais um artigo da série de System Design, que está se mostrando extremamente prazerosa de escrever. Tem sido muito gratificante me desafiar a entender temas densos e complexos...

System Design - Paralelismo, Concorrência e Multithreading

Este artigo é o primeiro de uma série sobre System Design. Esta série tem como objetivo explicar conceitos complexos de programação de maneira simples e objetiva para todos os tipos...