Кто он:
Системный аналитик — связующее звено между бизнесом и разработкой. Он разбирается в архитектуре, данных и API, описывает, как именно должна работать система.
Зачем нужен:
Чтобы гарантировать, что реализованная система технически корректна, согласована с другими сервисами и покрывает все сценарии.
Когда нужен:
— Когда проект включает интеграции, базы данных, микросервисы.
— Когда бизнес-требования уже есть, но нужно продумать реализацию.
— Не нужен, если разработка простая и всё делает один программист.
Используемые знания
-
Требования.md
Системный аналитик – специалист, связующей бизнес-заказчиков и смежные команды со своей технической командой, владея объёмным контекстом знаний по продукту/проекту. Он собирает, анализирует, валидирует, трассирует требования и проектирует эффективные решения для выполнения целей заказчика.
Системный аналитик должен разбираться в темах:
архитектура приложений (монолиты, микросервисы, расчет нагрузки),
типы и виды интеграций (API, идемпотентность, OpenAPI, Swagger, REST, GraphQL, gRPC, SOAP, WebSocket, Kafka, синхронное, ассинхронное взаимодействие, гарантии доставки)
Базы данных (SQL, NoSQL, Транзакции, Индексы, Масштабирование БД, ACID, CAP)
фронтенд-технологии (КЭШ, проксирование, агрегация методов, Deeplink, A/B-тесты)
знать инструменты и нотации проектирования (UML, BPMN, ERD, C4 model)
владеть методами сбора и анализа требований (Интервью, Наблюдение, Опросы, Анализ API, 3 Amigo)
понимать процессы жизненного цикла разработки ПО
уметь работать с Нефункциональными требованиями (Availability, Recoverability, Serviceability, Performance, Scalability, Security)
уметь работать с Wiki Confluence, Jira, Docs as Code, Markdown, JSON, Sage, Метриками, Логами, Git, curl
развивать soft skills, решать конфликты, договариваться со смежными командами и стейклхолдерами и аргументировать свою позицию