Кейс: Авито

Как платформенная команда Авито построила прозрачную приоритизацию для 15+ команд

«Мы смотрим спринт-рейди, и мы такие: а почему мы вот это возьмём? Ну потому что у неё 34 голоса, и мы все вместе проголосовали, у неё 21 скор. Понятно, короче, почему.»

Павел Агалецкий
Павел Агалецкий
Ведущий инженер платформы, Авито

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

0

голоса — и вопросов к приоритету нет

0+

команд голосуют на Доске идей

avito.ru

Об Авито

Авито — крупнейшая платформа объявлений в России. Платформенные команды создают внутренние сервисы для 15+ feature-команд разработки: общая шина данных, протоколы межсервисного обмена и другие инструменты.

Павел Агалецкий — ведущий инженер платформы с 15+ годами опыта в IT, спикер GolangConf и HighLoad++. Он внедрил ПриоПлан для сбора и приоритизации фич-реквестов от соседних команд.

Почему запросы в таск трекере не работали

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

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

Павел Агалецкий
Павел Агалецкий
Ведущий инженер платформы, Авито

Тикеты в таск трекере

  • Фич-реквесты теряются среди тысяч задач в таск трекере
  • Непонятно, почему одна задача в спринте, а другая нет
  • Коллеги не видят, что их запросы учитываются
  • Решения о приоритетах воспринимаются как произвольные

Доска идей ПриоПлана

  • Единая Доска идей ПриоПлана для всех команд с голосованием
  • Скоринг и голоса определяют порядок в спринте
  • Каждая команда видит статус своих запросов в реальном времени
  • Ежедневные дайджесты из ПриоПлана в Mattermost

Доска идей ПриоПлана для внутренних команд

Доска идей ПриоПлана стала единой точкой входа для фич-реквестов от всех 15+ команд. Вместо разрозненных тикетов в таск трекере, сообщений в Mattermost и устных договорённостей — одна доска, где каждый может предложить идею и проголосовать.

Доска идей — платформенная команда Авито
Входящие4
Brief
Поддержка gRPC streaming в шине данных
34
+2
APR
Миграция на новый протокол APR v2
21
Топ-приоритет2
Database
Read replicas для аналитических запросов
18
+1
Brief
Rate limiting на уровне шины
12
В работе1
Database
Дашборд метрик для потребителей
15

Метки по зонам ответственности

«У нас лейблы — это чаще всего категории нашей зоны ответственности. Есть бриф, датабас, кандидаты в APR и прочее.»

Павел Агалецкий
Павел Агалецкий
Ведущий инженер платформы, Авито

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

От идеи к задаче в таск трекере

Процесс прост: команда предлагает идею в ПриоПлане → коллеги голосуют → идея набирает скор → одобренная идея автоматически пушится в таск трекер как задача или эпик.

От голоса до спринта

Благодаря ПриоПлану решения о приоритетах стали объяснимыми. На sprint ready больше нет вопроса «а почему именно эта задача?» — голоса и скор говорят сами за себя, и вся команда быстро соглашается.

Сбор идей

Команды голосуют и предлагают через Доску идей ПриоПлана

Категоризация

Метки по зонам ответственности: Brief, Database, APR

Скоринг

Командная оценка по критериям значимости в ПриоПлане

Push в таск трекер

Одобренные идеи автоматически пушатся в таск трекер

Спринт

Задачи с высшим скором и голосами попадают в sprint ready

ПриоПлан + таск трекер + Mattermost

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

ПриоПлан → таск трекер

  • Двусторонняя синхронизация задач между ПриоПланом и таск трекером
  • Одобренные идеи автоматически создаются как эпики в общем проекте
  • Sprint Ready фильтры на основе скора из ПриоПлана

ПриоПлан → Mattermost

  • Ежедневные дайджесты из ПриоПлана в канал команды
  • Личные уведомления о новых голосах и идеях
  • Автоуведомления голосовавшим при смене статуса идеи

«В основном разработчики — это Mattermost. Интеграция с ним — одна из самых базовых вещей, которые нужны.»

Павел Агалецкий
Павел Агалецкий
Ведущий инженер платформы, Авито

«Нам приходят в канал команды, мне в личку, что столько-то человек проголосовало, столько-то идей заведено. Каждый день я вижу, что плюс один проголосовал.»

Павел Агалецкий
Павел Агалецкий
Ведущий инженер платформы, Авито

Автоматические уведомления: коммуникация без встреч

Те, кто проголосовал за идею, автоматически получают уведомления при смене статуса — через Mattermost или email. Не нужно ходить и спрашивать «что с моим запросом?». ПриоПлан берёт коммуникацию на себя.

Идея принята

Голосовавшие получают уведомление, что идея взята в работу

Статус обновлён

Автоматический дайджест при смене статуса в таск трекере

Задача сделана

Все голосовавшие узнают о релизе автоматически

Публикация планов: прозрачность в обе стороны

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

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

Показать, что голосование работает

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

Контекст голосующих

«Вот эти 15 голосов — 15 команд к нам пришло или 15 человек из одной команды? Это было бы очень важно.»

Павел Агалецкий
Павел Агалецкий
Ведущий инженер платформы, Авито

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

Мотивация к обоснованию

«Было бы хорошо, когда человек тыкает, она бы спрашивала — оставь коммент с обоснованием, зачем вам это нужно.»

Павел Агалецкий
Павел Агалецкий
Ведущий инженер платформы, Авито

Голос без контекста — это сигнал. Голос с обоснованием — это данные. ПриоПлан мотивирует пользователей объяснять, зачем им нужна фича, кратно увеличивая ценность каждого голоса.

Данные вместо интуиции

0
голоса

Лидер бэклога = первая задача спринта

0+
команд

Голосуют на Доске идей ПриоПлана

0
скор

Командная оценка подтверждает приоритет

«В новом квартале хотим больше работать по фичам именно через эту штуку. Хотим показать пользователям, что это работает.»

Павел Агалецкий
Павел Агалецкий
Ведущий инженер платформы, Авито

Честный фидбэк: первое впечатление

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

Реальный adoption curve: сложность первого впечатления компенсируется ценностью, которую ПриоПлан приносит после привыкания.

Платформенные команды: особый кейс приоритизации

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

ПриоПлан дал команде Авито главное: когда каждая команда видит, почему именно эта задача в топе спринта — 34 голоса и скор 21 — споры о приоритетах заканчиваются.

Собираете фич-реквесты от внутренних команд?

Без кредитной карты. Безлимитные пользователи. Без ограничений по времени.