Вернуться в видеотеку

Тестовое собеседование Java разработчика #23 - Аскар Сариев

Практика Java-собеседования для начинающего разработчика: теория Java и backend-стека, алгоритмическая задача и разбор ответов кандидата. Интервьюер уточняет формулировки, разбирает неточности и подсказывает направление решения.

Источник: Eugene Suleimanov

Открыть на YouTube

Таймлайн

Коротко о видео

Тестовое собеседование с начинающим Java-разработчиком Аскаром Сариевым, который готовится к первой работе backend-инженером. Интервьюер проверяет основы Java, JVM, сборку мусора, многопоточность, коллекции, SOLID, базы данных, Hibernate, Spring Security и тестирование. Отдельно кандидат вместе с интервьюером разбирает задачу поиска элемента, встречающегося в массиве более чем в половине позиций, и получает подсказки по реализации через HashMap.

Затронутые темы

Что взять на заметку

  • Подготовьте точное объяснение передачи аргументов в Java: передаётся значение, а для объектов этим значением является копия ссылки; также нужно различать стек, heap и metaspace JVM.
  • Повторите жизненный цикл объектов и Garbage Collection: Young Generation, Survivor-пространства, достижимость объекта, паузы приложения и выбор сборщика через настройки JVM.
  • Умейте разделять многопоточность, параллелизм и асинхронность, а также объяснять связь Java-потоков с потоками ОС и роль переключения контекста на одноядерном процессоре.
  • Для CompletableFuture важно показать практическую композицию: не блокировать поток вызовом get(), а передавать полученный результат в следующий этап через thenApply/thenAccept или похожую цепочку.
  • По HashMap следует знать бакеты, коллизии, hashCode/equals, переход длинной цепочки в красно-чёрное дерево в Java 8, а также отличия HashMap, Hashtable и ConcurrentHashMap.
  • В алгоритмической задаче HashMap даёт линейное время подсчёта частот, но требует O(n) дополнительной памяти; это не соответствует исходному ограничению O(1) по памяти, которое нужно отдельно проверить.
  • Повторите индексы и внешние ключи в БД, ResultSet и хранимые процедуры JDBC, жизненный цикл SessionFactory/Session в Hibernate, уровни изоляции и последовательность аутентификации в Spring Security с JWT.

Рекомендуем посмотреть

1 ч 21 мин
Backend

Тестовое собеседование Java разработчика #22 - Николай Оськин

Развёрнутое учебное мок-интервью по Java для начинающего разработчика: от Java Core и алгоритмов до многопоточности, SQL/JDBC, JPA и REST. В финале кандидат задаёт вопросы о понимании реализаций JVM и библиотек и получает рекомендации по дальнейшему изучению.