Открытая база вопросов и ответов с собеседований на Системного Аналитика 2026

Интеграции

REST API

Архитектура 

БД и SQL

Интеграции

Общие вопросы по синхронным и асинхронным интеграциям

1. Что такое интеграция?
Это организованный обмен данными и командами между двумя или более системами по согласованным правилам, форматам и протоколам.

2. Какие виды интеграций систем вы знаете?
Ответ: Полный гайд по видам интеграций для Системного аналитика

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

4. Когда лучше использовать API, а когда брокер сообщений?
API подходит для мгновенного запроса-ответа. Брокер лучше для сценариев, где не нужен мгновенный ответ пользователю. Брокер берут для реализации асинхронных сценариев. Часто для интеграции сервисов и микросервисов внутри одной системы. Например - паттерн хореография.
Подробнее про архитектурный паттерн хореографии на примере задачи.

5. Что такое webhook? Что такое polling и long polling?
Ответ на примере практической задачи: Что такое вебхуки и зачем они нужны: собеседование на системного аналитика по API и Webhooks

6. Чем webhook отличается от polling?
При webhook событие приходит само, при polling наша система периодически спрашивает статус. Webhook быстрее и экономичнее, polling — проще как резервный механизм.

7. Что делать, если webhook не дошел?
Нужно предусмотреть повторную отправку при сбоях (ретраи), вести журнал доставки, исключить повторную обработку одного и того же события и иметь резервную проверку статуса — автоматически через polling или вручную.

8. Зачем нужна идемпотентность в webhook-сценариях?
Потому что вебхуки и события могут приходить повторно, а система должна обработать их безопасно без дублей платежей, заказов или статусов.

9. Когда нужен брокер сообщений?
Когда нужно асинхронно передавать события, разгрузить синхронные вызовы, повысить устойчивость и разъединить жизненные циклы систем. Часто используют для внутренних взаимодействий сервисов в системе.

10. Какие ошибки нужно описывать в интеграции?
Технические ошибки связи, таймауты, ошибки авторизации, валидации, бизнес-ошибки и ошибки недоступности внешней системы.
Книга "Чек-лист: типовые требования к обработке ошибок в Интеграциях"

11. Чем техническая ошибка отличается от бизнес-ошибки?
Техническая связана с инфраструктурой или транспортом, например timeout. Бизнес-ошибка означает, что система доступна, но операция не может быть выполнена по бизнес-правилам.

12. Что делать при тайм-ауте внешней системы?
Нужно заранее определить правила повторных попыток, время ожидания ответа, сценарий действий при сбое, текст для пользователя и логику обработки повторного запроса.

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

14. Что такое correlation id?
Это сквозной идентификатор запроса или бизнес-операции, который позволяет отследить цепочку вызовов по логам разных систем.

15. Что должен подготовить аналитик в постановке задачи на интеграцию?
Обычно это описание API внешней системы, Use Case, маппинг данных, правила валидации, обработка ошибок, требования к логированию и иногда UML Sequence. Это хорошо совпадает с вашим шаблоном интеграционной постановки.
Подборка постановок задач - выгрузки из Confluence

16. Что такое маппинг данных?
Это таблица соответствия полей между нашей системой, внешней системой и иногда БД, плюс правила преобразования и комментарии.
Подробный ответ с примером: что такое маппинг данных

17. Что делать, если у двух систем разные идентификаторы одной сущности?
Нужен явный механизм сопоставления: таблица соответствия, хранение external_id на стороне нашей системы, правила синхронизации и обработки рассинхрона.

18. Что делать, если документация внешнего API неполная?
Проверять поведение через Postman / Insomnia или другой клиент, фиксировать реальные ответы и уточнять контракт с владельцем API.
Практические руководства по Postman


Брокеры в интеграциях

Для лучшего понимания как отвечать на вопросы с глубоким техническим пониманием познакомьтесь с нашими материалами по брокерам:

1. Что такое producer и consumer?
Producer публикует сообщение в брокер, consumer его читает и обрабатывает.

2. Что такое topic и partition в Kafka?
Topic (топик) — логический канал сообщений.
Partition (партиция) — часть топика для масштабирования, параллельной обработки и порядка внутри партиции.

3. Что такое offset?

Это позиция сообщения в партиции, по которой consumer понимает, что уже обработано.

4. Что такое consumer group?

Это группа консюмеров, которые совместно читают сообщения топика, разделяя нагрузку.

5. Чем Kafka отличается от RabbitMQ?

Kafka чаще выбирают для потоков событий, высокой пропускной способности и повторного чтения истории.
RabbitMQ — для более классических очередей и маршрутизации сообщений.

6. Что такое DLQ?

Dead Letter Queue — отдельная очередь для сообщений, которые не удалось корректно обработать после попыток или из-за невалидных данных.


Задачи

2. Подборка проектов по интеграциям: 
Постановки задач - выгрузки из Confluence

REST API

Общие вопросы

1. Что такое REST и каковы его основные принципы?

2. Как правильно формировать URI для ресурсов?

3. Назначение HTTP‑методов GET, POST, PUT, PATCH и DELETE.

4. Идемпотентность и безопасные методы — что это?

5. Различия между PUT и PATCH.

6. Статус‑коды HTTP — как и когда их использовать?

7. Когда нужны внутренние коды ошибок помимо стандартных HTTP?

8. Версионирование API — стратегии и примеры.


9. Что важно при получении списков, массива данных?

10. Фильтрация и сортировка — лучшие практики.


11. Структура JWT‑токена и как его использовать?

12. OAuth2 — основные потоки (flows).

13. OpenAPI/Swagger — зачем нужна спецификация?

14. Что такое API‑first и его преимущества?

15. Кэширование: ETag и Cache-Control.
Ответ: Стандартные Headers для кэш

15.1. Что такое кэширование?
Ответ:
Что такое кэш и стратегии кэширования
Стандартные Headers для кэш 

16. Rate limiting — как реализовать?


17. Как документировать ошибки API?

18. Webhooks vs Polling — сравнение.

19. gRPC vs REST — когда использовать?

20. Как обеспечивать обратную совместимость в API?


21. Что такое Swagger UI и Swagger Editor?


22. Monitoring и логирование API — ключевые метрики.

23. GraphQL vs REST — преимущества и недостатки.

24. Webhook security — как защитить callback endpoint?

Ответы: Подборка вопросов и ответов на собеседование по REST API для Системного аналитика


25. Что такое аутентификация и авторизация в API? Как это работает?
Ответ: Авторизация в API: что нужно знать системным аналитикам для работы с требованиями и собеседований

26. Как работает OAuth 2.0?
Ответ: всё про OAuth 2.0 на примере интеграции с mail.ru (серия публикаций в telegram)


Для Senior Системного Аналитика - вопросы с подвохом на проверку опыта 

1. Можно ли использовать метод POST для получения данных?

2. Можно ли сделать в проекте все методы POST?

3. Можно ли в GET передавать тело запроса?

4. Как правильно именовать эндпоинты - ед. число или мн. число (/user или /users)?

5. Как правильно строить URL - нужно ли писать create/update в названии метода?

6. Какой код ответа на метод POST: 200 или 201?

7. Что вернуть в ответ, если получен пустой результат - пустой массив или 404?


Ответы: Проектирование REST API: спорные вопросы с проектов и собеседований на системного аналитика


Архитектура

Для Senior Системного Аналитика

1. Какие виды архитектуры вы знаете? В чем отличия?

1.1. Шаблоны проектирования микросервисной архитектуры.

2. Подходы к интеграции сервисов в распределенных системах.

3. Что такое API Gateway? Зачем нужен API Gateway? Преимущества и недостатки.


3.1. Является ли API Gateway точкой отказа в системе?

4. Что такое хореография и оркестрация? В чем отличия? Расскажите на примерах.

5. Какие способы управления высокой нагрузкой для систем вы знаете?

6. Миграция данных без простоя в продакшн: как реализовать?

7. Брокеры и очереди сообщений. RabbitMQ и Kafka.


Ответы:
ТОП-10 ключевых вопросов для подготовки к собеседованию на Senior Системного Аналитика

Хореография микросервисов + понимание брокеров в EDA

1. Когда хореография микросервисов хуже оркестрации?

2. Сервис записал данные в свою БД, но упал до публикации события. Что произойдёт в хореографии и как это чинить?


3. Как в хореографии реализовать шаг, который зависит сразу от двух событий из разных сервисов?
Например: бонус начисляем только если есть "пользователь зарегистрирован" и "оплачен первый заказ"?


4. Как в хореографии реализовать таймаут шага?
Например, оплата должна пройти за 15 минут, иначе заказ отменяем.


5. Биллинг слушает событие "Заказ оплачен" и должен списать деньги ровно один раз. Любое сообщение может прийти дважды. Как вы гарантируете отсутствие двойного списания?

6. Можно ли построить систему только на хореографии, без оркестрации?

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

Ответы: 7 вопросов с подвохом по Архитектуре: хореография микросервисов + понимание брокеров в EDA

Проектирование БД

1. Задача на развязку связи "многие-ко-многим"
Пример и ответ:  Связь "многие-ко-многим" в БД: разбор задачи с собеседования на системного аналитика

Поделиться вопросами

Имя *
Email
Позиция *
Компания
Вопросы, которые вам задавали на собеседовании *
Как мы можем вас отблагодарить?

Бесплатное обучение

Получайте полезные материалы и учитесь новому каждый день в наших социальных сетях.

Youtube
Rutube
Linkedin
Instagram
VK
Habr
Blog
Podcast

*Instagram и LinkedIn — запрещенные на территории РФ организации

VK

Контакты

+7 (499) 686-15-46

Лицензия №Л035-01255-50/01366872 от 28.08.2024

VK
VK

*Instagram — запрещенная на территории РФ организация

Практический опыт здесь, 2021-2026

Индивидуальный предприниматель
Алтунин Дмитрий Михайлович
ИНН 503610364488

Мы используем файлы cookie, для персонализации сервисов и повышения удобства пользования сайтом. Если вы не согласны на их использование, поменяйте настройки браузера.