Когда проблема названа, а исход выбран, возникает соблазн построить всё и сразу: раз уж взялись, сделаем по-хорошему, со всеми ветками и крайними случаями. Этот соблазн — самый тихий способ не выпустить ничего вовремя. Объём растёт незаметно, срок уезжает, а пользователь всё это время живёт со своей болью.
Приоритизация — это два решения, и второе важнее первого. Первое: что делать раньше. Второе, которое обычно избегают: чего не делать вовсе. Продукт-инженер умеет резать — доводить задачу до наименьшего среза, который реально снимает боль и проверяет, что мы не ошиблись.
Всё сразу значит ничего вовремя
У объёма есть свойство расти сам. Каждый крайний случай кажется обязательным, каждая соседняя функция — логичным дополнением, каждое «а что если» — поводом добавить ветку. По отдельности всё разумно; в сумме получается план, который не доезжает до пользователя месяцами. А до тех пор обратной связи нет, и весь этот объём строится на непроверенных догадках.
Цена тут не только во времени. Чем больше построено до первого контакта с реальностью, тем дороже разворот, когда выяснится, что догадка была неверной. Большой объём — это не «сделали много», это «много поставили на ставку, которую не проверяли».
Наименьший ценный срез
Резать нужно правильно. Частая ошибка — резать горизонтально, по слоям: сначала вся база данных, потом весь слой логики, потом весь интерфейс. Так до работающего результата не добраться до самого конца, и проверить ничего нельзя, пока не собрано всё.
Продукт-инженер режет вертикально. Наименьший ценный срез — это самый узкий сквозной путь, который проходит через все слои и реально решает задачу хотя бы для одного случая. В кейсе маркетплейса проблему «продавец не может быстро поднять каталог» не обязательно закрывать сразу импортом любого формата с валидацией, картинками и вариациями. Наименьший срез — завести каталог из таблицы одного простого вида, без вариаций, с понятным сообщением об ошибке. Это уже снимает боль для части продавцов и проверяет главную гипотезу: будут ли вообще заводить каталог так. Остальное — после того, как срез показал, что путь верный.
Хороший срез отвечает на два вопроса сразу: даёт ли он ценность хоть кому-то прямо сейчас и проверяет ли он самое рискованное предположение. Если он только проверяет, но не помогает, — это эксперимент, не продукт. Если только помогает, но ничего не проверяет, — ты везёт, что угадал.
Что не строить
Решение «не строить» даётся тяжелее, чем «отложить», потому что звучит как поражение. Но «отложим на потом» в большинстве случаев — вежливая форма «не сделаем никогда», и честнее это признать сразу. Список «потом доделаем» почти не разгребается: появляются новые проблемы, у которых приоритет выше, и старое «потом» тихо устаревает.
Поэтому полезно явно держать не только список того, что делаем, но и список того, что сознательно не делаем — и почему. Этот второй список защищает от двух бед сразу: от раздувания текущей задачи и от чувства вины за «недоделанное». Не сделанное по решению — это не долг, это выбор. Крайний случай, который встречается у одного пользователя из тысячи, функция «на всякий случай», красивая ветка, которой никто не просил, — всё это кандидаты в список «не строим», пока метрика исхода или контакт с пользователем не докажут обратное.
Приоритет по исходу и риску
Чем резать и что оставлять — решает не вкус, а две оси: вклад в исход и риск гипотезы. Вклад в исход отвечает, насколько кусок двигает ту метрику, ради которой всё делается; всё, что её не двигает, опускается вниз автоматически. Риск гипотезы отвечает, что будет дороже всего, если мы ошиблись; самое рискованное предположение стоит проверять раньше, пока цена разворота мала.
Из этих двух осей складывается простое правило очерёдности: раньше делается то, что и даёт ценность, и снимает главный риск. Дёшево и неважно — подождёт; дорого и неважно — в список «не строим»; важно, но проверяемо позже — после первого среза.
Для продукт-инженера это особенно ценно, потому что он ведёт весь путь один и его время — самый дефицитный ресурс продукта. Каждый кусок, который он решил не строить, — это время, отданное тому, что действительно двигает исход. Умение резать — это не про то, чтобы делать меньше; это про то, чтобы из ограниченного времени одного человека выжать максимум пользы. Доведённый до пользователя узкий срез бьёт любой широкий план, застрявший на полпути, — а доводить его до конца, не перекидывая через стену, и есть следующая тема.