Introdução
Esse post fala sobre livros que em geral ouvimos falar que todo desenvolvedor de sofware, independente da linguagem deveria ler. Nem todos são livros que li, mas tentei compilar alguns posts de sites para tentar guiar pessoas que estejam procurando esse tipo de informação.
Na talk O que você vai ser quando crescer, eu tento falar sobre carreira de desenvolvimento de maneira geral. Existe uma base de assunto muito comum e importante aprender, como redes, sistemas operacionais, sistemas distribuídos, compiladores, que são matérias chave para desenvolvedores de sofware. Estrutura de linguagens, também é uma matéria interessante para quem quer ser dev.
A primeira vez que li um post dessa natureza e fiquei impressionado foi no blog de Guilherme Chapiewski que hoje é diretor na Pay Pal, segundo a conta dele no linkedin. Ele fez o primeiro em 2008 e o segundo em 2014 e esses são atuais até os dias de hoje.
Critério para buscar os posts usados
Fiz uma busca no Google usando as palavras “livros desenvolvedores devem ler” e “book dev should read”, além de posts que eu já tinha lido e achava clássico sobre esse tema. A lista que compilo aqui não contém apenas uma reprodução das fontes encontradas, mas sim um filtro aplicado na minha percepção e vivência, além do que já li algo ou conversei com outros devs referência que recomendaram. Por esse motivo, mantive as fontes completas de todo levantamento para que avaliem e discutam na seção de comentários se julgarem necessários.
Livros mais citados e que concordo
Carreira
Padroes de projetos
Boas práticas de programação
Testes
Integração e entrega contínua
Algoritimos e lógica de programação
Linguagens
Javascript
C#
Java
Práticas ágeis
Gestão de projetos
Mencionado em diversos rankings
Ferramenta interessante que descobri na busca
Na leitura do link descobri uma ferramenta interessante para quem gosta de sempre estar buscando livros. A plataforma mustread.tech tem como objetivo criar um repositório open-source de livros separados por temas.
Lista de temas:
- Agile
- Algorithms
- Java
- JavaScript
- Operating Systems
- Product Development
- Ruby
- Software Architecture
- Testing and Quality Assurance
- Thinking
- Web Technologies
- E outros tópicos.
Conclusão
Como pode ser visto, o mundo da computação é algo que para nos especializarmos é necessário muito estudo e muitas horas de dedicação, por esse motivo, é importante além das bibliotecas, frameworks, APIs, se aprofundar em técnicas, práticas e metodologias de desenvolvimento para construção de sofware de qualidade. Infelizmente, nem todos livros da lista tive tempo/oportunidade de ler. Muitos já ouvi falar e tentei criar um post para estruturar isso, inclusive para consultas minhas no futuro.
Fontes usadas
Blogs diversos
- Williams Oliveiras - Geral
- Williams Oliveiras - Focado em iniciante
- Blog redehost 1
- Blog redehost 2
- Porfissionais TI - Baseado no stackoverflow (2017)
- Luiz Tools - RS
- Guilher Chapiewski - 2008
- Guilher Chapiewski - 2014
- Linkedin 1
- blog 1
- blog 2
- blog 3
Medium
- Medium 1
- Medium 2
- Medium 3
Dev.to
- dev.to
Hackernoon
- hackernoon 1
- hackernoon 2
Dzone
- dzone 1
- dzone2
Visão do Kico Lobo sobre livros
Kico faz todo ano um review sobre livros que ele lê que considerdo interessante ler.