Pular para o conteúdo

Web Dev Labs

Base de conhecimento sobre desenvolvimento web do Caramelo Tech - do HTML ao system design.

  • Fundamentos Web - o alicerce do front-end: HTML e CSS
  • Engenharia de Software - escrever código que dá para manter: princípios, padrões e testes
  • APIs - como os sistemas conversam: protocolos, estilos de comunicação, segurança e evolução
  • Databases - guardar dados com segurança: modelo relacional e NoSQL, garantias transacionais, arquitetura interna e busca
  • System Design - pensar o sistema antes de construir: fundamentos, trade-offs e metodologia
  • Escalabilidade e Infraestrutura - aguentar mais carga: escala, cache, load balancer, API Gateway, CDN
  • Sistemas Distribuídos - quando os dados vivem em várias máquinas: consistência, replicação e coordenação entre nós
  • Transações Distribuídas - manter tudo coerente sem uma transação única: Saga, Outbox e afins
  • Mensageria - comunicação assíncrona: arquitetura orientada a eventos, filas e brokers (Kafka, RabbitMQ) e suas garantias
  • Microsserviços - dividir o sistema em serviços: decomposição, comunicação e operação
  • Resiliência - continuar de pé quando algo falha: timeout, retry, circuit breaker, disponibilidade
  • Observabilidade - enxergar o que acontece em produção: logs, métricas, traces e ferramentas
  • Entrega Contínua - do commit ao ar: containers, Kubernetes, CI/CD e categorias de serviço em nuvem
  • System Design na Prática - problemas de entrevista resolvidos ponta a ponta
  • Ferramentas - o ferramental de trabalho: Git, Conventional Commits, Pull Requests, fluxos e GPG

Navegue pelas seções na barra lateral. Se está começando, comece por Fundamentos Web.

As seções seguem uma progressão pensada para entrevistas de backend: da escrita de código (Engenharia de Software, APIs, Databases) até sistemas distribuídos em escala (System Design, Escalabilidade, Sistemas Distribuídos, Transações Distribuídas, Mensageria, Microsserviços, Resiliência, Observabilidade e Entrega Contínua).

O repositório web-dev-labs também contém exercícios e projetos práticos na pasta examples/.