МИХАИЛ МАКСИМОВ

Как стать архитектором в ИТ

Введение
Считается, что для аналитиков из ИТ-отрасли следующим карьерным шагом может быть позиция архитектора. Однако разнообразие направлений в сфере архитектуры ИТ, и разброс в пожеланиях, которые высказывают работодатели, усложняет выбор верного пути для развития профессиональных качеств аналитика.

В этой статье мы поговорим о профессии software architect, о видах архитекторов в ИТ и нужных для этой работы навыках. Мы рассмотрим актуальные ожидания от архитекторов со стороны рынка труда. Также вы получите представление об основах корпоративной архитектуры (Enterprise Architecture) и о фреймворке TOGAF.

Статья будет полезна специалистам, уже имеющим опыт в системном анализе или бизнес анализе и рассуждающим о возможностях карьерного развития. В первую очередь мы рекомендуем её:

Системным аналитикам и бизнес-аналитикам Middle / Senior
• Product owner-ам, руководителям проекта
• Начинающим IT архитекторам
Время на чтение статьи: 13 минут
Не любите читать? Посмотрите видео.

Грань между аналитиком и архитектором

Прежде чем погрузиться в рассмотрение путей развития аналитика в архитектора, необходимо определиться с контекстом. В рамках данной статьи мы говорим об архитектуре в сфере информационных технологий. Это значит, что мы рассмотрим позицию архитектора с точки зрения компаний, ориентированных на создание цифровых продуктов, а также и производственных компаний, ценность и значимость ИТ в которых увеличивается.

В анализе мы отталкиваемся от теоретической базы международного фреймворка TOGAF и от рабочей практики современных компаний, где есть сотрудники, выполняющие роль архитектора ПО.

Понятие требований и архитектуры

В первую очередь необходимо понимать отличие между архитектурой и требованиями. На иллюстрации ниже наглядно отражены эти понятия.
Управление требованиями и управление архитектурой ИТ
Требования и архитектура в наглядном представлении
Требования воплощают ожидания заказчика или пользователя, отражают условия и ограничения использования и определяют архитектуру — то, как спроектирована и построена система.

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

Иллюстрация показывает архитектуру предприятия как высокоуровневую систему, объединяющую разные функции, в том числе IT. К этой системе предъявляются разного рода требования. Важно понимать, что эти требования предъявляются к архитектуре компании в текущем состоянии, на данный момент времени, и на них базируется способ перехода из текущего состояния («as is») в целевое состояние («to be»). Количество таких переходов ограничивается лишь сроками эксплуатации информационной системы или существования предприятия в целом.

Аналитик и архитектор: единая роль или разные?

Как раз на стыке требований и архитектуры, проходит грань между функциями архитектора и аналитика. Исходя из общих представлений, которые сложилось в ИТ сфере, основная функция аналитика — это работа с требованиями, а основная функция архитектора — проектирование системы или её частей оптимального соответствия требованиям и принятие решений о способах устройства этой системы.

Даже если всё кажется очевидным, давайте разберёмся в этом вопросе подробнее.

На самом деле работа с требованиями, в широком смысле включает в себя как исследование проблем и возможностей, так и проектирование целевой системы. Есть мнение, что лучше строго разделять эти два процесса, то есть в команде должен быть как аналитик, который является держателем требований и изначальной постановки, так и архитектор, который занимается именно проектированием.
Один из основных аргументов в пользу разделения ролей аналитика и архитектора — это страховка от подгонки вопроса (требований) под ответ (созданное решение). Даже если в компании сформирована сильная, амбициозная команда разработчиков, стремящихся к постоянному развитию, созданная система может не принести положительного результата для бизнеса. Бывает, что решение, которое является технически интересным и перспективным создаётся, исходя из амбиций команды, а не реальных потребностей клиента. Подобная ситуация приводит к конфликтам с заказчиком. Если же в компании есть разделение держателя задачи и исполнителя по этой задаче, то это должно уберечь компанию от подобных конфликтов.

Недостатком отделения роли аналитика от роли архитектора и разработчика является отрыв от контекста. Команда, занимающаяся проектированием, получает опосредованное описание исходной проблематики и предметной области. Это также может привести к негативным последствиям, потому что проектировщики, недостаточно погружённые в контекст, плохо понимают реальную проблему. Таким образом, есть и аргументы в пользу совмещения проектирования и разработки со сбором и анализом требований.
Как разделение ролей аналитика и архитектора, так и их совмещение имеют смысл. Однако, независимо от принятого в вашей команде подхода, важно разграничивать уровень выявления проблем и уровень проектирования. Даже если сама команда имеет экспертизу как в области анализа и сбора требований, так и в области проектирования, нужно разделять эти процессы, чтобы удержаться от преждевременного перехода к проектированию.

Такая особенность взаимодействия архитекторов и аналитиков важна для понимания следующих частей этой статьи.

Воркшоп «Основы ООП и разработка

UML-моделей»


Для начинающих бизнес- и системных аналитиков. Вы освоите:
  • основы объектно-ориентированного проектирования
  • построение всех основных видов UML-диаграмм: диаграммы Use Cases, Sequence, Class Diagram, и др.
  • выбор подходящих UML диаграмм для формализации требований, процессов и структур
Обучение системный аналитик ИТ архитектура Archimate

Роль архитектора ПО в контексте архитектуры предприятия

Метод развития архитектуры TOGAF ADM

Есть разные взгляды на то, как классифицировать виды архитекторов в сфере ИТ. Попробуем для начала категоризировать этот вид деятельности, отталкиваясь от слоев архитектуры во фреймворке TOGAF. Архитектура помогает организации прийти от видения своей стратегии к удобной структуре, набору эффективных отлаженных процессов и систем.

Посмотрим на схему, иллюстрирующую метод управления разработкой архитектуры: в соответствии с TOGAF центральным звеном является Управление требованиями (Requirements Management). Эта модель определяет последовательность шагов, необходимых для управления развитием архитектуры и её целевыми состояниями: от миссии к реализации.
цикл TOGAF
Итерации цикла разработки архитектуры TOGAF
В архитектурном методе TOGAF ADM выделяют 10 взаимосвязанных этапов:

  1. Предварительная стадия
  2. Фаза A: Архитектурное видение
  3. Фаза B: Бизнес-архитектура
  4. Фаза C: Архитектура информационной системы
  5. Этап D: Техническая архитектура
  6. Фаза E: Возможности и решения
  7. Фаза F: Планирование миграции
  8. Фаза G: Внедрение управления
  9. Фаза H: Управление изменениями архитектуры
  10. Управление требованиями к архитектуре ADM (Architecture Development Method)
На каждом уровне детализации используется единый цикл, что позволяет эффективно управлять развитием архитектуры, применяя одинаковые методы как к небольшим элементам (например, отдельным автоматизированным системам или департаментами), так и к масштабным (например, архитектуре всей организации).

Такое представление легко сопоставить с послойным представлением архитектуры, например с принятым в Archimate.
Слои архитектуры ArchiMate
Послойная модель архитектуры ArchiMate
Начать стоит с роли корпоративного архитектора (enterprise architect), который является ключевым звеном в объединении артефактов и идей всех архитекторов компании и создании общего продукта. Корпоративный архитектор работает в слое стратегии и подключается на самых ранних этапах, когда формируется верхнеуровневое видение и концепция (A. Architecture vision). В дальнейшем он принимает участие в создании отдельных артефактов, но не углубляется в детали.

Другие виды архитекторов отвечают за конкретные слои архитектуры и выполняют более специализированные: это бизнес-архитекторы, архитекторы приложений и технологические архитекторы.

Навыки архитектора и Architecture Skills Framework

Следующая интересующая нас часть фреймворка TOGAF — это Architecture Skills Framework. Во-первых, этот фреймворк навыков выделяет виды архитекторов, согласно слоям архитектуры по описанной ранее ключевой модели. Во-вторых, предлагается группировка архитектурных навыков и детальная матрица навыков архитекторов и смежных специалистов с приблизительной экспертной оценкой их уровня погружения в различные аспекты работ.
Виды ИТ-архитекторов
Виды архитекторов и категории навыков архитекторов
Для примера рассмотрим матрицу навыков для области «Корпоративная архитектура», показывающую, какие умения необходимы разным специализированным видам архитекторов и руководителей. Чем выше цифры в таблице, тем выше степень погружения и знаний должна быть у соответствующей роли.

Рассмотрим область верхнеуровневых навыков в области корпоративной архитектуры (Enterprise Architecture skills).
Навыки архитектора Architecture Skills Framework
Навыки корпоративного архитектора в Architecture Skills Framework
Наиболее высокий уровень владения всеми навыками должны демонстрировать архитекторы. В первую очередь для них важны области компетенций, связанные с бизнесом и архитектурой. Но архитекторы также должны быть погружены в разные аспекты проектирования программного обеспечения, системных интеграций и стандартов IT-индустрии, хоть и чуть в меньшей степени.

Для сравнения, роль руководителя проектов / программ также требует перечисленных в матрице навыков, но не в такой высокой степени.

Применять матрицу Architecture Skills Framework для составления планов собственного развития не очень удобно: поскольку навыки перечислены, но их суть подробно не раскрыта, использовать эту таблицу для самооценки или планирования карьеры новичку будет затруднительно.
Тем не менее, изложенные выше подходы TOGAF в сочетании с этой моделью навыков позволяют понять свою роль и область специализации, чтобы выбрать требуемую степень погружения в те или иные темы в разных областях.

Итак, мы разобрались с базовым тезисом про послойное разделение архитектуры предприятия и формирование на основе него разделения навыков разных видов соответствующих архитекторов. Теперь попробуем понять, какие особенности есть у такой популярной роли, как архитектор решений (Solution Architect).

Architecture Building Blocks (ABBs) и Solution Building Blocks (SBBs)

Объяснить появление архитектора решений проще всего, раскрыв такие понятия, как Architecture Building Blocks (ABBs) и Solution Building Blocks (SBBs) — архитектурные артефакты, которые представлены в TOGAF.

ABBs и SBBs — это два разных уровня архитектурных артефактов, которые предназначены для разных целей.

  • ABBs — это общие, высокоуровневые блоки архитектуры, определяющие общие принципы и требования к системе, исходя из функций и бизнес-процессов.
  • SBBs — это конкретные, низкоуровневые блоки архитектуры, определяющие технологии и продукты для реализации системы.
Проще всего объяснить их различие так: помните, что ABBs вендоронезависимы. Architecture Building описываются, опираясь на бизнес-слой, и частично — технологический слой и слой приложений, но не привязываются к конкретному поставщику или платформе. Эти блоки определяют формализованные верхнеуровневые требования к решению, которое будет использоваться в дальнейшем. На этом уровне необходимо спроектировать архитектуру, которая не будет зависеть от конкретного технического способа реализации, но будет определять общий принцип построения архитектуры предприятия в разных аспектах. После того как архитектура проработана на этом уровне, как правило происходит к проработке Solution.
Для примера, если у нас есть некоторая система бухгалтерского учёта, то на уровне Architecture building блоков она должна реализовывать набор определённых функций и определённые бизнес-процессы. Когда мы перейдём на уровень Solution Building блоков, то мы будем выбирать технологическое решение, которое может быть куплено у конкретного вендора, настроено и кастомизировано или создано силами собственных программистов. Для SBBs нужны дополнительные навыки и опыт в выборе конкретных технологий и продуктов для реализации практической задачи, в отличие от ABBs. Таким образом, для проработки требований и проектирования основной функциональности системы бухучёта мы будем работать на уровне ABBs, а для создания такой системы в конкретной компании — придётся выбрать вариант реализации и найти специалиста, который имеет опыт внедрения не просто определённой категории систем, но и систем конкретного вендора (например, 1С).

BTABoK Competencies and Specialization

Не менее интересным, в контексте данной статьи, будет рассмотреть свод знаний в рамках фреймворка BTABoK. Это один из лучших ресурсов для первичного погружения в виды ИТ архитекторов.
Компетенции IT архитекторов BTABoK
Компетенции и специализации архитекторов, BTABoK
Обратите внимание, что согласно BTABoK, Solution Architecture — это дополнительный вид специализации архитектора. Это значит, что архитектор решения должен объединить воедино и реализовать все блоки Specializations (бизнес-архитектура, архитектура приложений, технологическая архитектура, информационная и архитектура предприятия), а также должен обладать знаниями стека технологий, который будет использоваться на проекте.

Результаты анализа рынка труда

Посмотрим на исследование рынка труда, проведённое в начале 2023 года на основе вакансий сайта HeadHunter. Было выделено четыре ключевые категории вакансий.
Профессия архитектор ПО в ИТ
Категории вакансий для архитекторов в ИТ
1. Бизнес архитектор и Корпоративный архитектор
Эти две категории объединены в один блок, так как в вакансиях отсутствует строгое разделение, и многие работодатели под бизнес-архитекторами подразумевают корпоративного архитектора.

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


2. ИТ-архитектор
Как понять, что перед вами ИТ-архитектор: отвечает за весь ландшафт информационных технологий или его значимую часть. ИТ-архитектор организует взаимодействие между разными системами, отвечает за функциональность всех ИТ систем внутри компании или их части ИТ, выделенной по какому-то принципу.
3. Архитектор решения (Solution Architect)
Как понять, что перед вами архитектор решения: как правило, это архитекторы, отвечающие за конкретную систему. Их основная задача — сделать так, чтобы эта система была встроена в ландшафт, и чтобы внутри неё всё работало в соответствии с согласованными принципами. Также архитектор решения занимается развитием этой системы.


4. Системный архитектор
Похоже, что с таким названием размещаются вакансии с разными ожиданиями. Большинство вакансий системных архитекторов очень похожи на вакансии архитекторов решений, но иногда подразумевают больше лет опыта, более высокий масштаб и уровень сложности систем.

Что работодатели хотят от ИТ архитектора

Проанализировав вакансии, можно сделать несколько выводов о требованиях к архитектору в IT.

Во-первых, по описаниям вакансий складывается впечатление, что от кандидата хотят всё и сразу.

От архитектора требуется техническая экспертиза и опыт использования различных технологических стеков, понимание их преимуществ и недостатков. Кроме того, он должен уметь работать с требованиями, выявлять потребности и проблемы, а также быть лидером разработки. Архитектор должен уметь управлять командой и иметь бизнес-менеджерские навыки. Он должен консолидировать идеи и объединять людей, чтобы все могли договориться и действовать в рамках общей системы.

Во-вторых, можно выделить две группы пожеланий к архитекторам: связанные с бизнесом и связанные с ИТ, и в конкретной вакансии обычно преобладает одна из этих групп.
Техническим архитекторам важно иметь опыт работы с определённым стеком технологий (обычно он указан в описании вакансии) и умение писать код. Развитие этих скиллов и подключение к ним менеджерских навыков позволяет сотруднику расти в должности. В целом так выглядит вектор развития ведущего разработчика, старшего разработчика и технического эксперта.

Работа бизнес-архитектора или архитектора решения, с другой стороны, склоняется к бизнес-анализу и работе с бизнес-архитектурой. Для специалистов в этой области важно иметь знания TOGAF и Archimate, а также понимание предметной области и соответствующих прикладных стандартов.
В-третьих, я считаю, что бизнес-аналитик или системный-аналитик может вырасти до системного архитектора. Проанализировав все вакансии, в заголовке которых есть упоминание системного архитектора, получилось выделить и разделить по ключевым направлениям все базовые требования. В результате получилась Карта навыков системного-архитектора, которую можно использовать в целях своего развития. По такому же принципу сформированы Карта навыков архитектора предприятия для архитектора предприятия, бизнес-архитектора и архитектора решения.

Путь из аналитика в архитекторы

Карьера навыки ИТ архитектора
Схема упрощённого развития аналитика в архитектора
В заключение представляем вам упрощённую вариацию пути развития от ИТ аналитика до ИТ архитектора. Если вы сейчас находитесь на позиции бизнес-аналитика или системного аналитика, то вы можете расти либо в сторону бизнес-архитектора, либо в сторону архитектора решения, либо в сторону ИТ-архитектора.

Наиболее логичный путь развития бизнес-аналитика — это бизнес-архитектор, отвечающий за проектирование целевых состояний архитектуры. Эта область, возможно, не так понятна и не так развита на сегодняшний день, как проектирование Solution, но важна и перспективна, поскольку зачастую сложности в проектах связаны не с техническими аспектами, а с концептуальными расхождениями в бизнес-сфере, и сотрудники, умеющие решать такие противоречия, нужны в любой команде.
Другим направлением развития аналитика является корпоративная архитектура. Чаще всего, судя по тексту вакансий, от такого специалиста ожидают опыта в определённом бизнес-домене, а в зоне его ответственности находится проектирование ИТ-систем предприятия. Стоит сделать ремарку, что это понимание роли корпоративного архитектора более узкое и более техническое, чем можно было бы ожидать, исходя из употребления термина «корпоративная архитектура предприятия». Ведь под корпоративной архитектурой в бизнесе понимается нечто комплексное и включающее множество аспектов от миссии и заинтересованных сторон до операционной структуры, автоматизации бизнеса и приложений и так далее.
Воркшоп «ArchiMate для проектирования и

поиска скрытых связей»


Воркшоп будет полезен тем, кто хочет:
  • Попробовать ArchiMate на практике.
  • Моделировать архитектуру своих проектов с помощью инструмента Archi.
  • Описывать бизнес и ИТ архитектуру, а также связи между ними.
  • Связывать требования с элементами бизнес и ИТ архитектуры.
  • Вносить изменения с учётом архитектуры.
Обучение системный аналитик ИТ архитектура Archimate

Вопросы и ответы про роль архитектора

  • Вопрос:
    В чём различие между архитектором решений, системным архитектором и архитектором программного обеспечения?
    Ответ:
    Архитектор решения (Solutions Architect) отвечает за конкретное решение и может быть специалистом в определённой информационной системе.
    Системный архитектор (Systems Architect) — это роль, которая зачастую трактуется значительно шире, чем Solution архитектор или архитектор отдельного домена. Это название используется как более общее, то есть при детальном рассмотрении может выясниться, что фактически это Solution архитектор, ИТ архитектор или другой тип архитектора (в зависимости от требований и возлагаемых обязанностей).
    Архитектор программного обеспечения (Software Architect) не живёт в рамках какого-то проекта и закреплён за какой-то определённой областью ответственности, например, он может отвечать за конкретную информационную систему.
  • Вопрос:
    Правда ли, что архитектору решений нужен опыт разработки и написания программного кода?
    Ответ:
    Это часто задаваемый вопрос, ответ на него зависит от используемых технологий. Как правило, Solutions Architect должен понимать основы программирования, чтобы грамотно проектировать архитектуру системы. Но бывают случаи, когда люди становятся архитекторами, не имея опыта разработки кода. Например, они могут вырасти до этой должности из системных аналитиков.

    Чтобы стать архитектором, не обязательно иметь полноценный опыт работы программистом, но нужно иметь знания в этой области. Работая системным аналитиком, можно понять принципы работы программиста, научиться описывать и проектировать интеграции систем, а также понимать структуру программного кода. Есть мнение, что это достаточным для того, чтобы освоить роль архитектора.

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

    Иными словами, если вы не имеете опыта программирования, то это не означает, что вы не сможете стать IT-архитектором.
  • Вопрос:
    Что такое бизнес-архитектура на практике и чем занимается бизнес-архитектор?
    Ответ:
    Бизнес архитектура на практике представляет собой формализованные описания архитектуры бизнес-процессов, ролевых моделей, мотивационных аспектов и других сущностей. Эти описания могут и должны быть использованы при проведении бизнес-анализа.
    Бизнес-аналитики могут иметь дело с разрозненными частями — моделями, процессами и структурами, а архитектор решает задачу связывания всех этих элементов между собой, чтобы понимать, как изменения в одном аспекте влияют на остальные.
  • Вопрос:
    Что такое IT-ландшафт?
    Ответ:
    ИТ-ландшафт представляет собой совокупность информационных систем, используемых внутри компании, включая программную и аппаратную части и их взаимодействие. Части ландшафта выделяются по принципу совокупности систем, как правило, по стеку технологий.
  • Вопрос:
    В чью сферу входит слой Data architecture (Архитектура данных), представленный в TOGAF — ИТ-архитектора или бизнес-архитектора?
    Ответ:
    TOGAF — это стандарт, который используется для создания архитектуры информационных систем. В этом стандарте нет специального слоя, который называется «Data architecture», но есть объекты, которые находятся на разных уровнях, связанные с обработкой информации. Эти объекты распределены по слоям бизнеса, приложений и технологий. Ответственность за эти объекты может быть распределена по слоям и связана между собой.

    Если компания сильно зависит от обработки данных, то в этом случае может быть выделен отдельный специалист — архитектор данных (Data architect), отвечающий за связь всех объектов обработки данных на разных уровнях.
  • Вопрос:
    Обязательно ли сертифицироваться по TOGAF для работы архитектором?
    Ответ:
    Судя по опубликованным вакансиям, сертификация нигде не требуется, но знание и понимание TOGAF необходимо, если мы смотрим вакансию бизнеса-архитектора и Enterprise-архитектора. Нужно ли проходить сертификацию — каждый решает сам для себя. Сертификация может понадобится, если Ваша компания специализируется на консалтинге и работает именно по фреймворку TOGAF. Я рекомендую начать с изучения и попытки применить техники TOGAF в своей работе, а дальше уже оценивать необходимость сертификации.

    Разумеется, если вы будете искать позицию архитектора, то наличие сертификации TOGAF точно будет ярко и выгодно выделять вас по сравнению с другими кандидатами, так как это один из самых распространённых и узнаваемых архитектурных фреймворков.
Ссылки
  • Методология для описания архитектуры предприятия — The Open Group Architecture Framework — TOGAF
  • Нотация моделирования архитектуры предприятия ArchiMate
  • Фреймворк навыков архитектора Architecture Skills Framework
  • Фреймворк навыков архитектурной практики BTABOK

Больше полезных статей

Автор
Михаил Максимов
Product owner, Бизнес-аналитик, автор и ведущий воркшопа
  • Принимал участие в консалтинговых ИТ-проектах для крупных нефтяных, логистических и медиа компаний РФ в роли бизнес-аналитика Smart Architect
  • Занимался вопросами выстраивания методологии бизнес-анализа в компании BIA Technologies
  • Принимал участие в разработке и проведении курсов «Архитектура предприятия», «Управление проектам», «Моделирование бизнес-процессов» в СПб ГУАП и СПб ГУТ им. Бонч-Бруевича
  • Автор и ведущий YouTube-канала «ЦифраБуква»