Вопросы с собесов Java-разработчиков
Ответы с уточнениями, которые задают интервьюеры, типичные ошибки и первоисточники. Разложено по зонам шкалы Jub.
Зоны
- Java Core
Типы и строки, equals и hashCode, исключения, records и generics.
3 темы, 3 вопроса
- Коллекции
Устройство HashMap, списки и итераторы, потокобезопасные коллекции.
3 темы, 4 вопроса
- Многопоточность
Модель памяти, синхронизация, пулы потоков, CompletableFuture и виртуальные потоки.
3 темы, 4 вопроса
- Spring
Контейнер и бины, прокси, @Transactional и распространение транзакций.
3 темы, 3 вопроса
- SQL и транзакции
Запросы и агрегаты, индексы и планы выполнения, изоляция и блокировки.
3 темы, 3 вопроса
- Алгоритмы
Сложность, хеш-таблицы в задачах, два указателя, рекурсия и динамика.
3 темы, 2 вопроса
- JVM и память
Куча и стек, сборка мусора, загрузка классов и поиск утечек памяти.
3 темы, 2 вопроса
- Согласованность данных
Согласованность между сервисами: outbox, саги, идемпотентность и повторы.
3 темы, 2 вопроса
- Kafka
Топики и партиции, группы потребителей, порядок и гарантии доставки.
3 темы, 2 вопроса
- Тестирование
JUnit 5, моки и Mockito, интеграционные тесты с Testcontainers.
3 темы, 1 вопрос
- Live coding
Задачи у общего экрана: рассуждения вслух, тесты на ходу, ревью кода.
2 темы, вопросы готовим
- System design
Проектирование сервисов: нагрузка, хранение, кэш, очереди и отказы.
2 темы, вопросы готовим
Проверь себя за 10 минут
15 заданий по шести зонам. В конце — уровень по шкале Jub и темы, с которых стоит начать.