Каждое демо для меня как соревнование, в котором нужно показать максимум на что способна наша команда, чтобы победить. Победа для нас - это работающие выкаченные фичи в срок и довольный заказчик.
А что предшествует любому соревнованию в спорте? Конечно же упорные тренировки. Для нас IT-ников это спринты. Подготовка к каждому соревнованию демо начинается с первого дня тренировок спринта. Вот такие спортивные метафоры у нас сегодня 😁.
Что ж давайте поговорим про достижение победы на демо. По моему мнению есть несколько факторов, которые на это влияют.
Команда
Успех в любом соревновании зависит от подготовки ваших спортсменов, а в демо успех зависит от подготовки вашей команды.
Одной из важнейших задач тимлида является знать всё о всех. Кто женат, кто разведён, у кого сколько детей, кто кошатник, а кто собачник, кто какую музыку любит и т.д. Это нужно, чтобы хорошо чувствовать команду, понимать общее настроение в команде и вовремя предотвращать кризисы. Если ваши спортсмены недоедают, мало спят, в семье у них разруха - сомневаюсь, что вы выиграете чемпионат с такими бойцами.
Важно не сжечь свою команду на спринте. В противном случае, команда в своём первичном составе может просто не дожить до финального чемпионата запуска продукта.
Планирование
Планируйте спринты так, чтобы они были по силам вашей команде и их было реально завершить за пару дней до демо. Тогда у вас будет время, чтобы исправить косяки. И ваш заказчик увидит работающий результат вашего спринта, а не обрубки интерфейсов и запросов с багами.
Люди из бизнеса говорят на языке цифр и фактов. Для них нет понимания «это не работает, потому что мы всего одну константу в Gitlab не указали». Оно либо работает, либо нет. Поэтому лучше показать 1-2 работающих фич, чем 5 недоделанных с багами.
Контроль багов
Я стараюсь контролировать чтобы у нас к демо всё работало и не отвалился функционал, который мы сделали за прошлый спринт. Для этого есть тесты. Они прогоняются автоматически при выполнении пайплайнов в CI/CD. А также я запускаю их ежедневно вручную. Так я быстро ловлю момент, когда у нас что-то отвалилось и мы успеваем всё пофиксить до дня демо. Ну и системы лога ошибок никто не отменял. Мы используем DataDog. А ещё мне очень нравится Sentry.
Пожалуй, это всё что я хотел рассказать по данной теме. Напиши в комментариях, каких принципов придерживаетесь вы в своей команде, чтобы не заваливать демо.
Подписывайся на мой телеграм, чтобы не пропускать новые статьи: