Вопросы на собеседовании Java-разработчика
2 054 вопроса с реальных собеседований, чаще всего — в компаниях Сбер, Aston и Газпромбанк.
Все вопросы
- Как оптимизировать работу с коллекциями для линейной сложностиSenior×4Santander, Тетрасофт
- Зачем нужен метод finalize в JavaSenior×4X5Tech, Промсвязьбанк
- Как в микросервисах работать с базами данных при разделении базSenior×4JSA GROUP, Тетрасофт
- Какие способы взаимодействия Java приложений с базами данных существуютSenior×4Промсвязьбанк, IT-One
- Могут ли возникнуть проблемы при большом количестве партиций у брокера Kafka и какиеSenior×4Лига Цифровой Экономики, Альфа-банк
- Как добиться сохранения последовательности сообщений по одному документу в одной партиции KafkaSenior×4Северсталь, Ай-Теко Сбол
- Как избежать рассогласования данных если транзакция закоммичена, а вызов внешнего сервиса не удалсяSenior×4Bell Integrator, AnyQuery
- В каком порядке выполняются статические блоки и конструкторы в JavaSenior×4Kvando Technologies, ЛеруаМерлен
- Какие IDE использовали?Senior×4ГОЗНАК, Т1
- Что происходит при переполнении стека, например при бесконечной рекурсии?Senior×4X5Tech, CodeITUP
- Ответь на такие вопросы вслухMock-интервью с ИИ: вопросы голосом и разбор каждого ответа.Попробовать
- Как Spring выбирает конфигурацию для активного профиляSenior×4Газпромбанк, IBS
- Какие ключевые фазы есть в MavenMiddle×4Aston, Сбер
- Как происходит запуск метода с аннотацией @Scheduled и как работает schedulerSenior×4PRO-IT, БФТ
- В чем отличие ConcurrentHashMap от HashMap и как реализована внутренняя блокировкаSenior×4ОТПБанк, IBS
- В чем разница между аннотациями @Service и @Repository в SpringSenior×4Bell Integrator, Т1
- Какие аннотации используются для обработки исключений в SpringSenior×4Aston, Сбер
- Как происходит удаление элементов из ArrayList и как меняется его размерSenior×4Иннотех, Сбер
- Как оцениваете задачиMiddle×4AramMeem, Stroki
- Как донести понятные ошибки до клиентаSenior×4AnyQuery, ПочтаТех
- Как осуществляется доступ к элементам в List и Set в Java?Senior×4Ай-Теко Сбол, Сбер
Как проходит собеседование
Собеседование на Java-разработчика чаще всего состоит из скрининга с рекрутером, одного или двух технических интервью и встречи с командой. В крупных компаниях к ним добавляется отдельная секция по проектированию систем. На встрече с командой обычно обсуждают проекты из твоего опыта: какую задачу решал сервис, какие решения ты принимал сам и что бы сделал иначе сейчас.
Технический этап почти всегда начинается с ядра языка: equals и hashCode, устройство HashMap, коллекции и их сложность, неизменяемые объекты. Дальше идут многопоточность и модель памяти: synchronized, volatile, пулы потоков, CompletableFuture. Для бэкенда спрашивают про Spring: бины и их жизненный цикл, транзакции, прокси. Не обходится без JVM: сборка мусора, куча и стек, что делать при утечке памяти. Часто просят разобрать запрос к базе и объяснить, где он медленный.
Чтобы готовиться прицельно, отфильтруй вопросы по своему уровню и начни с тех, что спрашивали чаще всего: счётчик стоит у каждого вопроса. Ответь на несколько из них вслух в mock-интервью, так видно, где ответ разваливается, ещё до настоящего созвона.
Другие направления
Прорепетируй собеседование Java-разработчика
Голосовой ИИ-интервьюер задаст вопросы твоего стека, переспросит и разберёт каждый ответ.