Системный аналитик с нуля: с чего начать, базовый минимум знаний и навыков
«Системный аналитик» — это не должность, которую дают после курсов. И не роль, на которую нанимают за красивое резюме. Это точка пересечения трёх навыков: вы понимаете, чего хочет бизнес, вы умеете перевести это в требования, которые однозначно прочитает разработчик, и вы не ломаетесь, когда тестировщик находит противоречие между двумя соседними абзацами вашей спеки. Если вы задумались о входе в профессию — сейчас разложу, с чего начинать, что учить в первую очередь и где обычно спотыкаются новички.
Кто такой системный аналитик и чем он занимается
Коротко: это человек, который превращает «хотелки» бизнеса в техническую постановку. На входе — разговор с заказчиком, который говорит «сделайте интеграцию с CRM». На выходе — документ, из которого разработчик понимает, какие поля передавать, в каком формате, что делать при ошибке и куда писать логи.
В разных компаниях роль системного аналитика может называться по-разному: где-то это business analyst + system analyst в одном лице, где-то — строго техническая роль на стыке с архитектором. Но ядро везде одно:
- сбор и формализация требований;
- проектирование API и схем данных;
- написание спецификаций, по которым можно разрабатывать и тестировать;
- стыковка между командой разработки и бизнесом — вы тот самый переводчик с «хочу» на «делаем».
Стоит отметить, что в небольшой компании аналитик часто ещё и пишет документацию, и рисует диаграммы, и разбирается в логах. В крупном энтерпрайзе — роль более специализированная. Но база нужна одна и та же. И чем шире ваш кругозор на старте, тем быстрее вы адаптируетесь к конкретному проекту.
Что должен знать системный аналитик: дорожная карта
Ниже — не просто список навыков, а карта того, как знания наращиваются со временем. Три блока базового минимума (старт) переходят в углублённые темы (уровень middle) и дальше — в специализацию.
На диаграмме три слоя: базовый минимум (три фиолетовых блока: требования, проектирование, инструментарий), разделённый на зелёные конкретные навыки и жёлтые инструменты. Из базовых зелёных и жёлтых блоков выходит начинающий аналитик (серый) — это минимально достаточный набор для первого собеседования. Из зелёных блоков проектирования и инструментов — middle-аналитик, который уже не просто фиксирует требования, а проектирует API, читает схему БД и рисует диаграммы. Дальше оба трека сливаются в синий блок роста, где открываются специализации: архитектура, интеграции и AI-инструменты.
Требования — база, без которой никуда
Как бы ни называлась должность, аналитик работает с требованиями. И путаница между функциональными и нефункциональными требованиями — это первая ошибка, которая всплывает на собеседовании.
Функциональные требования (ФТ) описывают, что система делает: «пользователь может оформить заказ», «система отправляет email-уведомление». Нефункциональные (НФТ) описывают, как система это делает: «ответ не дольше 200 мс», «доступность 99.9%», «пароли хешируются через bcrypt».
Начинать нужно с чёткого разделения ФТ и НФТ — подробный разбор с шаблонами и примерами есть в посте про функциональные и нефункциональные требования. После этого — освоить User Story и Use Case: когда хватает трёхстрочной истории на стикере, а когда нужен полноценный сценарий с альтернативными потоками и исключениями.
И да, отдельно стоит научиться писать ТЗ. Не «документ на 40 страниц, который никто не читает», а живую спецификацию, по которой разработчик садится и пишет код, а тестировщик — проверяет, не открывая дополнительных вкладок в Jira.
Проектирование: REST API, SQL, диаграммы
Требования сами по себе — это текст. Чтобы текст превратился в работающую систему, аналитик должен понимать, как устроена эта система. Три кита:
REST API. Вы должны знать, что такое ресурс, метод, эндпоинт, код ответа. Отличать POST от PUT (нет, это не одно и то же), понимать, почему GET /users/42 и DELETE /users/42 — разные ручки. Если можете спроектировать API для простого CRUD-приложения — база есть. За более глубоким погружением — в пост про основные принципы REST API.
Базы данных и SQL. Аналитик, который не умеет написать SELECT с JOIN и WHERE, беспомощен. Вы не должны быть админом БД, но вы должны уметь посмотреть, какие данные есть в системе, проверить гипотезу через запрос и спроектировать структуру таблиц для новой фичи. Минимальный набор: SELECT, JOIN (хотя бы INNER и LEFT), WHERE, группировка с GROUP BY, простые INSERT/UPDATE. Этого хватит, чтобы не быть тем аналитиком, который просит разработчика «посмотреть, есть ли у нас в базе данные по такому-то сценарию».
Диаграммы. Не ради красоты — ради того, чтобы через месяц не было спора «мы договаривались не так». Диаграмма последовательности для сложного сценария, BPMN для бизнес-процесса, ERD для схемы данных, C4 для архитектуры. Не надо уметь всё — начните с UML Sequence и BPMN, остальное придёт с опытом.
Инструментарий: с чем работать
Теория без инструментов — как повар без ножа. Минимальный джентльменский набор:
- Jira (или другой трекер) — задачи, бэклог, спринты;
- Confluence (или Notion/Wiki) — документация, спецификации, ADR;
- Git — потому что требования в Confluence имеют свойство теряться, а в репозитории рядом с кодом — нет. Базовый уровень:
pull,commit,push,branch, понимание.gitignoreи Pull Request; - Swagger/OpenAPI — писать спеки API в YAML/JSON, а не в Excel. Это стандарт, а не мода;
- Инструмент для диаграмм — Mermaid, PlantUML или любой визуальный редактор. Главное — чтобы диаграмму можно было хранить в тексте (рядом с кодом, в том же репозитории).
Примечательно, что многие новички пытаются выучить всё сразу и проваливаются. Не надо в первый месяц лезть в Kafka, DDD и event sourcing. База — требования, REST, SQL, диаграммы, Jira и Git. Шесть пунктов. Освоили — идёте дальше.
Что учить в первую очередь: приоритеты
Если у вас ноль знаний и месяц до собеседования — вот порядок, в котором стоит двигаться:
| Неделя | Что учить | Что должно быть на выходе |
|---|---|---|
| 1 | Требования: ФТ/НФТ, User Story, шаблон ТЗ | Написать User Story с критериями приёмки для простой фичи (например, «корзина интернет-магазина») |
| 2 | REST API: методы, коды ответов, проектирование ручек | Спроектировать REST API для той же фичи из недели 1 в Swagger-редакторе |
| 3 | SQL: SELECT, JOIN, GROUP BY, основы проектирования схем | Написать 10 запросов к тестовой БД, нарисовать ERD для своей фичи |
| 4 | Инструменты: Git, Jira, Confluence, Mermaid | Оформить всё из недель 1–3 как связанный набор: задача в Jira → спецификация в Confluence → схема в Mermaid → в Git |
К концу месяца у вас не просто список выученных слов, а сквозной проект: от бизнес-потребности до технической спецификации, которую можно отдать разработчику. Именно такой проект и станет основой портфолио.
Типичные ошибки новичков
Ошибка 1: «Я выучу всё, а потом пойду работать». Вы не выучите всё. Половина навыков приходит только на реальных проектах — там, где заказчик меняет требования за день до демо, а интеграция со смежной системой падает при первом же тесте. Месяц-два теории — и вперёд, на стажировку или младшую позицию.
Ошибка 2: Пренебрежение SQL. «Я же аналитик, а не разработчик — SQL пусть пишут бэкендеры». Нет. Без SQL вы не проверите данные, не поймёте схему и не сможете ответить на вопрос «а что будет, если в этом поле пусто». Это базовая грамотность, а не опция.
Ошибка 3: Фокус на инструмент, а не на суть. «Я освоил Jira Advanced Roadmaps, могу взять меня?» Jira — это просто инструмент. Завтра компания переедет на YouTrack или Linear, и ваш навык обесценится. Учите методологию, а не кнопки.
Ошибка 4: Отсутствие портфолио. На собеседовании спрашивают: «Покажите, что вы умеете». Ответ «я прошёл курс» — слабый. Ответ «вот моя спецификация API для сервиса доставки, диаграмма процессов и SQL-запросы» — сильный. Разница — в одном вечере, потраченном на оформление.
Как собрать портфолио без опыта
Портфолио системного аналитика — это не красивые картинки. Это артефакты: спецификации, диаграммы, запросы, описания. Вот что работает:
- Возьмите реальный сервис, которым пользуетесь (интернет-магазин, приложение доставки, онлайн-банк). Не придумывайте абстрактный «сервис для автоматизации всего».
- Опишите фичу. Допустим, «повторный заказ» в доставке еды. User Story, критерии приёмки, список API-ручек, схема данных, диаграмма последовательности.
- Положите в Git. Создайте публичный репозиторий на GitHub. Требования — в
.md-файлах, диаграммы — в Mermaid (рендерятся прямо в README), API-спека — в OpenAPI YAML. - Повторите для 2–3 разных доменов. Один проект — это случайность. Три — это система.
Что немаловажно: не пытайтесь сделать «идеальную документацию на 50 страниц». Работодатель смотрит на структуру мышления, а не на объём. Пять страниц, в которых видна логика, лучше, чем пятьдесят страниц копипасты из учебника.
Где брать знания
Книги — база. Но не надо читать всю библиотеку до того, как написали первую строчку спецификации:
- Карл Вигерс, Джой Битти — «Разработка требований к программному обеспечению». Если читать одну книгу — эту.
- Алистер Коберн — «Современные методы описания функциональных требований к системам». Use Case и сценарии — от создателя метода.
- Сэм Ньюмен — «Создание микросервисов». Для понимания архитектуры — не чтобы сразу проектировать Netflix, а чтобы говорить с разработчиками на одном языке.
Из онлайна: официальная спецификация OpenAPI, документация HTTP-методов (RFC 7231), туториалы по SQL на практических задачах.
И главное — не пытайтесь поглотить всё одновременно. Прочитали главу — применили на своём проекте. Прочитали ещё главу — дополнили спецификацию. Знания без применения — это иллюзия обучения. Как говорил один мой коллега: «теория без практики — это просто громкие слова на собеседовании». И он был прав.
Заключение
Системный аналитик — это не про должность. Это про способ мышления: видеть систему целиком, формализовывать неформальное и делать так, чтобы разработчик, прочитав спецификацию, не пошёл к вам с вопросами. Начать можно за месяц — не с нуля до оффера, а с нуля до проекта, который не стыдно показать на собеседовании.
Требования, REST API, SQL, диаграммы, Git. Пять пунктов. Освоили — вы уже на голову выше новичка, который только что закончил курс и не написал ни строчки за пределами домашки. Дальше — стажировка, реальный проект, живой код под руками, и через полгода фраза «мы потом перепишем» перестанет вызывать у вас нервную улыбку.
P.S. Если ваш первый Use Case не открыли в Confluence неделю — это нормально. Если не открыли полгода — вы написали его в стол, а не для команды. Пишите для тех, кто будет читать.