Перейти к основному содержимому
DevScallix

Роудмапы · L5

Solution Architect

Solution architect проектирует техническое решение для конкретной бизнес-проблемы и направляет команды в процессе его поставки. Он объединяет требования, ограничения и риски в обоснованную архитектуру.

Чем отличается от предыдущего уровня

Tech lead отвечает за направление и поставку одной команды. Solution architect обеспечивает целостность решения, которое охватывает несколько команд, систем и внешних сторон. Его работа в большей степени состоит в анализе требований, сравнении вариантов, согласовании интеграций и документировании решений.

Ожидаемые знания

  • Анализ требований: функциональные требования, атрибуты качества и ограничения
  • Атрибуты качества: производительность, доступность, безопасность, изменяемость и их конфликты
  • Анализ компромиссов: варианты, критерии, риски и обоснование решения
  • Стили интеграции: синхронный API, события, batch; контракты и версионирование
  • Моделирование предметной области: bounded context, aggregate, владение данными
  • Основы облачной архитектуры: управляемые сервисы, регионы и зоны, факторы стоимости
  • Архитектура безопасности: identity, модель авторизации, защита данных
  • Документирование: модель C4, ADR, архитектурные представления

Практические навыки

  • Разговаривать со стейкхолдерами и извлекать требования и сценарии качества
  • Подготовить несколько архитектурных вариантов для одной проблемы и сравнить их
  • Нарисовать диаграммы C4 context и container для решения
  • Документировать решения в ADR и объяснять их последствия
  • Согласовать с командами контракт интеграции и поведение при сбоях
  • Работать с командами поставки и следить за реализацией решения

Типичные ошибки

  • Начинать с любимой технологии, пока требования не ясны
  • Записывать атрибуты качества без измерений, вроде «быстро, безопасно»
  • Рисовать диаграмму, не фиксируя обоснование и альтернативы
  • Предлагать идеальную архитектуру, игнорирующую навыки и время команды
  • Забывать в интеграциях случаи сбоев и смены версий
  • Нарисовать архитектуру один раз и не обновлять её по мере изменений

Приоритеты обучения

  1. 1Уточнять требования и сценарии качестваВместо «система должна быть быстрой» запишите измеримый сценарий и проясните, какой атрибут в приоритете.
  2. 2Проводить анализ компромиссовДля каждого решения покажите варианты, критерии и цену и сохраните решение как ADR.
  3. 3Проектировать интеграцию и владение даннымиКакая система владеет какими данными, как версионируется контракт и что происходит при сбое.
  4. 4Документирование и коммуникацияЧерез C4 готовьте представления для разных аудиторий и обновляйте документы вместе с кодом.
  5. 5Оставаться связанным с поставкойСледите, как команды реализуют архитектуру, учитесь на практике и корректируйте курс.

Архитектурная зрелость

На уровне solution architect архитектура становится прослеживаемой цепочкой решений, выведенных из требований. Каждый значимый выбор связан с атрибутом качества, ограничением и риском, а альтернативы показаны открыто. Решение должно быть реалистичным не только технически, но и по навыкам команды, бюджету и будущей цене изменений.

Примеры вопросов

  • На проекте с расплывчатыми требованиями каковы ваши первые три вопроса?
  • Объясните конфликт между доступностью и согласованностью на конкретном примере.
  • Когда вы выберете интеграцию через события вместо синхронного API?
  • По каким критериям вы определите границы микросервисов?
  • Как вы обосновываете архитектурное решение в ADR?
  • Какой уровень модели C4 вы покажете какой аудитории?
  • Как должно вести себя ваше решение, когда сторонняя система меняет API?

Упражнения для самостоятельной работы

  • Для небольшого бизнес-сценария запишите атрибуты качества как измеримые сценарии.
  • Подготовьте два архитектурных варианта для одной задачи (например, модульный монолит и микросервисы) и сравните их по критериям.
  • Нарисуйте диаграммы C4 context и container для вашего решения и укажите аудиторию каждой.
  • Запишите три ключевых решения как ADR: контекст, варианты, решение, последствия.
  • Опишите контракт интеграции (API или событие) между двумя системами, включая версионирование и поведение при сбоях.

Статьи для этого уровня

Подходящие программы

Насколько вы близки к этому уровню?

Оценка навыков формирует личный отчёт о пробелах на основе ваших ответов. Это рекомендация, а не сертификат.