Это основано на моем личном опыте. Как я подробно изучил Java, готовясь к собеседованию с техническим специалистом по Java. Я поделюсь своими выводами из него. Это помогло мне получить больше знаний и утроить мою зарплату за меньшее время. Так как спрос на профессионалов Java на рынке огромен.
Предположим, что мои читатели в основном являются профессионалами или разработчиками Java Developer, которые стремятся расширить свою базу знаний, чтобы они могли преуспеть в своей текущей или следующей роли.

Как подготовка к собеседованию по Java помогла мне глубже изучить

Когда я начал работать младшим Java-разработчиком в самом начале моей карьеры. Всякий раз, когда я работал над задачей, я много гуглил каждую логику кодирования, которую я мог найти в Интернете. Я был скорее инженером по переполнению стека .

Иметь наставника в первые дни — это очень удачно . Они могут направить вас правильно, а не тратить больше времени на гугление и выполнение задачи. Но мне не повезло на этом фронте.

Когда я начал искать свою следующую работу, я получил много отказов и унижений в технических раундах, потому что все, чему я научился, было только поверхностным.

После нескольких месяцев подготовки и предстоящих собеседований я узнал ценность пяти вещей, которые имеют значение для технического собеседования, а именно:

Чтение документации по Java API помогло понять лежащий в основе API JDK. например, как они работают внутри, и какие временные и пространственные сложности они имеют, когда мы используем их в коде.
Чтение хороших книг по Java, таких как Head First Java и Effective java , помогло мне овладеть основами объектно-ориентированного программирования, а также дополнило мои знания Java. Уверяю вас, эти книги определенно заложат прочную основу для вашего профиля.
вот ссылка на эти книги, на которые вы можете сослаться — Java Books

3. Когда мы работаем над проектом, мы не обращаем внимания на лучшие практики, которым мы должны следовать при написании кода. мы были сосредоточены исключительно на выполнении работы. Мы всегда пишем код методом грубой силы, а не оптимизированным способом, если вы работаете в компаниях, не принадлежащих FAANG . На собеседованиях по программированию меня всегда спрашивали об оптимизированном коде.

Таким образом, решение головоломок/проблем с программным кодом и рангом хакера помогло мне писать лучший код.

4. Чаще всего задавались вопросы о шаблонах проектирования и проектировании систем. Перед собеседованием я узнал их важность и добавил их в свою базу знаний.

5. Важность модульного тестирования. Иногда интервьюеры проверяют ваши знания модульного тестирования. Из- за этого мне пришлось подробно изучить структуру J-unit .

Темы, которые я подробно изучил при подготовке технического интервью по Java

Core Java API (среда сбора, поток, пакет Java Lang, пакет Java Util, пакет Java Time, пакет Java IO, пакет Java net, пакет Java SQL)
Шаблоны проектирования (конструктор, фабрика, прокси, адаптер, фасад, шаблоны проектирования наблюдателя) с примерами.
Принципы SOLID Design с их практическим использованием в кодировании.
Прочтите «Чистый код и чистый кодер дяди Боба» , который добавил привычки чистого кодирования (после этого давайте WTF в моих обзорах кода, лол)
Spring Framework, Hibernate framework и подробное описание JPA
Средой модульного тестирования , которую я изучил, были J-UNIT, MOCKITO и POWER MOCK . что помогло очистить критерии покрытия кода в моем пайплайне.
Если бы я не давал интервью, я бы не стал подробно изучать вышеупомянутые темы, которые очень важны для разработчика.

Изучив все это теоретически и практически, я смог пройти больше технических раундов и смог утроить свою зарплату за меньшее время. Кроме того, в моей следующей роли меня признали сильным техническим специалистом .