Вопросы на собеседовании Java-разработчика
2 054 вопроса с реальных собеседований, чаще всего — в компаниях Сбер, Aston и Газпромбанк.
Все вопросы
- Нужно ли инициализировать массив внутри метода или вне методаSeniorИТ-Экспертиза
- С какими ORM вы работали и как выполняли синхронные запросыSeniorТ-Банк
- Решит ли пессимистическая блокировка проблему в рассматриваемом случае?SeniorМагнит
- Какие задачи были интересные или сложные в вашем опыте?SeniorСбер
- Что гарантируют и что не гарантируют Atomic классы в JavaSeniorИннотех
- Какие группы паттернов проектирования существуют и как применить паттерн для улучшения архитектуры сервисаSeniorИннотех
- Какие проблемы возникают при отсутствии внешнего ключа между таблицами ученик и школа?SeniorСбер
- В чем достоинства и недостатки процедурного подхода в базах данных по сравнению с запросами из кодаSenior
- Как использовать дженерики для передачи нескольких типов данных в коллекции JavaSeniorРСХБ
- В чем разница корутин и потоковSeniorOzon
- Ответь на такие вопросы вслухMock-интервью с ИИ: вопросы голосом и разбор каждого ответа.Попробовать
- Как объединить выборки с расстояниями и минимальным расстоянием в SQLSenior
- Может ли существовать идеальная хэш-функция без коллизий?SeniorГазпромбанк
- Как решать проблему падения производительности запроса к базе данных после оптимизации и создания индексовSeniorЛига Цифровой Экономики
- Можно ли использовать версионирование или временные метки для реализации блокировкиSeniorAston
- Какие сложности при реализации пагинации в API для большого объема данныхSeniorPRO-IT
- Сколько человек в командеMiddleЛеруаМерлен
- Как код попадает в JVMMiddleГазпромбанк
- Как исправить проблему N+1 в Hibernate на примере выборки автора и его книгSeniorТетрасофт
- Какие бинскоупы существуют в SpringSeniorПромсвязьбанк
- Как правильно реализовать увеличение счетчика из двух потоков в Java для корректного значенияSeniorOzon
Как проходит собеседование
Собеседование на Java-разработчика чаще всего состоит из скрининга с рекрутером, одного или двух технических интервью и встречи с командой. В крупных компаниях к ним добавляется отдельная секция по проектированию систем. На встрече с командой обычно обсуждают проекты из твоего опыта: какую задачу решал сервис, какие решения ты принимал сам и что бы сделал иначе сейчас.
Технический этап почти всегда начинается с ядра языка: equals и hashCode, устройство HashMap, коллекции и их сложность, неизменяемые объекты. Дальше идут многопоточность и модель памяти: synchronized, volatile, пулы потоков, CompletableFuture. Для бэкенда спрашивают про Spring: бины и их жизненный цикл, транзакции, прокси. Не обходится без JVM: сборка мусора, куча и стек, что делать при утечке памяти. Часто просят разобрать запрос к базе и объяснить, где он медленный.
Чтобы готовиться прицельно, отфильтруй вопросы по своему уровню и начни с тех, что спрашивали чаще всего: счётчик стоит у каждого вопроса. Ответь на несколько из них вслух в mock-интервью, так видно, где ответ разваливается, ещё до настоящего созвона.
Другие направления
Прорепетируй собеседование Java-разработчика
Голосовой ИИ-интервьюер задаст вопросы твоего стека, переспросит и разберёт каждый ответ.