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

Мок-интервью Middle Java-разработчика

Открытое мок-собеседование Java-разработчика на Middle: code review многопоточного и JDBC-кода, SQL-задача по сверке сумм инвойсов, рефакторинг расчёта цен через паттерн «Стратегия» и вопросы о Saga и двухфазном коммите.

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

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

Кандидат с опытом Java проходит публичное мок-собеседование на Middle. В code review он ищет проблемы синхронизации, работы с коллекциями, JDBC-ресурсами и SQL, затем решает SQL-задачу на поиск инвойсов, у которых total не равен сумме hours × rate. Далее обсуждаются рефакторинг цепочки условий с помощью паттерна «Стратегия», денежные типы и различия Saga и двухфазного коммита. В финале интервьюер оценивает уровень как Middle и рекомендует развивать system design.

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

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

  • В JDBC используйте try-with-resources, чтобы Connection, Statement и ResultSet закрывались и при исключениях.
  • Для SQL-запросов с подставляемыми значениями применяйте PreparedStatement и параметры, а не конкатенацию строк.
  • При сверке total инвойса с позициями агрегируйте SUM(hours * rate) по invoice_id и фильтруйте агрегат через HAVING.
  • Паттерн «Стратегия» полезен для независимо расширяемых вариантов расчёта; для редких неизменных правил он может быть избыточен.
  • Денежные значения не следует хранить в double из-за ошибок двоичной точности: используйте BigDecimal или целочисленные минимальные единицы.
  • 2PC даёт координированную атомарность, но блокирует участников; Saga строится на локальных транзакциях и компенсирующих действиях.

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