Livros

Livros recomendados por tópico.

Algoritmos

Entendendo Algoritmos (Grokking Algorithms)

Aditya Bhargava

O livro que torna algoritmos acessiveis com ilustracoes e analogias do mundo real

Codigo

Código Limpo (Clean Code)

Robert C. Martin (Uncle Bob)

Escreva codigo que outros humanos conseguem entender

Engenharia

O Programador Pragmático (The Pragmatic Programmer)

David Thomas & Andrew Hunt

O livro que transforma sua mentalidade de executor de tarefas para solucionador de problemas

Sistemas

Projetando Aplicações Intensivas em Dados (DDIA)

Martin Kleppmann

A biblia de sistemas distribuidos, bancos de dados e arquitetura

Entrevistas

Entrevista de System Design (System Design Interview, Vol 1 e 2)

Alex Xu

Estudos de caso praticos de sistemas reais com decisoes de arquitetura explicadas

Codigo

Refatoração (Refactoring)

Martin Fowler

Tecnicas catalogadas para melhorar a estrutura interna do codigo sem mudar o comportamento externo

Arquitetura

Padrões de Projeto (Design Patterns — GoF)

Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides

O catalogo original de 23 design patterns que todo livro e framework referencia

DevOps

O Projeto Fênix (The Phoenix Project)

Gene Kim, Kevin Behr, George Spafford

Um romance que ensina os principios do DevOps atraves de uma narrativa envolvente

Carreira

Engenheiro Staff (Staff Engineer)

Will Larson

O guia para crescer na trilha tecnica alem de Senior Engineer

Classico

O Mítico Homem-Mês (The Mythical Man-Month)

Frederick P. Brooks Jr.

Classico de 1975 sobre gestao de projetos de software que continua absurdamente relevante

Como ler livros técnicos

1. Não leia linearmente

Identifique capítulos relevantes no índice. Pule o que não faz sentido ainda.

2. Implemente enquanto lê

Leu sobre binary search? Implemente. Leu sobre observer pattern? Refatore.

3. Anote com suas palavras

1-2 frases por capítulo. Use ferramentas como Obsidian para notas interligadas.

4. Releia após ganhar experiência

DDIA na primeira leitura: "interessante". DDIA na releitura: "agora entendo o cache failure".

5. Discuta com outros

Book clubs no trabalho. Ensinar é a melhor forma de consolidar conhecimento.