Ответ
В проектах на Node.js без выделенного PM я комбинирую несколько подходов, чтобы фокусироваться на наиболее ценных задачах.
Основные критерии приоритизации:
- Ближайшие дедлайны и блокирующие зависимости. Например, задача по обновлению критической зависимости
expressиз-за уязвимости CVE получает наивысший приоритет. - Бизнес-ценность. Я согласовываю с продакт- или тимлидом ключевые цели спринта/квартала. Задача, связанная с основным API, обычно важнее внутреннего рефакторинга.
- Оценка усилий и влияния. Я быстро оцениваю задачи по шкале от 1 до 5:
// Пример быстрой оценки в трекере const taskEvaluation = { task: "Добавить кэширование ответов API в Redis", impact: 5, // Высокое влияние на производительность effort: 3 // Средние усилия };Задачи с высоким влиянием и низкими усилиями делаю в первую очередь.
- Технический долг. Я стремлюсь выделять около 20% времени на задачи по поддержке: обновление пакетов, улучшение логгирования или рефакторинг "критических" модулей.
Инструменты: Для визуализации использую простой Kanban-борд (например, в GitHub Projects) с колонками To Do, In Progress, Review, Done. Приоритет отмечаю метками (P0, P1). Раз в неделю провожу быстрый пересмотр приоритетов с командой.
Ответ 18+ 🔞
Блин, слушай, вот реально классическая ситуация в наших палестинах — сидишь такой на проекте, а PM как такового нихуя нет. Ну, или он есть, но только на бумаге, а по факту ты сам себе и начальник, и подчинённый. Так как же не сойти с ума и понять, за какую задачу хвататься в первую очередь, когда их овердохуища?
Я тебе щас по пунктам разложу, как я из этой пиздопроебибны обычно выкручиваюсь.
На чём мозги палю, когда приоритеты выставляю:
-
Дедлайны и вот это вот всё, что всех тормозит. Это святое, ёпта. Ну представь, выходит какая-нибудь ядрёна вошь — уязвимость в
express. Все начинают орать «CVE! CVE!». Ну и понятно, что эту задачу по обновлению зависимости надо впихнуть в самое начало очереди, пока тебе не впендюрили за то, что всё легло. Или если от твоей фичи десять других команд ждут — тоже приоритет пиздец какой высокий. -
А нахуя это вообще нужно? То есть, какая от задачи бизнес-ценность. Тут без вариантов — надо идти к продакту или тимлиду и спрашивать: «Мужики, ну че по чем? Какая у нас главная цель?». Если задача про основной API, который клиентам нужен, — это одно. А если про какой-нибудь внутренний рефакторинг красивенький — это совсем другое. Первое, естественно, важнее. Иначе будешь как тот самый полупидор, который полирует код, пока проект на боку лежит.
-
Оценка: сколько сил отдашь и что получишь. Я быстро, на коленке, оцениваю задачи. Смотри, как примерно в голове раскладываю:
// Мысленно прикидываю в голове const taskEvaluation = { task: "Прикрутить Redis для кэша API", impact: 5, // Охуенно улучшит скорость, всем сразу лучше станет effort: 3 // Ну, потрахаться придётся, но не до потери пульса };Самые вкусные — это когда влияние (impact) большое, а усилий (effort) — немного. Их делаю первыми, чтобы быстро всех удивить и показать прогресс. А вот если влияние маленькое, а ебаться с ней полгода — нахуй такую задачу, в самый низ стека.
-
Технический долг. Его игнорировать — это прямой путь в ад, чувак. Но и с головой в него нырять нельзя. Я стараюсь выделять процентов 20 времени, не больше, на всякую поддержку: обновить пакеты, починить самый ужасный логгинг, переписать модуль, от которого у всех волосы дыбом встают. Если этого не делать, потом будешь сидеть на руинах и материться, что ничего не работает.
Чем пользуюсь, чтобы не запутаться: Беру простой Kanban-борд, хоть в тех же GitHub Projects. Колонки: Сделать, В работе, На проверке, Готово. На задачи леплю метки P0, P1 — сразу видно, что в огонь. И раз в неделю обязательно собираю команду на пятиминутку: «Ну что, мужики, приоритеты не поменялись? Может, что-то новое ворвалось, как гомосеки налетели?». Так и живём.