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

Тестовое собеседование Java разработчика #18 - Владислав Селицкий

Учебное тестовое интервью с Junior Java-разработчиком о базовых концепциях Java, алгоритмах, многопоточности и работе с БД. Кандидат отвечает на вопросы и разбирает задачу поиска двух чисел с заданной суммой.

Источник: Eugene Suleimanov

Открыть на YouTube

Таймлайн

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

Тестовое собеседование Junior Java-разработчика Владислава Селицкого: кандидат сообщает о примерно полугоде опыта, учёбе на третьем курсе и работе с open-source-платформой CUBA/Jmix. Интервьюер проверяет основы Java: HashMap, примитивы и ссылки, Stream API, многопоточность и CAS, ООП, алгоритмическую задачу Two Sum, БД, ORM, кэширование и Spring. В нескольких темах кандидат уточняет или исправляет ответ по подсказкам интервьюера, в частности о Predicate для filter, отличии volatile от атомарности и решении Two Sum за линейное время.

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

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

  • Подготовить объяснение HashMap: массив бакетов, вычисление хэша, проверка equals при коллизии, средняя сложность O(1) и преобразование длинных цепочек в дерево.
  • Уверенно различать копирование значения примитива и копирование ссылки на объект; отдельно объяснять, что byte занимает 8 бит и как это ограничивает диапазон значений.
  • Для Stream API знать лямбды и функциональные интерфейсы: filter принимает Predicate, peek обычно используют для промежуточной отладки, а anyMatch возвращает boolean при наличии подходящего элемента.
  • Разделять visibility и atomicity в многопоточности: volatile делает значение видимым потокам, но операция read-modify-write не становится атомарной; для счётчика подходят AtomicInteger и CAS.
  • Уметь решить Two Sum за O(n): во время одного прохода искать target - currentValue среди уже сохранённых значений; HashSet достаточно, если нужно вернуть значения, а не индексы.
  • Повторить основы БД и Spring: партиционирование, нормальные формы, назначение ORM, риски устаревшего кэша и роль Spring как IoC-контейнера для внедрения зависимостей.

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