На самом деле вам не нужна дизайн-система

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

Я сразу к делу. Если вы стартап, я бы не спешил. Компоненты и экраны еще много раз поменяются, и это нормально.

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

Хьюстон, у нас проблема: MVP готов, первые пользователи есть, а команда спорит, какой радиус правильнее, и почему заголовок дышит не по сетке

Хьюстон, у нас проблема: MVP готов, первые пользователи есть, а команда спорит, какой радиус правильнее, и почему заголовок дышит не по сетке

Откуда вообще взялась эта мода

Она не из воздуха. За ней стоит реальная боль сразу нескольких ролей.

Дизайнеры вечно детачат, копируют, переименовывают, собирают “почти такой же” компонент, но «на пару пикселей иначе», и спецификации начинают расходиться.

Разработчики потом смотрят на макеты и задают вопросы, которые звучат как раздражение: почему все инпуты разной высоты, почему у кнопок разные состояния, почему в одном месте один радиус, а в другом другой.

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

В какой-то момент команда устает от разброда → И тогда ДС кажется лекарством от всего сразу.

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

Когда дизайн-система реально нужна

Обычно это случается не в момент, когда фаундер впервые произнес слово “токены”.

Это случается, когда в продукте появляется повторяемость, дубли, постоянные мелкие рассинхроны, и они начинают съедать время быстрее, чем вы успеваете делать новые вещи.

Частый признак: несколько команд параллельно пилят разные куски, новые компоненты и экраны появляются регулярно, идет много A/B тестов. В команду то и дело заходят новые люди, и каждый вход превращается в экскурсию по “как у нас принято”.

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

Когда ДС не нужна (ну по крайней мере сейчас)

Почти всегда это ранняя стадия.

У вас есть пользователи, которые хотят много фич уже завтра, приоритеты скачут, гипотезы еще проверяются, а product market fit не выглядит как железобетонная реальность.

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

ДС в этот момент легко превращается в красивую прокрастинацию.

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

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

На самом деле вам не нужна дизайн-система - 2

Мой личный опыт, который сформировал эту позицию

Я 20 лет в интерфейсах, и это не про “рисовать красиво”. Это про строить, изучать и упрощать, особенно в условиях неопределенности.

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

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

И вот тут важный момент. Я почти никогда не начинаю с токенов и структуры компонентов. В ранней стадии я скорее беру готовый UI kit, иногда что-то из своего набора Setproduct, иногда готовый kit уровня shadcn, который фронтендер средней руки может быстро перенести в React-прототип.

Цель простая: быстро проверить гипотезу, а не построить идеальную библиотеку состояний на будущее.

Почему ранняя дизайн-система может навредить

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

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

Третий вред для стартапа, на мой взгляд, ключевой → Стартап почти всегда ограничен ресурсами. Моя задача в таких проектах часто не только улучшить интерфейс, но и сэкономить силы команды.

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

Как выглядит практичный план в ранней стадии

На практике я стараюсь идти по пути “минимум стандарта, максимум скорости”. Для макетов это может быть Figma или Pixso, но иногда еще быстрее получается через точные промпты в Nano Banana, когда за вечер можно прийти к понятному макету абсолютно без ручной отрисовки (подход этот, тянет на отдельную статью, потому что там много плясок с бубном как прийти к точному промпту).

На фронте часто достаточно shadcn/ui как основы компонентной библиотеки, чтобы быстро собрать прототип и не утонуть в бесконечной стилизации. Если нужна визуальная настройка, Tailwind обычно закрывает вопрос быстро и предсказуемо.

А вот вместо полноценной дизайн-системы на старте мне нравится идея одной аккуратной таблицы токенов в Storybook или эквиваленте. Цвета, отступы, радиусы, типографика. Это дает минимальную дисциплину, но не превращает раннюю фазу в бюрократию.

Ну и напоследок

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

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

И да, маленькое наблюдение напоследок. Главный враг стартапа часто не конкуренты и не отсутствие ДС. Это фаундер, который пытается сделать все идеально раньше, чем стало понятно, что именно работает. Проверено на себе.

Если вы сейчас в фазе “нужно быстро собрать интерфейс, чтобы проверить гипотезу”, я иногда помогаю командам пройти этот участок без лишней бюрократии: упаковать сценарии, собрать понятный MVP-интерфейс на базе готовых китов и оставить “большую систему” на тот момент, когда она начнет экономить, а не сжигать ресурсы → Пишите мне в ТГ или ЛС: @kamushken. Я люблю неопределенность, эксперименты и вот эту до боли знакомую раннюю стадию.

Автор: kamushken

Источник

Оставить комментарий