1) Java
Думаю, никогда нельзя знать всех тонкостей языка и платформы, но к этому нужно стремиться.
Если не прочитали базовую литературу, наверстывайте. Если прочитали - повторите:
- "Thinking in Java"
- "Effective Java"
- "Core Java"
- "Java Concurrency"
2) Spring
"Spring in Action"
Что то, кроме этой книги не могу советовать - про Spring книг достаточно, но о качестве судить сложно.
3)CS- SICP
- Архитектура корпоративных программных приложений
- Совершенный код
- Чистый код
- Алгоритмы. Построение и анализ
- Объектно-ориентированный анализ и проектирование с примерами приложений
- Приемы ООП Паттерны проектирования
- Рефакторинг. Улучшение существующего кода
- Современные операционные системы
- Компьютерные сети