Solutions architect, который не пишет код

В данной статье рассматривается профстандарт архитектора ПО (06.003).

4de3b623367365a655f8d9d5788d5221.png

Ссылки на первоисточники:

Добрый день, уважаемые коллеги!

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

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

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

Буду благодарен за дискуссию по данной теме, жду ваших комментариев!

«Не нужно выдумывать велосипед»

В который раз возвращаюсь к старой теме, что архитектор не пишет код. А тот, который пишет, скорее является лидером команды (team lead), который совмещает в себе сразу несколько обязанностей, имеет не самую большую команду, или в команде отсутствует разграничение ответственности, и такой архитектор морально не готов/не хочет перейти на следующий уровень абстракций.

На этот раз хочу рассмотреть этот вопрос с точки зрения профстандарта архитектора программного обеспечения, и провести аналогию с профстандартом разработчика (06.001) и другими источниками. В частности, пример из Linkedin по запросу «Solutions architect».

На мой взгляд эти аргументы железные.

Стандарт архитектора ПО утвержден 30.08.2021 и действует с 1 марта 2022 года до 2028 года.

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

Сейчас в ВУЗах преподают дисциплины, в названии которых присутствует термин «архитектура». Например, «архитектура вычислительных систем» — про микропроцессоры, или «Проектирование программного обеспечения» — про подготовку компонентных диаграмм программных/автоматизированных систем, и др. Таким образом сразу открывая горизонты перед молодым поколением.

«Руководитель среднего звена»

Вернусь к стандарту. Сразу хочется обратить внимание, что цель деятельности архитектора, заявленная в профстандарте — это проектирование, мониторинг и контроль. Проведу параллель по моим наблюдениям в Linkedin — как правило,  Solutions architect относится к руководителю среднего звена.

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

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

Далее в стандарте представлены обобщенные трудовые функции:

  • Управление архитектурой изолированной (неинтегрированной) программной системы;

  • Управление архитектурой интегрированного программного обеспечения;

  • Управление архитектурой единой информационной среды.

Т.е. фактически в стандарте приведена классификация систем, что системы бывают монолитные, или интегрированные, или очень сильно интегрированные.

И далее трудовые функции сгруппированы по роли/масштабу/опыту архитектора:

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

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

«Что я должен делать»

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

  • Выявление и согласование требований … с точки зрения архитектуры;

  • Выбор и моделирование…;

  • Разработка разделов …;

  • Контроль реализации и испытаний … с точки зрения архитектуры;

  • Сопровождение эксплуатации … с точки зрения архитектуры;

  • Создание и согласование требований … с точки зрения архитектуры.

784a9cd192298316695abc27895da796.png

Стандарт достаточно подробно описывает каждую трудовую функцию, а именно:

  • Какие трудовые действия трудовая функция включает;

  • Умения, необходимые для выполнения трудовой функции;

  • Знания, необходимые для выполнения трудовой функции;

  • А также другие характеристики.

«Что я не должен делать»

А теперь давайте посмотрим на обобщенные трудовые функции из профстандарта разработчика программного обеспечения (06.001 https://classinform.ru/profstandarty/06.001-programmist.html):

  • Разработка и отладка программного кода;

  • Проверка работоспособности и рефакторинг кода программного обеспечения;

  • Интеграция программных модулей и компонентов и проверка работоспособности выпусков программного продукта;

  • Разработка требований и проектирование программного обеспечения

Вот вам и разница!

«Доброе слово рабочей группе»

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

Хотелось бы в качестве заключения озвучить, что сам я минимум раз в год погружаюсь в лабораторную среду, рассматриваю языки, на которых ранее не писал, или начинаю разворачивать ПО, с которым раньше не работал. И даже иногда подумываю, почему бы по новой для меня исследуемой технологии не поработать месяца три так называемым Джуниором. Периодически ностальгирую по коду!

Но потом откуда-то появляется много новой работы по прямому назначению, так что большое спасибо за ознакомление со статьей, откланиваюсь и ухожу проектировать крупные системы!

До новых встреч, уважаемые коллеги! Жду ваших комментариев!

© Habrahabr.ru