Computer Science

Вопросы на собеседовании: системный аналитик

15 уроков · 5 разделов · бесплатно, без регистрации

Учебник собран из вопросов, которые реально задают на собеседованиях системному аналитику — от junior до senior. Каждый урок разбирает один-три вопроса по единой схеме: сам вопрос, что за ним на самом деле проверяет интервьюер, развёрнутый ответ с примерами, типичные ошибки кандидатов и короткая выжимка на 20–30 секунд для устного ответа. Внутри — требования и работа со стейкхолдерами, UML и BPMN, проектирование REST API и интеграций, данные и транзакции, документация, процессы и типовой кейс финального этапа.

Курс «Вопросы на собеседовании: системный аналитик» состоит из 5 разделов и 15 уроков: Требования, Моделирование и нотации, Проектирование API и интеграций, Данные и базы и Документация и процессы. Уроки идут по порядку — от основ к более сложным темам, в каждом есть объяснение с примерами, а в конце — вопросы для самопроверки. К урокам привязаны задачи с автоматической проверкой: прочитали тему — сразу закрепили её кодом.

Программа курса

  1. 1 Требования

    1. Функциональные и нефункциональные требования

      Разбор вопроса с собеседования: чем функциональные требования отличаются от нефункциональных, как писать измеримые НФТ и почему они определяют архитектуру.

    2. Как выявлять требования и вести интервью

      Техники выявления требований на собеседовании аналитика: интервью, наблюдение, анализ документов и данных, воркшопы, прототипы — и как отделять проблему от решения.

    3. Хорошее требование, user story и acceptance criteria

      Критерии качества требования, чем user story отличается от требования, как писать acceptance criteria в формате списка и Given/When/Then, как разрешать противоречия.

  2. 2 Моделирование и нотации

    1. UML: use case, sequence, диаграмма классов

      Какие диаграммы UML нужны аналитику: use case для границ системы, sequence для интеграций, класс-диаграмма для предметной области — с примерами и ошибками.

    2. BPMN и описание бизнес-процессов

      Чем BPMN отличается от блок-схемы: пулы и дорожки, события и таймеры, типы шлюзов, моделирование отказов и доработок, зачем нужны модели AS-IS и TO-BE.

    3. ER-модель, кардинальности и уровни C4

      Как читать кардинальности в ER-модели, зачем таблице-связке собственные атрибуты, чем отличаются концептуальная, логическая и физическая модели, что такое уровни C4.

  3. 3 Проектирование API и интеграций

    1. REST, коды ответов и формат ошибок

      Что спрашивают про REST на собеседовании аналитика: ресурсный стиль вместо глаголов в URL, stateless, разница 401 и 403, 400 и 422, машиночитаемый формат ошибки.

    2. Идемпотентность и версионирование API

      Идемпотентность HTTP-методов, ключ Idempotency-Key против двойного списания, breaking и non-breaking изменения, способы версионирования API и политика отключения версий.

    3. Синхронные и асинхронные интеграции, форматы обмена

      Когда выбрать очередь, а когда синхронный вызов, что описать в требованиях к асинхронной интеграции: at-least-once, порядок, DLQ, версия события; JSON, XML и protobuf.

  4. 4 Данные и базы

    1. Нормальные формы и осознанная денормализация

      Первые три нормальные формы простыми словами, аномалии вставки, изменения и удаления на живом SQL-примере, обоснованные случаи денормализации и историчность данных.

    2. Транзакции, ACID и конкурентный доступ

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

    3. Миграция данных, OLTP и OLAP

      Чем OLTP отличается от OLAP и почему отчёты выносят в хранилище, схема «звезда», пошаговый план миграции данных с профилированием, mapping, сверкой и откатом, ETL и ELT.

  5. 5 Документация и процессы

    1. Техническое задание и спецификация требований

      Что входит в ТЗ, чем оно отличается от спецификации, ЧТЗ и user story, шаблон описания функции с исключениями и постусловиями, что делает документацию живой.

    2. Работа с командой, Agile-процессы и приоритизация

      Как аналитик работает с разработкой и тестированием, роль на Agile-церемониях, Definition of Ready, приоритизация MoSCoW, RICE, Kano и Cost of Delay, оценка задач.

    3. Типовой кейс: спроектируйте систему бронирования

      Разбор кейса финального собеседования системного аналитика: уточняющие вопросы, границы, модель данных и инвариант непересечения броней, контракт API, НФТ и крайние случаи.