Загрузка…
Загрузка…
analyst / middle / tech_deep
Формат
online
Стадия
tech_deep
Когда
within_quarter
Длительность
45 мин
01
Поведенческий
Расскажите о своём опыте в системном анализе: что конкретно делали своими руками, какую документацию готовили, какие инструменты использовали, в каком виде поступали требования.
Вступительная самопрезентация, по которой далее задавались уточняющие вопросы
02
Теория
Какие артефакты рождались после уточнения бизнес-требований и в каком виде вы их описывали?
03
Теория
Где и в какой нотации вы рисовали бизнес-процессы?
04
Теория
Знакомы ли вы вообще с нотацией BPMN?
Follow-up к вопросу про нотацию бизнес-процессов
Заметки
Запись первого технического интервью на системного аналитика в крупную беттинг-компанию (в диалоге упоминается «Лига ставок»). Воронка: техническое интервью → интервью с продакт-оунером команды → анкета СБ. Кандидат успешно прошёл оба этапа, но после анкеты СБ получил отказ «по совокупности факторов». Возможные причины по мнению автора: зарплатные ожидания 320 000 руб. на руки и неуказанные в резюме места работы (в анкете СБ указал всё). Вакансия — в «техничку» команды платежей (интеграции, переезд с монолита, рефакторинг), в команде 3 системных аналитика, формат работы на выбор (удалёнка/гибрид/офис). Кандидат также упоминает другую компанию — iGaming, где получил офер и сам отказался из-за тайм-трекинга по отпечаткам пальцев.
Стиль интервьюера
Дружелюбный формат «на ты», слот ~45 минут. Структура: самопрезентация про опыт → уточняющие вопросы по деталям опыта (документация, БД, интеграции, диаграммы, архитектура) → два практических задания на поиск ошибок в показанных на экране диаграммах (ER и sequence) → кейс на проработку требований с интервьюером в роли продакта → ~10 минут на вопросы кандидата. Интервьюер охотно отвечала на встречные вопросы и подробно рассказала про команду и процессы.
05
Теория
В нотации BPMN: в чём разница между параллельным и исключающим шлюзом?
Кандидат отвечал предположительно, давно не работал со шлюзами
06
Теория
Когда вы описывали юзкейсы — какие разделы в них были, что описывали, что было важно?
07
Теория
В каком формате вы пишете user story?
08
Теория
Вы проектировали реляционные базы данных, нереляционные или и те и другие?
09
Теория
Когда проектировали таблицу в базе данных — как описывали, что делали (сущности, связи, атрибуты)?
10
Теория
Какого уровня модель данных вы описывали на ER-диаграмме (логическая, физическая)?
11
Теория
Посмотрите на показанную ER-диаграмму (издательства, книги, жанры, авторы, клиенты, заказы): какого уровня модель здесь представлена и что на диаграмме не так?
Практическое задание с разбором диаграммы на экране: отсутствие внешних ключей, связи PK-к-PK, неверные кардинальности
12
Теория
Какая связь должна быть между клиентом и заказами на этой диаграмме?
Follow-up к разбору ER-диаграммы
13
Теория
Приходилось ли писать SQL-запросы в работе? В каких случаях?
14
Теория
Для чего используется ключевое слово DISTINCT в SQL?
15
Теория
Для чего используется HAVING в SQL (конструкция, применяемая после GROUP BY)?
Название ключевого слова в транскрипте искажено; восстановлено по ответу кандидата (используется после GROUP BY)
16
Теория
Приходилось ли работать с хранимыми процедурами?
17
Теория
Когда описывали интеграцию через REST или GraphQL — в каком виде было описание, что учитывали при описании?
18
Теория
Приходилось ли описывать внутреннюю логику методов — сложные запросы, где для данных на UI происходит межсервисное взаимодействие (один сервис обращается к другому)?
19
Теория
С gRPC работали? Хотя бы теоретически разбирались, что это и зачем?
20
Теория
Какие брокеры сообщений использовали на проектах (асинхронные интеграции)?
21
Теория
RabbitMQ и Kafka использовались на одном проекте — в каком случае какой брокер использовали и почему?
22
Теория
В чём плюсы Kafka по сравнению с RabbitMQ?
23
Теория
Что вы описывали при интеграции через Kafka — что описывали в топике (продюсер, консюмер, партиции)?
24
Теория
Рассчитывали ли вы параметры топика Kafka, например retention?
Follow-up к вопросу про описание топиков Kafka
25
Теория
В каком инструменте вы рисовали sequence-диаграммы для синхронных интеграций?
26
Теория
Как на sequence-диаграмме в PlantUML визуально отличить синхронный запрос от асинхронного?
Кандидат перепутал заполненный/незаполненный наконечник стрелки
27
Теория
Как добавить автоматическую нумерацию вызовов на sequence-диаграмме в PlantUML?
Кандидат забыл ключевое слово (autonumber)
28
Теория
Как у вас был устроен архитектурный комитет — были ли выделенные архитекторы под каждый проект?
29
Теория
В каком виде принимались решения архитектурного комитета — какие артефакты рождались, рисовали ли архитектуру?
30
Теория
В чём ваша схема архитектуры отличалась от C4? Почему вы говорите, что это был не C4?
31
Теория
Назовите недостатки микросервисной архитектуры.
32
Теория
В каком виде вы описывали UI, что приходилось делать?
33
Теория
Описываете ли вы взаимодействие UI с бэкендом (какой метод вызвался при нажатии кнопки, что вернул)?
34
Кейс
Какие процессы были выстроены в команде: приходилось ли ревьюить тест-кейсы тестировщиков, участвовать в разборе инцидентов, было ли ревью требований?
35
Поведенческий
Расскажите про сложный бизнес-процесс или задачу, которой можете похвастаться: что описали полностью и в чём была сложность?
Follow-up: «А в чём была сложность?» — кандидат рассказал про проектирование коллекций MongoDB и хранение персональных данных по 152-ФЗ
36
Теория
Посмотрите на показанную sequence-диаграмму: какие ошибки здесь допущены, что скажете по поводу этой схемы?
Второе практическое задание с разбором диаграммы на экране (отсутствие активаций, ответов на вызовы)
37
Теория
Зачем нужны линии активации (полосы на линиях жизни) на sequence-диаграмме?
Follow-up к разбору sequence-диаграммы
38
Кейс
Вы в курсе про букмекеров — знакомы с нашей предметной областью, сами ставки ставили?
39
Кейс
Кейс: продакт приносит макет экрана пополнения баланса и говорит «хочу добавить быстрые суммы под инпутом». Проработайте бизнес-требования с продактом (задайте уточняющие вопросы), а затем сформулируйте функциональные и нефункциональные требования.
Интервьюер играл роль продакта и отвечал на вопросы кандидата (суммы меняются, до шести кнопок, только рубли, повторное нажатие не суммирует)
40
System design
Спроектируйте отдельный метод получения быстрых сумм для экрана пополнения баланса: как бы выглядел запрос и какие у него были бы входные параметры?
Продолжение кейса про быстрые суммы; уточняющий вопрос про входные параметры (токен авторизации и др.)
41
System design
На что бы вы опирались, выставляя требования к производительности нового метода (с учётом уже существующего вызова на этом экране)?
Продолжение кейса про быстрые суммы
42
Теория
Часто ли вы на практике рассчитывали требования к производительности сервисов и методов?
43
Теория
Приходилось ли участвовать в разборах инцидентов и пользоваться Grafana и Loki?
44
Теория
Ты работал в Confluence и Jira?
Задан в конце, в блоке вопросов кандидата про инструменты команды
45
Поведенческий
Ты сейчас в активном поиске работы?
46
Поведенческий
Если не секрет, что конкретно не совпало в офере, который ты отменил?
Follow-up: кандидат рассказал про отменённый офер в iGaming-компании из-за жёсткого тайм-трекинга