Возьмите привычку читать по часу в день.
Список литературы:
Брукс "Мифический человеко-месяц"
Гетц "Java Concurrency на практике"
Блох "Java. Эффективное программирование"
Мартин "Чистый код: создание, анализ и рефакторинг."
Гамма, Хелм, Джонсон, Влиссидес "Паттерны объектно-ориентированного проектирования"
Вся литература из доклада:
https://www.youtube.com/watch?v=popkBBjbAv8
Алгоритмы не помешает еще подтянуть.
Минимум прочитать "Грокаем алгоритмы"
Кнут "Искусство программирования"
Седжвик "Алгоритмы на Java"
Кормен "Алгоритмы построение и анализ"
(не знаю, какая из них лучше, и нужно ли читать все)