Ctrl K
Java · Senior · Дизайн

Ваша команда пишет внутреннюю Java-библиотеку, которой будут пользоваться двадцать других команд. Как вы спроектируете её API, чтобы его можно было развивать, не ломая клиентов?

~10 мин голосом

Как подойти

Проверяют, понимает ли кандидат, что каждый публичный элемент библиотеки становится вечным контрактом, и умеет ли он с первого дня закладывать в API возможность развития: прятать реализацию, контролировать расширение, следить за бинарной совместимостью и аккуратно выводить старое из оборота.

Встречал этот вопрос на настоящем собесе?
Ответов0
Средний балл—
Сильных—
Тренировали0
Темы
Похожие вопросыКак бы вы сделали пагинацию в API ленты, где миллионы записей и новые постоянно добавляются? Какие варианты знаете и чем они отличаются? MiddleСпроектируйте rate limiter для публичного API: например, не больше 100 запросов в минуту на один API-ключ. Сервис работает на нескольких инстансах. MiddleДопустим, нужно сделать REST API для простого сервиса заметок. Какие эндпоинты вы бы сделали и как бы они выглядели? JuniorКлиент отправляет POST-запрос на создание платежа, ответ не доходит из-за таймаута, и клиент повторяет запрос. Как сделать так, чтобы деньги не списались дважды? MiddleКлиент вызывает у вас эндпоинт создания платежа, ответ теряется по таймауту, и клиент повторяет запрос. Как вы спроектируете API, чтобы деньги не списались дважды? Senior

Ответь голосом

Интервьюер задаст этот вопрос и послушает. Думай вслух, проси подсказку, если нужно. Закончил — пауза или «Я ответил», через минуту здесь балл и какие пункты закрыты.

Войти, чтобы ответить

Лучше в наушниках · ~10 мин