В этой подборке вопросы сгруппированы по формату «Технические вопросы», чтобы подготовку можно было вести от базовых тем к практическим задачам. В подборке чаще встречаются темы: database, sql, backend.
Новая версия нужна прежде всего для несовместимого изменения контракта. Совместимые расширения можно вводить в текущей версии, проверяя поведение реальных клиентов.
Таймаут ограничивает ожидание внешнего вызова, чтобы зависимый сервис не занимал ресурсы бесконечно. Его выбирают в рамках общего времени ответа операции.
Универсального числа JOIN для всех СУБД нет: предел задаёт конкретная система. На практике важнее сложность плана, объём промежуточных данных и понятность запроса.
POST-запрос содержит метод и адрес ресурса, заголовки и, при необходимости, тело. В теле могут передаваться JSON, поля формы, файл или другие данные согласно контракту API.
Системные требования могут быть и функциональными, и нефункциональными. «Системные» указывает уровень описания, а функциональность и качество — характер требования.
DoR описывает готовность задачи к работе, а DoD — условия завершённости результата. DoD является элементом Scrum, DoR обычно представляет собой дополнительную договорённость команды.
Подписанный JWT можно проверить локально доверенным ключом: подпись, допустимый алгоритм, issuer, audience и срок действия. Непрозрачный токен обычно требует серверного состояния.
Составной индекс содержит несколько столбцов. Их порядок влияет на применимость индекса к фильтрации и сортировке; наличие всех нужных полей ещё не гарантирует эффективный поиск.
Сначала выясните, что считается одной бизнес-записью, и проследите её путь по идентификаторам и логам. Обычно нужны стабильный внешний ключ и идемпотентная обработка повторов.
Для уже начатой кампании нужен явный статус выполняется или processing, отличный от запланирована и завершена. Он показывает, что часть сообщений может ещё ожидать отправки.
Entity сохраняет идентичность и может менять состояние. Value Object обычно проектируют неизменяемым: изменение значения выражают созданием нового объекта.