Вернуться в каталог собеседований

Тестовое собеседование Java разработчика #17 - Александр Дранкин

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

Eugene Suleimanov
  • Опубликовано на YouTube:
  • Просмотры на YouTube: 28,2 тыс.
  • Лайки на YouTube: 857
Открыть на YouTube

Таймлайн

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

Запись тестового собеседования Java-разработчика: после краткого знакомства интервьюер проверяет знания кандидата по ООП, Java Core, JVM, коллекциям, Stream API и алгоритмам. Основная практическая часть посвящена удалению элемента из двусвязного LinkedList с разбором ссылок, граничных случаев и работы сборщика мусора. В финале обсуждаются оптимизация SQL и Hibernate, денормализация, сокращение времени ответа, CI/CD и риски горизонтального масштабирования.

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

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

  • Повторить отличие ООП от функционального подхода: состояние и поведение объектов, инкапсуляцию, наследование и полиморфизм.
  • Уметь объяснить композицию, ограничения множественного наследования в Java и роль интерфейсов как контракта.
  • Подготовить практическое объяснение Interface Segregation и Dependency Inversion из SOLID, включая подмену реализации через абстракцию.
  • Разобраться в инвариантности Java-дженериков: почему присваивание между Collection<Integer> и Collection<Number> небезопасно.
  • Повторить признаки неизменяемого класса, устройство TreeMap, LinkedList, Stream API, forEach и стандартные функциональные интерфейсы.
  • Отработать на доске удаление узла из двусвязного списка: поиск, переназначение next/previous, удаление первого или последнего узла и условие завершения обхода.
  • Для задач производительности начинать с плана выполнения SQL и индексов; отдельно уметь обсуждать кэширование, объём возвращаемых данных, денормализацию и согласованность кэша при масштабировании.

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