
Uma das perguntas com que frequentemente me deparo nas redes sociais é “Como começar a trabalhar com Java ?”. Se você também tem essa dúvida pode ficar tranquilo porque vou te ajudar!
Elenquei neste post 20 materiais (apostilas, livros, vídeos e artigos) para você passar em TODAS as entrevistas para Desenvolvedor Java.
1. Primeiros passos
Se você não tem ideia alguma do que está fazendo e de como o Java funciona o primeiro passo é conhecer os materiais listados abaixo (inclusive foi por onde comecei também).
1.1. Apostila: FJ11 – Java e Orientação a Objetos da Casa do Código
[obrigatório]
A apostila conhecida como FJ11 da Casa do Código é uma das mais famosas e necessárias para quem está começando. Há mais de sete anos a conheço e continuo recomendando à todos os meus estagiários/mentorados.
1.2. Apostila: Orientação a Objetos – Aprenda seus conceitos e suas aplicabilidades de forma efetiva da Casa do Código
[reforço]
Essa apostila é uma opção complementar sobre orientação a objetos (POO) em Java. Caso tenha absorvido bem a apostila anterior (FJ11) pode pular essa aqui.
1.3. Livro: Orientação a Objetos e SOLID para Ninjas da Casa do Código
[obrigatório]
Esse livro é um “must read”, pré-requisito para quem quer se tornar “expert” em Java. Os conceitos de SOLID e POO são cobrado em todas as entrevistas de emprego para trabalhar com Java.
2. Já estou habituado ao Java. Qual o próximo passo?
2.1. Livro: Java 8 Prático da Casa do Código
[obrigatório]
Sei que pode estar pensando “Java 8? Isso é coisa do passado”, mas não se preocupe. Com relação as releases do Java não podemos negar sua obsolescência, afinal entramos no Java 17. Apesar disso, a versão é uma das mais utilizadas até hoje e foi a que mais introduziu modificações grandes na sintaxe da linguagem. Entender como usar lambda e as interfaces funcionais mais utilizadas (Predicate, Function, Consumer, etc) é primordial.
2.2. Livro: Java Efetivo – As Melhores Práticas Para a Plataforma Java (3rd ed.)
[obrigatório]
Esse livro também é um “must read”. Depois de aprender o básico do Java, Orientação a Objetos e SOLID está na hora de conhecer as melhores práticas da linguagem. Nesse livro você reforçará todos os conceitos lidos previamente e compreenderá os porquês de suas atuações.
2.3. Livro: Refatorando com padrões de projeto, um guia em Java da Casa do Código
[obrigatório]
Considero esse livro obrigatório, pois ele irá introduzir o tema “Padrões de Projeto”. Saber quais são os padrões mais utilizados e como utilizá-los é um grande diferencial (muitos devs Java pecam por não possuí-lo).
2.4. Livro: Test-Driven Development Teste e Design no Mundo Real da Casa do Código
[obrigatório]
Esse é outro livro obrigatório que vai introduzir o tema “Testes e TDD”. Você irá aprender sobre teste unitário, integrado, funcional, sobre o que testar, como testar, como fazer mocks, etc.
2.5. Livro: Vire o jogo com Spring Framework da Casa do Código
[obrigatório]
Esse livro introduz o Spring Framework. Nele você irá aprender sobre o que é o framework, os problemas que ele resolve e a razão de ser o framework mais utilizado da atualidade. Apesar de ser um livro um pouco antigo, a base e os conceitos principais do framework continuam atuais. Absorver o conteúdo desse livro é um baita diferencial também!
3. Sênior level
3.1. Livro: GoF – Padrões de Projetos: Soluções Reutilizáveis de Software Orientados a Objetos
[obrigatório]
Eu considero esse livro uma leitura obrigatória para o nível Sênior, pois é importante conhecer todos os padrões de projeto existentes. É claro que você não precisa decorar a implementação de todos, mas é primordial ter conhecimento de suas existências.
3.2. Livro: Back-end Java Microsserviços, Spring Boot e Kubernetes da Casa do Código
[obrigatório]
Abrindo alas no nível Sênior trago um livro que vai te dar uma excelente base da arquitetura mais utilizada atualmente. Você irá aprender sobre como funciona a arquitetura de Micro Serviços, como utilizar o Spring Boot e uma palinha sobre como utilizar o Kubernetes.
Se você chegou até aqui: PARABÉNS! Já está apto para passar em 100% das entrevista de Java e, caso já esteja na área, subir rapidamente de cargo se tornando referência no assunto.
3.3. Livro: Java Concurrency in Practice
[reforço]
Sim, peguei leve no tema de concorrência e deixei como uma leitura reforço. Deixei assim porque é um baita diferencial saber (te torna um profissional muito mais completo), mas não é tão cobrado nas entrevistas da maioria das empresas. Nesse livro você vai aprender TUDO que precisa saber sobre como lidar com concorrência no mundo do Java. Aprenda sobre Threads, Runnables, Atomic’s, Latch’s, etc.
3.4. Artigo: Programação Funcional
[nice to have]
Esse artigo de minha autoria deixei como ‘nice to have‘ por conta de ser um tema mais avançado (Programação Funcional), mas que é um SUPER diferencial também. Vale a pena estudar para se destacar nas entrevistas.
3.5. Livro: Implementando Domain-Driven Design
[nice to have]
Esse é outro ‘nice to have‘. Nem toda empresa conhece e aplica tais práticas e, apesar disso, o conteúdo vai ajudá-lo a compreender modelagem de dados e Domain Driven Design. Ao invés de recomendar o livro original do Eric Evans recomendo esse aqui, já que ele é bem menos maçante e focado na implementação prática.
4. Conteúdo adicional
4.1. Padrões de projeto e SOLID
- AULA que o Branas deu sobre SOLID e Design de Software na prática. Caso tenha ficado com dúvida sobre SOLID, não deixe de assistir.
- Refactoring Guru: Padrões de Projeto é o site mais profissional que existe sobre o tema. Bem ilustrativo e de fácil compreensão.
- Blog do Marcos Brizeno focado em Padrões de Projetos. Exemplos reais do dia-a-dia (já usei e continuo usando MUITO) (@marcosbrizeno)
- Arquitetura e desenvolvimento de software dezenas de posts bem legais no jundevelopers do Gustavo Bigardi (@gbbigardi).
4.2 Micro Serviços com Spring Boot
- E-book: Spring Boot da Algaworks.
- REST: Princípios e boas práticas da Caelum
- E-book: Spring Boot – Da API REST aos Microservices da Michelli Brito (@MichelliBrito4). Apresenta um conteúdo complementar bem legal sobre o tema de Micro Serviços.
Foto do Banner de Julia M Cameron no Pexels
One Comment
Priscila
👌🏻