Java Junior. Какой набор знаний для вхождения в профессию?

Приветствую честной народ!

Интересует информация о минимальном багаже знаний для вхождения в профессию в целом и некие рекомендации в частности.

На хабре и подобных ресурсах такие темы 3+ годичной давности, интересует же актуальная информация.


1. Какой набор знаний и технологий требуется?

Я так понимаю, что в основном разработка сейчас на JavaEE, с использованием Spring+hibernate+SQL+регулярные выражения? Remote Method Invoccation, потоки насколько глубоко требуется знать?

Также надо знать git или его можно изучить уже по факту? Регламентируется ли в кампаниях, какую IDE использовать - например, если привык к Intellij Idea, потребуется ли переучиваться на Eclipse?

Насколько глубоко требуется знание SQL?


2. Что почитать из комплексного, особенно по проектированию приложения, разработке классов и их структуры?

Сейчас читаю: Java APIs, Extensions and Libraries, 2nd Edition (2018).


3. Если есть кто из HR или видно по своим коллективам: какой возраст у соискателей на Junior  позиции, после 30 реально? а после 40?)))