Вернуться в каталог собеседований

Java мок-интервью: схема БД, Kafka и транзакции

Кандидат проектирует БД интернет-магазина и отвечает о PostgreSQL, Kafka, Java-конкурентности и Hibernate.

ШОРТКАТ — менторская программа
  • Опубликовано на YouTube:
  • Просмотры на YouTube: 1,1 тыс.
  • Лайки на YouTube: 10
Открыть на YouTube

Таймлайн

Коротко о видео

В live-интервью кандидат после рассказа о переходе из C и PHP проектирует базу данных интернет-магазина. Они вместе определяют таблицы users, products, prices, orders, orders_products и transactions, историю цен, внешние ключи и типы полей. После схемы интервьюер проверяет индексы, CREATE INDEX CONCURRENTLY, MVCC, VACUUM, WAL, уровни изоляции и SELECT FOR UPDATE. Далее кандидат отвечает о гарантиях Kafka, партициях и идемпотентности, volatile, CAS и virtual threads. Завершает техническую часть Hibernate: JDBC/JPA, @Transactional, N+1 и способы его устранения, а также Saga и readiness probe после деплоя.

Затронутые темы

Что взять на заметку

  • Историю цены следует хранить отдельно от карточки товара с периодом действия записи.
  • Функция над колонкой в WHERE может помешать использованию обычного индекса.
  • At-least-once обработка Kafka требует дедупликации или идемпотентного обработчика.
  • volatile обеспечивает видимость, тогда как CAS и синхронизация решают атомарные изменения.
  • N+1 устраняют после наблюдения запросов через JOIN FETCH, EntityGraph или корректный запрос.

Рекомендуем посмотреть