Вопросы на собеседовании Java-разработчика
2 054 вопроса с реальных собеседований, чаще всего — в компаниях Сбер, Aston и Газпромбанк.
Все вопросы
- Что улучшить в коде сервиса выплат вознагражденийSeniorТ-Банк
- Зачем использовать конструкторы в абстрактных классахSeniorГазпромбанк
- Что можно сделать, чтобы гарантировать порядок обхода элементов в словаре?SeniorТ-Банк
- Какие бывают corner cases в программировании?MiddleЯндекс
- Почему в одном случае используется join, а в другом нет?SeniorOzon
- Как готовить backlog к взятию в спринтSenior
- Что такое шина данных и приходилось ли реализовывать интеграцию между системамиJuniorАТОЛЛис
- С какой версией Java вы работали и какие нововведения для immutable классов заметилиSeniorDCloud
- Что такое массивы и какова сложность основных операций с ними?JuniorЯндекс
- Можно ли загрузить в JVM два класса с одинаковым именемSeniorГазпромбанк
- Ответь на такие вопросы вслухMock-интервью с ИИ: вопросы голосом и разбор каждого ответа.Попробовать
- Как работает рекурсия под капотом?Senior2GIS
- Какие проблемы языка Java или стандартных библиотек наиболее критичны?SeniorТ-Банк
- Что такое synchronized и как он работаетJuniorCodeITUP
- Что такое паузы garbage collector?JuniorТ-Банк
- Как работает Propagation.REQUIRES_NEW в Spring транзакциях при вызове метода B из метода ASeniorТ1
- Как добиться идемпотентности при обработке сообщений в KafkaSeniorСбер
- Как быстро менять параметры выплат без доработки фронтендаSeniorТ-Банк
- Что такое хвостовая рекурсия и чем она хорошаJuniorCodeITUP
- Работали ли вы с аннотацией @Async в SpringSeniorИннотех
- Какие инструменты мониторинга использовать для выявления проблем в продакшенеSeniorТ-Банк
Как проходит собеседование
Собеседование на Java-разработчика чаще всего состоит из скрининга с рекрутером, одного или двух технических интервью и встречи с командой. В крупных компаниях к ним добавляется отдельная секция по проектированию систем. На встрече с командой обычно обсуждают проекты из твоего опыта: какую задачу решал сервис, какие решения ты принимал сам и что бы сделал иначе сейчас.
Технический этап почти всегда начинается с ядра языка: equals и hashCode, устройство HashMap, коллекции и их сложность, неизменяемые объекты. Дальше идут многопоточность и модель памяти: synchronized, volatile, пулы потоков, CompletableFuture. Для бэкенда спрашивают про Spring: бины и их жизненный цикл, транзакции, прокси. Не обходится без JVM: сборка мусора, куча и стек, что делать при утечке памяти. Часто просят разобрать запрос к базе и объяснить, где он медленный.
Чтобы готовиться прицельно, отфильтруй вопросы по своему уровню и начни с тех, что спрашивали чаще всего: счётчик стоит у каждого вопроса. Ответь на несколько из них вслух в mock-интервью, так видно, где ответ разваливается, ещё до настоящего созвона.
Другие направления
Прорепетируй собеседование Java-разработчика
Голосовой ИИ-интервьюер задаст вопросы твоего стека, переспросит и разберёт каждый ответ.