Команда для разработки дизайн-системы: кого взять и как масштабировать

Советы от основателя UX-агентства EightShapes Натана Кёртиса.

Команда для разработки дизайн-системы: кого взять и как масштабировать

Что представляет собой команда, разрабатывающая дизайн-систему

Многие ИТ-организации в конце концов приходят к пониманию необходимости создания дизайн-систем, однако порой это знание обходится им слишком дорого. Эффективное решение этой проблемы состоит в создании специальных «системных команд», которые обслуживают совокупность всех проектных направлений этой организации. Об этом пишут Питер Мерхольц и Кристин Скиннер в своей книге Org Design for Design Orgs:

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

Прочитав это, я подумал о том, что подобные «системные команды» могли бы решать наиболее широкие и простые вопросы, связанные с дизайном, то есть заниматься разработкой визуального языка, компонентов интерфейса и так далее.

Поэтому я был удивлён, прочитав выступление Питера на UI21, где он говорил, что такие команды были призваны «взломать организационный патч» в тех моделях, которые он описывал. Возможно, я что-то неправильно понял. За несколько лет мне удалось поработать примерно в 15-20 системных командах, и все они обслуживали другие подразделения своих предприятий схожим, хотя и не совсем одинаковым образом.

Мой опыт показывает, что оптимальная системная команда должна быть междисциплинарной и независимой. Она создаёт продукт, который потребляют другие команды.

Команда для разработки дизайн-системы: кого взять и как масштабировать

Кто должен входить в эту команду? Нужно ли её участникам работать полный день? Какие специалисты должны быть представлены в команде? Из каких именно подразделений компании следует их набирать?

Эта статья не только отвечает на все эти вопросы, но и описывает основные этапы роста системных команд. Кроме того, в ней есть примеры команд, которыми я руководил в последние четыре года, а также те паттерны и возможные ловушки, с которыми вы можете столкнуться в ходе формирования и управления своей системной командой.

Этапы роста системных команд

Большинство системных команд, с которыми я разговаривал на клиентских встречах, конференциях и в нашем чате, находились на одном из четырёх этапов роста: они состояли из совместителей, включали в себя специально выделенных сотрудников, являлись сплочёнными командами или представляли собой «команду команд».

1. Совместители

Сотрудники, работающие в системных командах в своё свободное время, часто рассказывали мне о том, как постепенно «сходило на нет» их страстное отношение к этой работе:

Я предоставлен самому себе. В свободное время я сделал эскизы наклеек или код начальной загрузки, но никто кроме меня их не использует. Я не знаю, что мне делать дальше.​

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

Впрочем, не падайте духом, многие начинали свой путь именно так. Это что-то вроде «пробного камня», своеобразный способ научиться приносить пользу другим. Докажите, что ваши инструменты обеспечивают реальные результаты (согласованность, эффективность, повторное использование) в пилотных проектах.

2. Специально выделенные люди

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

Команда для разработки дизайн-системы: кого взять и как масштабировать

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

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

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

3. Отдельная системная команда

Если вы будете участвовать в формировании такой команды, постарайтесь включить в неё хороших дизайнеров и квалифицированных инженеров.

Состав системных команд разного масштаба
Состав системных команд разного масштаба

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

  • Обязательно, чтобы команда смогла создать элегантный визуальный язык. Она должна включать в себя дизайнеров, специализирующихся на визуализации и взаимодействии, а также специалистов по информационной архитектуре.
  • Обязательно, чтобы ваши инженеры могли сфокусироваться на внешнем интерфейсе. Им понадобятся знания HTML и CSS, а также навыки создания инструментов и правил.​
  • Желательно: формулировать видение, определять направление движения, курировать дорожные карты, мониторить принятие и организовывать бэклоги, дискуссии и критику — всё это задачи продуктового менеджера и лидера.
  • Пригодится: вам могут потребоваться такие особые навыки, как умение работать с контентной стратегией, доступностью, производительностью, SEO и так далее. Но если вы ограничены в финансах, то знайте, что системы, прежде всего, нуждаются в сочетании дизайнеров и инженеров.
  • Скорее всего, не понадобится: без контроля качества и исследований вполне можно обойтись. Поскольку с финансированием QA часто возникают проблемы, лучше обеспечивать должное качество другим способом. А исследования могут проводить другие подразделения компании.

4. «Команда команд»

Некоторые крупные предприятия (такие как Google, IBM, GE, Cisco или Microsoft) используют дизайн-системы, чтобы охватить множество не связанных друг с другом команд и обеспечить достижение единых системных целей.

«Команда команд»
«Команда команд»

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

Примеры системных команд

Хотя я и раньше участвовал в системных командах, я буду описывать лишь те, которыми руководил после 2012 года, поскольку именно с этого времени ситуация сильно изменилась: появился отзывчивый дизайн, усовершенствовались HTML и CSS, и некоторые компании-единороги стали систематически применять дизайн-код.

Приведённые ниже примеры показывают, как менялись со временем модели моих системных команд.

1. Отзывчивый eсommerce

Что было хорошо: наша сплочённая команда разрабатывала и документировала разнообразные стандарты для индивидуального веб-опыта. Это была дизайн-система в духе Big Kahuna: стиль, взаимодействие, компоненты, паттерны, бренд, редактура, SEO, доступность и непосредственно работа.

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

Команда для разработки дизайн-системы: кого взять и как масштабировать

Что не понравилось: наша системная команда создала надёжную библиотеку компонентов для построения стандартных сайтов и прототипирования отзывчивого дизайна. Однако ведущие инженеры не приняли наш кодекс и не стали использовать нашу библиотеку.

В итоге усилия разработчиков дублировались и были неэффективными и несогласованными (правда, тайком они всё-таки вставляли наш код в свои сборки). С тех пор я поклялся себе никогда не работать в условиях, когда лидеры компании блокируют внедрение дизайн-системы, несмотря на очевидную потребность в ней.

2. Язык дизайна для быстрорастущей организации

Что было хорошо: в организации, которая за 12-18 месяцев выросла от 30 до 200 с лишним человек, наша системная команда отвечала за разработку общего языка дизайна, который был задокументирован на сайте пользовательских стандартов (у внешнего разработчика).

Учитывая большой и распределённый масштаб этой организации, мы использовали часть этих стандартов для разработки взаимодействия, UX и иконок. В первые шесть месяцев, пока объём работы был не такой большой (визуальный стиль, кнопки и формы), она воспринималась «на ура», особенно если учесть масштаб компании и проблемы, с которыми мы столкнулись.

Команда для разработки дизайн-системы: кого взять и как масштабировать

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

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

3. Библиотека сайтов

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

Команда для разработки дизайн-системы: кого взять и как масштабировать

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

4. Экосистема цифрового продукта

Что было хорошо: вместе с местным дизайнером мы разработали и задокументировали стиль и компоненты. При этом мы опирались на редизайн флагманского продукта, который сами же сделали кварталом раньше.

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

Команда для разработки дизайн-системы: кого взять и как масштабировать

Мы выпустили библиотеку v1.0 за три месяца и возвращались к ней раз в квартал, чтобы отладить инструменты и расширить библиотечный каталог. Когда дизайнеры, инженеры и продуктовые лидеры составляли план на 2017 год, вице-президент компании очень тепло отозвался о нашей системе: «Создание дизайн-системы — это важнейшее достижение прошлого года. Она станет основой для всей нашей будущей работы».​

5. Библиотека для конкурентов

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

Команда для разработки дизайн-системы: кого взять и как масштабировать

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

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

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

Уроки, извлечённые из управления системными командами

1. Дизайн-код помогает совместной работе дизайнеров и инженеров

С 2006 года я работал во множестве команд, создавая библиотеки ассетов и шаблонов и документируя дизайн. Я убеждён, что ценность дизайн-систем увеличивается в десятки раз, когда удаётся наладить связь между сильным дизайном и инженерными практиками.

Команда для разработки дизайн-системы: кого взять и как масштабировать

Да, бывают случаи (например, с Google Material), в которых дизайнерская спецификация имеет самостоятельное значение. Однако мой опыт показывает, что унификация визуального языка, компонентов и других структур в построенный код обеспечивает искомую эффективность, ясность и ремонтопригодность цифровых продуктов.

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

2. Половинная занятость — это не так уж плохо

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

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

Команда для разработки дизайн-системы: кого взять и как масштабировать

Это сопряжено со следующими проблемами:

  • Продуктовые лидеры признают половинную занятость в системных командах, но рассчитывают на 32 или более часов работы своих сотрудников в неделю над их продуктом.
  • Члены команд вынуждены участвовать во множестве зачастую конфликтующих мероприятий (скрам, планирование, критика) — в итоге встреч и обсуждений выходит больше, чем продуктивной работы.

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

3. Приготовьтесь к постоянной ротации членов системной команды

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

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

Команда для разработки дизайн-системы: кого взять и как масштабировать

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

4. Периодические сокращения команды неизбежны

Для большинства цифровых компаний характерны периодические кадровые сдвиги в сторону работы над продуктом после больших релизов дизайн-системы. Это нормально.

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

5. Адаптация новых участников — это тест на качество системы

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

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

6. Расширяйте свою «клиентскую базу»

Если дизайн-система должна обслуживать несколько направлений бизнеса, необходимо, чтобы в вашей команде присутствовали представители всех этих сфер. Вам придётся постараться, чтобы обеспечить реальное сотрудничество специалистов не только из продуктовых, но и из маркетинговых подразделений компании. Однако это может принести свои плоды: хорошие презентации помогут вписать вашу дизайн-систему в «местный» образ жизни.

22
Начать дискуссию