En
Написать
‹ Назад

Pulse UI

Дизайн-системаСбер · 65+ сервисов

Дизайн-система HR-платформы «Пульс» в Сбере (65+ сервисов): от разрозненных кастомных экранов к единой архитектуре семантических токенов, процессу контрибьюта продуктовых команд и контролю качества Design Gate. За 1,5 года: 81% CSI, 60% Adoption, доля кастома снижена до 15%, на новые токены переведены 50+ команд за 4 месяца.

О продукте и контексте

Дизайн-система Pulse UI (в ранних версиях — Impulse DS), на которой построена HR-платформа «Пульс» в Сбере, охватывает более 65 сервисов. Она закрывает сценарии от промо-лендингов до высоконагруженных рабочих интерфейсов: таблиц, аналитических дашбордов и командных календарей.

Ключевая архитектурная особенность Pulse UI — гибкая настройка тем. Через семантические дизайн-токены и связи между уровнями палитры система позволяет менять цветовую схему, типографику, скругления и другие визуальные параметры без пересборки продуктовых экранов — под разные бренды и пользовательские предпочтения.

Роль
Design System Lead (Сбер)
Мой вклад
Аудит и исследование · Стратегия и планирование · Проектирование и разработка · Внедрение в продукты · Поддержка и развитие
Команда
Владелец продукта · Дизайнер (×2) · Frontend-разработчик (×2)
Масштаб
65+ сервисов платформы «Пульс» · 50+ продуктовых команд
Период
2021 — 2025 (ключевой срез метрик — Q1 / 2024, результаты за 1,5 года)
Pulse UI: связка Design (Figma) × Code (Storybook) × Documentation (Notion)
Три опоры Pulse UI: библиотека макетов в Figma, код компонентов в Storybook и документация процессов и гайдлайнов в Notion.
Обзор фундамента Pulse UI: спейсинги, типографика, базовые компоненты и палитра с WCAG-контрастом
Базовые слои системы: шкала спейсингов (4–60 px), типографика, компоненты (кнопки, спиннеры, аватары, чипсы, тэги) и цветовая растяжка с проверкой контраста WCAG AAA/AA.

Что нужно было полечить

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

  • Много кастомных компонентовПродуктовые команды собирали собственные локальные версии кнопок, модалок и таблиц вместо переиспользования общей библиотеки.
  • Нет налаженного производственного процессаОтсутствовали прозрачные этапы исследования, оценки, тестирования, ревью и демо перед выкаткой новых и обновлённых компонентов.
  • Нет долгосрочной стратегии развитияСистема жила в режиме реактивного закрытия точечных тикетов без единого плана развития под цели бизнеса и будущие сервисы.
  • Команды не понимают ценности дизайн-системыПродуктовые дизайнеры и разработчики воспринимали библиотеку как внешнее ограничение, а не как общий инструмент ускорения.
  • Не хватает нужных компонентовВ библиотеке отсутствовали паттерны для сложных сценариев, и не было критериев, что должно жить в ядре ДС, а что — оставаться локальным.
  • Расхождения дизайна с разработкойКомпоненты в Figma и в Storybook расходились по состояниям и API; дизайнеры брали в макеты элементы раньше, чем они появлялись в коде.

Как решали проблемы

1. Аудит библиотеки и сокращение кастома

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

2. Перезапуск производственного пайплайна

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

3. Долгосрочная стратегия и открытый бэклог

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

4. Разделение «ядро vs локальное» и закрытие гэпов

Собрали полный список недостающих компонентов по запросам команд и разделили его на две группы: универсальные примитивы и паттерны, которые идут в общую библиотеку, и узкоспецифичные продуктовые блоки, которые остаются локальными. Провели гэп-анализ между Figma и кодом, разметили все расхождения и синхронизировали выпуск обновлений библиотеки и Storybook — чтобы дизайнеры не использовали в макетах компоненты, которых ещё нет в разработке. Для поддержания синхронности запустили регулярный процесс проверки DS Check up.

5. Обучение и вовлечение команд

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

Токены, основы и спецификации компонентов

Когда бизнес поставил задачу поддерживать смену цветовых тем в интерфейсе платформы, нам пришлось полностью переосмыслить работу с цветом и семантикой. Мы разделили базовую палитру (10 цветовых рядов в шкале 10–100 плюс дополнительные градиенты) и функциональный слой semantic tokens (bg-primary, text-secondary, интерактивные состояния и токены иллюстраций) для светлой и тёмной тем.

Архитектура семантических токенов и базовой палитры Pulse UI для светлой и тёмной темы
Семантические токены и базовая палитра из 10 цветовых растяжек (10–100) и градиентов в светлой и тёмной темах.

Мы разработали пошаговый план миграции в макетах и в коде. Сложнее всего переезд давался продуктовым командам с большим числом экранов: вместе с ними и за счёт плотной поддержки мы перевели на новые цветовые токены более 50 команд за 4 месяца.

Параллельно формализовали все базовые уровни системы в версии 1.0.0 со сквозными ссылками на Storybook и гайдлайны:

  • Тени (shadows): четыре уровня высоты (small для карточек, medium для поповеров и дропдаунов, large для модалок и offcanvas, extraLarge для drag & drop) отдельно для светлой и тёмной темы;
  • Типографика: иерархия заголовков на SB Sans Display и наборного текста на SB Sans Text по стандарту контрастности WCAG 2.1 AA;
  • Сетка и отступы: правила 12-колоночной сетки для разрешений от 1024dp (планшеты) до 2560dp с учётом свёрнутого и развёрнутого сайдбара, а также единый пространственный ритм на базе модуля 4px (0.5rem).
Документация теней (light и dark) и типографической шкалы SB Sans Display / SB Sans Text
Спецификации основ v1.0.0: система теней (light / dark) и типографическая шкала на базе SB Sans Display и SB Sans Text.
Документация адаптивной сетки (layout grid) и шкалы отступов (spacing 4px)
Правила адаптивной сетки (с сайдбаром и без него для экранов 1024–2560dp) и шкала отступов на модуле 4px.

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

Спецификация компонента Modal: анатомия, адаптив для десктопа, варианты хедера и футера, поведение при скролле
Пример документации компонента Modal (v1.0.0): анатомия, размеры S–XL, адаптив под десктоп (1024–1440px), варианты хедера и футера и закрепление шапки/подвала при скролле контента.

Что ещё было сделано

  • Описали и внедрили процесс контрибьюта от продуктовых командНебольшой командой ядра (2 дизайнера и 2 фронтенд-разработчика) невозможно закрыть все продуктовые запросы на 65+ сервисов. Мы описали прозрачный процесс контрибьюта: продуктовые команды сами предлагают и разрабатывают новые компоненты, чинят баги и вносят доработки в общую библиотеку.
  • Разработали и запустили процесс контроля качества Design GateВнедрили обязательный контур проверки макетов перед передачей в разработку и сверстанных экранов перед релизом. Со временем это направление выросло и выделилось из дизайн-системы в отдельную команду, так как стало критичным контуром качества для руководства платформы.
  • Собрали прикладную документацию для командОписали жизненный цикл компонента от идеи до депрекейта, гайды по сборке локальных компонентов, инструкции по миграции на новые семантические токены и правила прохождения ревью.
  • Изменили отношение команд к дизайн-системеЗа счёт открытого бэклога, демо, обучения и контрибьюта продуктовые команды перестали воспринимать ДС как внешний барьер и стали активно участвовать в обсуждении архитектуры и развитии библиотеки.

Итоги и метрики (Q1 / 2024 — за 1,5 года)

Для оценки здоровья и эффективности дизайн-системы мы отслеживали три ключевых показателя: индекс удовлетворённости команд (CSI — Component Satisfaction Index), долю покрытия интерфейсов компонентами системы (Adoption) и долю кастомных решений в продуктах (Custom Usage).

Метрики Pulse UI на Q1 / 2024 · Результаты за 1,5 года работы Здоровье и принятие дизайн-системы на платформе «Пульс» Охват: 65+ сервисов платформы и 50+ продуктовых команд, переведённых на семантические токены за 4 месяца

CSI (удовлетворённость)81%

Adoption (принятие)60%

Custom Usage (доля кастома)15%

Метрика / результатЗначениеЗа счёт чего достигли
CSI (Component Satisfaction Index)81%Регулярные митапы с командами, сбор и разбор обратной связи от пользователей библиотеки, ускорение и прозрачность производственного процесса.
Adoption60%Обучающие сессии для дизайнеров и разработчиков, подробная документация в Notion и Storybook, активная поддержка команд на внедрении.
Custom Usage15%Регулярное обновление библиотек, запуск процесса контрибьюта, внедрение Quality / Design Gate и быстрая реакция на продуктовые запросы.
Миграция на новые цветовые токены50+ команд за 4 мес.Пересборка семантической палитры под темизацию, пошаговый план переезда в дизайне и коде и сопровождение продуктовых команд.

Есть задача?

Напишите мне. Вместе разберёмся, с чего начать.