Частенько, в начале года, я сажусь и обдумываю — в каких направлениях мне двигаться в предстоящем году. Бывает, из этого вырисовываются конкретные цели. В 2023 году одной из таких целей стало собрать команду, забрейнштормить и запустить вместе проект, набрать 100 пользователей.
Задача для меня амбициозная, так как опыта в управлении у меня мало; и важная, потому что нарастало желание делать что-то своё, но не в одиночку, а командно, и не вхолостую, а с какими-нибудь, хотя бы, минимальными результатами.
Я подошёл к этому серьёзно, но у меня не получилось.
Этим постом я хочу прорефлексировать весь путь, почему не вышло, что сработало и что помешало.
С чего я начал: подготовка и создание плана
Не имея представления о том как собрать команду, как ей управлять и чем мотивировать ребят без бюджета, я пошёл к своему личному помощнику — chatGPT.
Долго советовался с ним, подходя с разных сторон, просил побыть коачем, СТО стартапа, ПМом, узнавал про лучшие практики и так далее.
В конечном итоге было зафиксировано несколько решений:
- Нужна минимально жизнеспособная команда, но достаточно разнообразная, чтобы смотреть на проблемы с разных сторон.
- Искать людей, в первую очередь, в собственном нетворке, во вторую — в тематических чатах и форумах, среди ребят, которые, также, хотят что-то поделать совместно, ради опыта или продукта.
- Мотиватором и движущей силой должны быть: их собственный интерес к созданию продуктов, желание научиться придумывать и запускать проекты или интерес к набитию руки на технологиях или практиках, а так же, возможность научиться работать в команде.
- Самое важное от меня — создавать и поддерживать активную атмосферу в команде, чётко подсвечивать дальнейшие шаги и быть движущей силой этого паровоза.
- Важен не продукт и даже не продуктЫ, а научиться брейнштормить идеи, анализировать рынок, быстро создавать прототипы и проверять гипотезы. Важно выстроить простой и эффективный итеративный флоу: идеи → идея → анализ → прототип → анализ → вывод → доработка прототипа или переход к следующему витку цикла.
Набор команды
Довольно быстро удалось собрать нескольких ребят. Некоторые из тех с кем я уже работал над проектами вместе, другие из уже имеющегося круга общения, а остальные с форумов и чатиков (ищущие возможность поработать над чем угодно, или чем то конкретным, вместе).
Вот какая команда получилась:
- Маркетолог/рекламщик
- iOS разработчик
- Дизайнер
- Бэкендер
- Бэкендер + Flutter
- Я, как мобильный разработчик и лидер
Ещё несколько приглашённых ребят заинтересовавшись подключились, но, довольно быстро поняли, что не смогут уделять время, и покинули нас, в самом начале.
Я был воодушевлен — получилась разносторонняя команда, все выглядели очень замотивированными!
Первые шаги. Знакомство
Первое что я сделал — создал чатик, представился, рассказал про свою цель, про ценности которые разделяю и дальнейшую стратегию. Попросил всех рассказать о себе, своих целях и ценностях, поставил мягкий дедлайн в неделю.
Ошибка #1: Слишком растянутое знакомство. Нужно было сокращать эту стадию, чтобы чатик у ребят не терялся и не забывался.
Некоторые отписали сразу, другие под конец недели, но пара человек вообще забыла и представились только после доп. напоминания.
Ошибка #2: Мало фоллоу-апов от меня. Нужно было активнее пинговать ребят, давать понять что от них ожидается вовлеченность.
По ценностям и целям во многом произошёл мэтч, мы все хотели примерно одного и того же, за исключением одного человека, который был заинтересован делать именно конкретный проект — свою давнюю идею.
Стадия 1. Брейншторм идей
С самого начала, я сделал отдельный чатик для всех-всех любых-любых идей, чтобы каждый выписал туда всё что ему кажется интересным заранее. Многие отписались, я тоже выложил свои.
Далее, я сделал опрос для уточнения удобного времени по первому созвону. Мы нашли подходящий большинству день и промежуток времени, запланировали митинг для брейншторма идей. К сожалению не все проголосовали и не все смогли подключиться.
Ошибка #3: Недостаточно форсировал присутствие на ключевом первом созвоне. Нужно было ещё ярче подсвечивать важность.
Техники брейншторма и план на звонок я готовил с ChatGPT.
Основные принципы на звонок:
- в конце иметь, как минимум, по одной идее от каждого.
- главное количество идей, а не качество.
- не критикуем, а только набрасываем варианты.
Основная цель — заполучить максимально обширный список идей.
Использовали инструменты: Miro, Google Meet.
Результат: Появился сформулированный и понятный список, каждый участник предложил по несколько разных идей.
Коррекция зрения. Я выпал на несколько недель
Ошибка #4: Надолго выпал в середине процесса. Я не мог предусмотреть этого, так как решение про коррекцию было спонтанным, но я мог бы приложить больше усилий, чтобы давать промежуточную инфу о своём возвращении.
Ошибка #5: Не делегировал дальнейшие действия на время отсутствия. Вполне можно было назначить ответственного и провести следующую стадию без меня.
За время моего отсутствия в чате абсолютно ничего не происходило, предполагаю, что многие участники вообще забыли про нашу команду 🙂
Стадия 2. Выбор идей для проработки
Когда я вернулся, сразу выписал все идеи из Miro доски и запустил голосовалку.
Критерии: голосуем за то, что интересно и кажется реалистичным.
Стадия голосования затянулась, некоторые вышли с команды в этот период. Видя это я сформулировал более конкретный дальнейший план и зафиксировал команду оставшихся активных ребят.
По результатам голосования я запланировал следующий созвон.
Результат: Получили короткий список идей (гораздо меньше предыдущего) над которыми будем работать дальше.
Стадия 3. Выбор топ идей
Запланировали следующий звонок, при этом были сложности найти подходящий всем промежуток времени, из-за этого не все смогли подключиться. Чтобы как то скомпенсировать это, я запросил доп. фидбек в чате и дал время на подумать.
Считаю, что тут снова ошибка, что недостаточно подсвечивал важность.
Цель: получить приоритезированный список идей.
Результат:
Тир А (думаем делать в первую очередь)
- Умный диктофон который поправляет и улучшает речь попутно конвертируя ее в текст, для быстрого сохранения в виде заметки.
Тир Б (супер интересно но сложнее в реализации)
- Доска-тиндер для менторов и джунов
- Доска-тиндер инди проектов / совместного творчества
Тир С (менее интересно, легко в реализации)
- Финансовый трекер со сторисами и трендами
- Личный дневник с событиями вместо обычных страниц и визуальным таймлайном
Ошибка #6: Слишком большие промежутки между активными действиями. Долго планировали созвон, долго собирал фидбек от тех кто отсутствовал.
Стадия 4. Выбор конкретной идеи и поверхностный анализ
Цели: из списка выбрать один проект на дальнейшую проработку и потенциально — реализацию. Поверхностно проанализировать рынок. Договориться о шагах реализации.
Снова созвон, снова не у всех получилось подключиться, снова растянутые промежутки между действиями и затишья в чатике.
Результат:
Провели анализ топ идей, исключили некоторые по причинам: “уже есть на рынке и не сможем сделать лучше”, “нереализуемо”. Определились с лучшим кандидатом. Запланировали дальнейшие шаги.
✅ Умный диктофон — берём в работу
Следующие шаги:
- Запустить опрос «Расскажите как вы используете диктофон и чего не хватает»
- Встать в очередь за gpt-api.
- Провести интервью с подходящими респондентами если они будут
Стадия 5. Опросы и интервью, ресерч
Запустили опросы в чатиках и в вастрик клубе, получили некоторое количество фидбека.
Забавно, что опрос на вастрике отклонили модераторы, по причине “Не хватает рисёрча”. СhatGPT за пару минут решил эту проблему 😁
Забыли про интервью! Сейчас не понимаю как так вышло, но про него точно забыли. Вижу по чату, что не назначили ответственного.
Ошибка #7: Не назначил ответственного за важный шаг.
Также мы провели ресерч конкурентов и изучили возможности openai api.
Цель: собрать недостающую информацию, принять решение о жизнеспособности и реализуемости проекта.
Результат: Информации достаточно, сформированы дальнейшие шаги по реализации, определены ответственные.
Стадия 6. Реализация
Я дал зелёный свет на реализацию прототипа. Подготовил примерный и грубейший макет того как оно может выглядеть, попросил дизайнера нарисовать UI.
В то же время, разбил MVP на крупные задачи, договорился с iOS разработчиком кто какие задачи будет делать.
Цель: реализовать минимальный прототип.
Начали работу. Я, в основном, занимался интеграцией gpt, а второй разработчик делал UI и работу с записью аудио. Дизайнер должен был заниматься макетом, а маркетолог/аналитик разрабатывать план монетизации и продвижения.
Примерно тут всё и встало 🙂
Мы сделали прототип, но дизайнер с маркетологом отвалились: у них не хватало времени на проект.
При этом прототип работал плохо, так как мы использовали gpt3.5 и не смогли достаточно настроить промпт, бывали баги. Хотя я перепробовал множество вариантов и комбинаций, даже настраивал промпт с отдельным gpt инстансом.
Тем не менее, мы выпустили прототип своими силами.
Результат: прототип запущен. У нас даже купили одну подписку!
Стадия 7. Тестирование на первых пользователях
Это стадия, до которой мы не дошли. Так как прототип работал плохо, мы продолжали тестировать своими силами и пытались доработать промпт.
Параллельно фиксили критичные баги на UI, которых было много, так как проект получился очень грубо-сколоченным.
Под конец, отчаявшись в gpt3.5 модели, я экспериментально подключил модель whisper (она нужна как раз для распознавания речи).
И вуаля, оно заработало как часы.
К сожалению, было слишком поздно, абсолютно все участники уже забыли про проект, а чат умер.
Ошибка #8: Не сравнили разные модели на более ранней стадии. Рассчитывали на то что gpt3.5 даст больше гибкости + он был более понятен в настройке. А на деле, Whisper гораздо лучше подходил нашему проекту.
Ставим точку
Вернувшись к проекту спустя время, я решил проверить app store на предмет подобных проектов. К этому моменту, там появились полноценные аналоги, с точной расшифровкой и множеством фич, которые у нас были только в планах. Пример.
Посмотрев на всё это, я закрыл проект окончательно.
Разбор ошибок и выводы
Ключевое, что я должен был делать, для повышения шансов на успешность операции — это заряжать ребят на работу, вовлекать их. Это мне и не удалось.
Я прикладывал усилия, старался создавать активность, откровенно говоря я делал всю работу по планированию и двигал команду. Но, недостаточно.
Я выпадал, один раз надолго, несколько раз на короткие сроки, вроде недели. В такие периоды чат умирал, работа вставала.
На лидерской роли нужно иметь больше свободного времени и собственной замотивированности. На первых этапах именно на активность лидера смотрят остальные.
Я взял слишком много ответственности на себя, но из-за другим досталось слишком мало и они тоже пропадали.
Не получилось построить команду, которая могла бы действовать без моей помощи.
Я боялся напоминать/назначать ответственных/указывать на важность присутствия на созвонах. Вроде лидер, но не плачу денег, поэтому, вроде как, и слушаться меня никто не должен.
Ребятам нужно чётко понимать, что делать и к какому сроку. Моя ответственность — дать им это понять. Страшно раздавать задачи/назначать ответственных, когда мы, вроде как, все равны, но нужно — в этом роль лидера.
Огонёк мотивации медленно затухал, люди один за другим отваливались.
Помимо этого, выстрелило в ногу одно неверное техническое решение — взяли неподходящую gpt модель.
Технические решения, которые влияют на пользовательский опыт и на ключевой функционал — самые важные для MVP. Правильно срезать углы там, где это не повлияет на пользователя, неправильно — там где может отвалиться что-то из основного.
Не совсем понял, зачем нужна была такая большая команда на такой небольшой проект? Зачем например 2 бэкендера и три мобильных разработчика
Разве это не было само по себе ошибкой? Такой же вопрос по топикам в чате, разве топики и большая команда не собирается по мере надобности?