Вопросы на собеседовании Java-разработчика
2 054 вопроса с реальных собеседований, чаще всего — в компаниях Сбер, Aston и Газпромбанк.
Все вопросы
- Как привести два узла дерева к одному уровню для поиска наименьшего общего предкаSeniorЯндекс
- Как организовать данные улиц с одинаковыми названиями в разных городах в базе данныхSeniorАТОЛЛис
- Как ускорить долгие тесты в проекте и какие подходы использовать?SeniorIBS
- Что происходит с hashCode объекта при перемещении объекта в памяти современным GC в JavaSeniorПромсвязьбанк
- Как реализовать дедупликацию данныхSeniorSantander
- Расскажите о вашем опыте сверхурочной работы, объеме и условияхMiddleJSA GROUP
- Насколько сложно настроить RabbitMQ на микросервисе и интегрировать с монолитомSeniorГазпромбанк
- Как разделить тесты по классам и поднимать Spring контекст один раз?SeniorСбер
- Какая у вас культура разработки и процесс работы в командеSeniorЛеруаМерлен
- Как реализовать геттер для коллекции в immutable классе в JavaSeniorDCloud
- Ответь на такие вопросы вслухMock-интервью с ИИ: вопросы голосом и разбор каждого ответа.Попробовать
- Опишите опыт работы с Amazon AWSSeniorТРТ
- В чем преимущество использования базы данных для хранения данныхSeniorVK
- Каким профайлером пользовался и как подключалсяMiddleAramMeem
- Как реализовывался retry механизм при обращении к внешним сервисамSeniorДомопульт
- Как объяснить, что использование C++ для микросервиса не подходитSeniorГазпромбанк
- Как избежать сравнения записи самой с собой при поиске дубликатов в SQLMiddleАТОЛЛис
- Какие гарантии доставки сообщений бывают в очередях сообщений?MiddleOzon
- Какое дерево используется в TreeMap?SeniorIT-One
- Есть ли отдельный тестовый контур для интеграционного тестирования с несколькими сервисамиSeniorСамокат
- Сколько байт занимает тип long в JavaMiddleЛеруаМерлен
Как проходит собеседование
Собеседование на Java-разработчика чаще всего состоит из скрининга с рекрутером, одного или двух технических интервью и встречи с командой. В крупных компаниях к ним добавляется отдельная секция по проектированию систем. На встрече с командой обычно обсуждают проекты из твоего опыта: какую задачу решал сервис, какие решения ты принимал сам и что бы сделал иначе сейчас.
Технический этап почти всегда начинается с ядра языка: equals и hashCode, устройство HashMap, коллекции и их сложность, неизменяемые объекты. Дальше идут многопоточность и модель памяти: synchronized, volatile, пулы потоков, CompletableFuture. Для бэкенда спрашивают про Spring: бины и их жизненный цикл, транзакции, прокси. Не обходится без JVM: сборка мусора, куча и стек, что делать при утечке памяти. Часто просят разобрать запрос к базе и объяснить, где он медленный.
Чтобы готовиться прицельно, отфильтруй вопросы по своему уровню и начни с тех, что спрашивали чаще всего: счётчик стоит у каждого вопроса. Ответь на несколько из них вслух в mock-интервью, так видно, где ответ разваливается, ещё до настоящего созвона.
Другие направления
Прорепетируй собеседование Java-разработчика
Голосовой ИИ-интервьюер задаст вопросы твоего стека, переспросит и разберёт каждый ответ.