Para empezar (principiantes)
Si estás arrancando, busca libros que expliquen los fundamentos con claridad y ejercicios, no compendios de 1.500 páginas que abruman.
Para nivel intermedio y senior
Cuando ya programas, el salto viene de los libros que enseñan a diseñar bien: concurrencia, código limpio y arquitectura. Son los que separan a un junior de un senior.
Productos recomendados
Effective Java (Joshua Bloch)
El libro de referencia para escribir Java idiomático y correcto. 90 reglas concretas que todo desarrollador Java debería conocer.
Ver en AmazonJava Concurrency in Practice (Brian Goetz)
La biblia de la concurrencia en Java. Imprescindible si trabajas con hilos, threads o aplicaciones concurrentes.
Ver en AmazonClean Code (Robert C. Martin)
No es de Java, pero es el manual de código legible y mantenible. Complemento perfecto para trabajar en equipo.
Ver en AmazonHead First Java
El mejor punto de partida visual y práctico para quien empieza desde cero con Java.
Ver en AmazonThe Pragmatic Programmer (Hunt & Thomas)
Hábitos y mentalidad de un buen programador. Aplica a cualquier lenguaje y carrera.
Ver en AmazonClean Architecture (Robert C. Martin)
Para diseñar sistemas que escalan y se mantienen. El siguiente paso tras Clean Code.
Ver en AmazonSpring in Action (Craig Walls)
La puerta de entrada al ecosistema Spring, el framework Java más usado en la industria.
Ver en Amazon