Вернуться в видеотекуСобеседование в ВТБ с код-ревью: Middle Java разработчик справился!
Публичное мок-собеседование по Java с вопросами по core Java, Spring и Hibernate, а также разбором архитектурных и эксплуатационных проблем в демонстрационном коде. В финале участники обсуждают полученный фидбек и формат менторства ШОРТКАТ.
- Направление
- Backend
- Формат
- Видео
- Компания
Банк ВТБ (ПАО)- Грейд
- Middle
- Длительность
- 1 ч 8 мин
Коротко о видео
Это публичное мок-интервью Java-разработчика Славы с теоретическим блоком и практическим code review. Обсуждаются ООП, Object, коллекции и многопоточность, исключения, SOLID, Spring, внедрение зависимостей, ORM/JPA и состояния сущностей Hibernate. Во второй половине кандидат разбирает проблемный Spring-код, после чего интервьюер даёт обратную связь, обсуждает границы рефакторинга и практики командного code review; завершает видео презентация менторства ШОРТКАТ.
Затронутые темы
Что взять на заметку
- Для ответа про ООП нужно различать инкапсуляцию, наследование, полиморфизм и абстракцию, а также уметь пояснить их на примере публичного контракта и скрытой реализации.
- Стоит уверенно объяснять контракт equals/hashCode: равные объекты обязаны иметь одинаковый hashCode, но одинаковый hashCode не доказывает равенство объектов.
- Для вопросов о Hashtable и ConcurrentHashMap важны потокобезопасность, стратегия синхронизации, уровень параллелизма и поведение итераторов при изменении коллекции.
- Нужно заранее отработать обработку checked exceptions внутри лямбд: либо обработать исключение в лямбде, либо адаптировать вызываемый функциональный интерфейс.
- Интерфейс с единственной реализацией не следует создавать автоматически: в обсуждении его оправдывают реальной точкой расширения или потребностью в тестировании, а не шаблоном service/interface без будущей альтернативы.
- Для Spring полезно уметь связать ApplicationContext с DI-контейнером и жизненным циклом бинов, а constructor injection — с явными обязательными и final-зависимостями.
- На code review сначала нужно понять назначение контроллера и сервиса, затем проверять HTTP-семантику, нейминг, потокобезопасность состояния, параметры и секреты конфигурации, SQL, транзакции, закрытие ресурсов и модели DTO/сущностей.