Разрабатывай быстро, отгружай еще быстрее. Как мы вывозим два релиза в неделю и не сходим с ума

Раньше у разработчиков было много разных инструментов: бэклог задач в Google Docs, ТЗ в TEAMLY, макеты в Figma. Поэтому новые фичи отгружали дольше. Теперь выкатываем 2 обновления в год и каждые 2 недели отгружаем новый функционал. Расскажем, как.

Разрабатывай быстро, отгружай еще быстрее. Как мы вывозим два релиза в неделю и не сходим с ума

Привет! На связи Владимир Манеров, исполнительный директор и руководитель отдела разработки в TEAMLY. Сегодня расскажу, как мы создаем новые фичи продукта и почему решили объединить несколько инструментов «под одной крышей». Для этого поэтапно разберу жизненный цикл, который у нас проходит любая задача.

Как продуктовая команда работала раньше

Для разработки и проектирования мы использовали одновременно несколько инструментов. Бэклог и приоритизацию задач вели в Google Docs → Затем фичи, которые должны пойти в релиз, переносили в Smartsheet → Текущей работой управляли в трекере, технические задания писали в TEAMLY, а дизайн рисовали в Figma.

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

Что делаем сейчас на собственной платформе

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

Все это позволяет работать эффективнее и быстрее отгружать новый функционал.

Насколько решение оказалось полезным, показывают результаты:

  • 6 кросс-функциональных команд работают одновременно;
  • 2 стрима ведем параллельно: проектирование новых фич и разработка;

  • 2 раза в неделю проводим релизы и выпускаем новые функции на боевой сервер;

  • 2 фреймворка разработки используют команды: Scrum и Kanban;

  • 2 большие конференции проводим в течение года

Жизненный цикл задачи

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

Теперь расскажу подробнее, из каких этапов состоит работа над функционалом продукта и какие инструменты TEAMLY для этого используем. Весь процесс мы построили так, чтобы максимально сократить time to market — время от возникновения идеи фичи до выхода в продуктивную среду.

Этап 1. Планирование — составляем бэклог задач и дорожную карту.

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

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

Дорожная карта позволяет определить, насколько загружена команда, а также запланировать время выхода фичи в продуктив
Дорожная карта позволяет определить, насколько загружена команда, а также запланировать время выхода фичи в продуктив

Этап 2. Проектирование — разрабатываем концепцию, создаем дизайн, пишем техзадание.

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

Так выглядит цикл проектирования любой фичи в нашей продуктовой команде
Так выглядит цикл проектирования любой фичи в нашей продуктовой команде

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

Далее мы составляем техническое задание, делаем это также внутри статьи. В специальных разделах отмечаем особенности и ограничения в решении задачи, описываем логику рабочих процессов. Важный момент на данном этапе — самопроверка по чек-листу. Аналитик проверяет готовое техзадание по нескольким пунктам и при необходимости дополняет разделы статьи.

Техническое проектирование выполняем тоже внутри TEAMLY — нужные инструменты у нас есть. Например, с помощью блок-схем отрисовываем модели хранения информации и потоки данных.

Владимир Манеров
Исполнительный директор TEAMLY

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

Этап 3. Разработка — декомпозируем задачи и выполняем двухнедельные спринты.

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

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

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

Инструменты Teamly помогают руководителю контролировать работу. Например, в умных таблицах я группирую задачи по командам и подключаюсь, если у кого-то возникли сложности
Инструменты Teamly помогают руководителю контролировать работу. Например, в умных таблицах я группирую задачи по командам и подключаюсь, если у кого-то возникли сложности

Этап 4. Релиз и демо — тестируем функционал и отгружаем на боевой сервер.

Все наши шесть кросс-функциональных команд могут делать релиз одновременно. Ответственные тимлиды с помощью умных таблиц отбирают задачи, которые прошли полный цикл разработки. Затем готовят их к релизу, проводят через тестирование и выпускают в продуктивную среду.

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

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

Этап 5. Актуализация документации — рассказываем клиентам о новом функционале.

У нас есть внешняя база знаний, которая называется Teamly Academy. Здесь находятся текстовые и видеоинструкции для пользователей, а также записи обучающих вебинаров.

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

Пользователи могут узнать о новых фичах Teamly из журнала обновлений в Академии
Пользователи могут узнать о новых фичах Teamly из журнала обновлений в Академии

С помощью умных таблиц собираем обратную связь от клиентов. Инструмент позволяет создавать специальные формы опросов — по аналогии с Google-формами. Только теперь данные от пользователей сразу попадают в рабочее пространство команды, а не хранятся в разрозненных файлах.

Работа команды техподдержки

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

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

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

Что помогло нам оптимизировать процесс разработки

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

  • Создавайте MVP. Начинайте с минимально жизнеспособного продукта. Для этого дробите функционал на этапы и запускайте постепенно. Первая часть может быть совсем небольшой — главное, чтобы она выполняла основную бизнес-задачу.
  • Объедините инструменты. Соберите нужный функционал «под одной крышей» и ведите процессы в общем интерфейсе. Так команде будет удобно структурировать информацию, и работа пойдет быстрее и эффективнее.
  • Сохраняйте опыт. Обеспечьте единство знаний от идеи продукта до релиза. Сделайте так, чтобы информация в рабочем пространстве команды была взаимосвязана и легко находилась.
  • Тегируйте баги. Общие свойства помогут группировать баги и обнаруживать критичные, а также быстрее устранять ошибки.
  • Создайте внешнюю базу знаний. Чтобы не дублировать информацию в другие инструменты, используйте функцию разграничения прав доступа в TEAMLY.

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

4343
19 комментариев
3
Ответить

ну либо ретриверы либо коты, все смягчает ситуацию)

Ответить

Когда разрабы работают в собственном продукте, получается лучше всего

1
Ответить

Вот. Ты меня понимаешь ;)

1
Ответить
Автор

Вот это кстати очень в тему комментария выше - про то, что разрабам бухгалтерского ПО категорически нельзя в нём работать, иначе пользователям не хватит какого-то "нерва")

Ответить

если у вас `пространства`, то почему teamly 😬

Ответить
Автор

Ну у каждой команды должно всё равно быть личное пространство)

Ответить