Привет, Хабр!
В этой статье я расскажу об опыте выполнения функций CTO в EdTech стартапе, о моих выводах и об основных проблемах с которыми я столкнулся на этом пути за 4 года.
Важный дисклеймер - это не история успешного успеха. Мы не достигли уровня окупаемости и, тем более, прибыли. Ниже я подробно расскажу почему и как так получилось, на что и в какой момент я не обратил внимания и чего это в итоге стоило.
Думаю, наиболее полезной эта статья будет для стартапов на ранних стадиях, для фаундеров и для CTO с небольшим опытом.
А ещё, это моя первая публикация тут, так что буду рад обратной связи!
Про автора
Меня зовут Женя и у меня большой технический бэкграунд в крупных компаниях в области веб-разработки, а в стартапах на разных ролях я уже более 5 лет. Мне невероятно нравится с помощью технологий и людей эффективно реализовывать крутые проекты, помогать бизнесу достигать своих целей и приносить пользу людям.
Что за стартап?
Стартап о котором пойдёт речь - это ZNZN.RU - образовательная платформа для студентов с фокусом на подготовку к экзаменам.
Идея проекта родилась у моего партнёра и вместе мы её развивали. Думаю, что эта идея появилась потому что во времена, когда мы были студентами, у существующих онлайн ресурсов были следующие минусы:
Было очень тяжело найти конкретный ответ на конкретный вопрос. В процессе подготовки приходилось перелопачивать десятки разных сайтов и пытаться собрать информацию по кусочкам.
Низкое качество контента платформы, которому нельзя было доверять.
Интерфейсы двухтысячных, которыми было очень тяжело пользоваться. Многие ресурсы были вообще не оптимизированы для просмотра на мобильных устройствах.
Вдобавок к этому, мы видели потенциал подобной платформы для широкого распространения в высшем образовании в виде инструмента для преподавателей и студентов.
В целом, мы хотели сделать удобный инструмент для подготовки к экзаменам, где будет качественный материал, полезный функционал и продуманный интерфейс. А так же мы хотели как-то на этом заработать.
Стадия моего подключения
Идея проекта родилась у моего партнёра, в середине 2020 года. Тогда мы впервые с ним её обсудили. У меня даже сохранились вот такие записи.
Обсудили ключевые вещи и зафиксировали их. Так же продумали несколько возможных вариантов траектории проекта после первой версии. Там же придумали название. Было много вариантов, но в итоге выбрали такое - ZNZN. Созвучно со “знания”, необычно на вид и на слух, плюс домен был свободен и стоил немного. Решили, что это нам подходит. В конце концов, существует же Яндекс, Гугл и Додо Пицца.
С конца зимы 2021 года мы начали готовиться к запуску. У нас была стартовая команда из четырёх очень заинтересованных в проекте людей - мой партнёр, лид дизайна, креативщик и я. В конце весны 2021 года мы запустили дизайн, чуть позже разработку и работу с контентом. Тогда же я начал искать первых людей в команду разработки.
Я заходил туда как соучредитель/CTO полностью ответственный за техническую сторону проекта и за команду разработки, которую предстояло построить.
Партнёр отвечал за организацию других команд - дизайн, контент, маркетинг, работа с университетами. А так же за деньги, за внешние коммуникации и маркетинг.
Жизненный цикл проекта
Несмотря на то, что мы видели много потенциальных векторов развития проекта, мы понимали, что в начале нужно сосредоточиться на основном функционале и заложить фундамент под будущее расширение. Думаю, это было правильное решение. Это позволило не тратя много ресурсов проверить основные гипотезы, а потом уже уводить проект в определенную сторону.
Так же на протяжении всего этого проекта формировалась команда разработки, эволюционировали процессы и подходы. Я не буду вдаваться в детали работы с людьми в этой статье, чтобы её не растягивать, а сосредоточиться на проекте. Если интересно узнать про построение команды разработки с нуля и про то, какие ошибки я допустил - то дайте пожалуйста мне об этом знать в комментариях и я с удовольствием про это расскажу в отдельной статье.
Разработка основного функционала
Начали мы именно с этого.
Основным функционалом мы считали две вещи:
возможность из админки загружать и форматировать вопросы и ответы к ним
возможность для пользователя удобно с ними взаимодействовать
Сперва мы сделали админку и крутой WYSIWYG редактор. Это было нужно для того, чтобы можно было отдать её команде контента, чтобы они могли начать загружать контент на платформу.
После мы реализовали пользовательский интерфейс с базовыми возможностями поиска ответов на платформе и их просмотра.
Базовый функционал мы сделали за 3 месяца, и проект вышел в релиз. Тогда у нас на платформе было 4 предмета и 694 вопроса с ответами.
Контент - наше всё
После релиза первой версии в течение нескольких месяцев он активно грузился на платформу нашей контентной командой. Забегая вперёд, скажу что контент грузился и в будущем после выхода второй версии.
Для работы с контентом они разработали отдельную методологию, чтобы обеспечивать его качество.
Во время работы с админкой они постепенно формулировали набор возможностей, который им там нужен. Эти запросы во многом легли в основу дальнейших доработок по админке в следующих версиях.
Второй цикл разработки
Платформа какое-то время работала, у нас были пользователи, а мы внимательно за ними следили и анализировали обратную связь.
В частности мы поняли, что есть запрос на формулы, картинки и таблицы в вопросах. Поняли, что разделения вопросов по предметам недостаточно. А так же во второй версии мы хотели реализовать личный кабинет, функционал конспектов и флэш-карт, чтобы пользователи могли не только потреблять контент на нашей платформе, но и работать с ним в удобных инструментах: создавать конспекты, флэш-карты, делиться ими с другими.
Это легло в основу второй версии.
Тут я хотел бы заострить внимание на функционале конспектов и функционале флэш-карт.
Конспекты
Базовая гипотеза - студентам нужен инструмент, чтобы вести онлайн конспекты прямо на занятиях. При этом он может быть более специфичным чем Google Doc, и ориентироваться на высшее образование с продуманным элементом социального взаимодействия.
Спойлер
Оказалось, что не нужен. Сейчас я даже понимаю почему, но тогда особого скепсиса не было и мы делали этот функционал с большим энтузиазмом.
В этом тридцатисекундном видео можно понять суть конспектов на нашей платформе.
Реализация конспектов заняла у нас довольно много ресурсов, а оказалось, что этот функционал не нужен пользователям. Классика.
Если бы я снова оказался в той ситуации, когда принималось решение делать его или нет, то я бы принимал какое-то решение только после анализа данных, которые у нас есть. Данные можно получить разными способами: custdev, анализ рыночных трендов, анализ конкурентной среды или обратная связь от пользователей. Но решения в стартапах почти всегда должны быть data driven. Это то, что я вынес из этой ситуации.
Флэш-карты
Тут всё проще - это просто двухсторонние карточки для запоминания. Они помогают выстраивать ассоциации.
В отличие от конспектов функционал флэш-карт разрабатывался по остаточному принципу, как дополнительный. На него мы не особо делали ставку, хотя понимали, что он может решить какие-то задачи пользователей.
Его реализация заняла в разы меньше ресурсов, чем функционал конспектов.
Вот ещё более короткое видео про флэш-карты:
И что же мы увидели спустя время?
Что ими пользуются примерно в 15-20 раз больше и чаще.
Оказалось, что простая возможность делать флэш-карты и составлять ассоциации для запоминания гораздо нужнее нашим пользователем, чем сложные и глубокие конспекты с большим количеством функционала.
Примерно с этим функционалом в конце 2022 года вышла в релиз вторая версия.
Третья версия и OpenAI
Здесь мы добавили разделение контента не только по предметам, но и по направлениям и разделам - это существенно улучшило навигацию для пользователей внутри сайта, мы это заметили в аналитике.
А ещё мы добавили крутые интеграции с OpenAI в личном кабинете и на странице ответа на вопрос. Вот пример того, как эта интеграция реализована на контентной странице:
Мне кажется эти интеграции вышли довольно полезными и уместными. Но, стоит признать, мы не увидели большой популярности этих инструментов среди пользователей.
Добавлю, что в этой статье я упомянул только самые ключевые и интересные фичи проекта. Помимо них было реализовано ещё уйма других вещей, доработок и технических оптимизаций.
Так же на протяжении всей разработки проекта мы уделяли большое внимание SEO и время от времени возвращались к SEO оптимизациям - это было нужно поскольку контентные страницы постепенно изменялись, на них добавлялись какие-то новые элементы и логика, и нужно было делать так, чтобы новые вещи не давали негативного влияния на производительность платформы. Это у нас получилось хорошо.
Что с проектом сейчас?
Сейчас это образовательная платформа для студентов, которая содержит почти 20.000 вопросов по 140 академическим дисциплинам. А ещё у нас порядка 10.000 зарегистрированных на платформе пользователей и несколько тысяч пользователей в сутки.
Активная разработка по проекту завершена, разрабатывать что-то новое там в ближайшее время мы не планируем. Посмотрим, как в будущем будут обстоять дела с трафиком.
Ну а пока проект приносит пользу людям и не приносит денег нам :) Об этом подробнее в следующей секции.
Монетизация
Самая важная часть любого стартапа. Сейчас я это понимаю. К сожалению, когда мы начинали этот проект наше представление было очень наивным. Мы продумали несколько векторов монетизации, однако мы даже не планировали их реализовывать в первых версиях. Думали, что потом настанет идеальный момент и потом мы их сделаем, добавим какие-то киллер фичи и получим много денег. А вначале мы просто думали о развитии функционала, об удобстве интерфейса, о каких-то прикольных фишечках.
Думаю, это было ошибкой. Если бы мы с самого начала ориентировались на бизнес результат, то и позиционирование платформы могло бы быть другим, и целевая аудитория, и функционал.
Дважды нам удалось привлечь средства на реализацию этого проекта на конкурсной основе - однако, даже тогда мы всё равно не направили их в сторону коммерциализации, а продолжали заниматься развитием функционала, который мы считали нужным.
По итогу получилось так, что проект является в большей степени социально-благотворительным, нежели коммерческим. Собственно, что посеяли - то и выросло. Всё логично.
Касаемо идей по монетизации, которые у нас были, то эти две были основными:
Система таргетной рекламы с высокой конверсией в зависимости от интереса пользователя.
Базовая гипотеза была такая - за счёт того, что мы можем очень хорошо понимать интересы пользователя, мы сможем показать ему очень релевантные рекламные предложения. К примеру, если мы видим человека, который изучает вопросы по программированию, мы можем показать ему рекламный материал партнёра, к примеру Яндекс.Практикума или других потенциально заинтересованных в такой аудитории компаний. Были предварительные договорённости с несколькими организациями в Беларуси.
По нашим оценкам разрабатывать такую систему с взаимодействием с заинтересованными организациями имело смысл при трафике примерно от 10.000 человек в сутки. До этого показателя мы не добрались, потому что слишком сильно понадеялись на органический трафик, который мы получим из поиска. В реальности наши лучшие показатели это 4.000 человек в сутки в конце 2023 года. Потом вышло обновление поисковой машины Google, и показатели просели в 2-3 раза. На текущий момент более 60% трафика мы получаем из Яндекса.
Возможность для преподавателей обучать студентов на нашей платформе и зарабатывать на этом.
Что-то вроде italki, только с фокусом на высшее образование. До реализации мы так же не дошли, хотя в какой-то момент проект получал фичи, которые двигали его в этом направлении. К примеру, мы сделали некоторый функционал для преподавателей, который позволяет им подготавливать материалы, а потом удобно делиться ими со студентами. У нас даже получилось добиться того, чтобы этим функционалом действительно пользовались преподаватели на занятиях в некоторых университетах Беларуси.
Мне кажется, эти идеи были довольно неплохими и имели потенциал, однако мы их не реализовали, потому что из-за неопытности не уделяли должного внимания коммерциализации проекта.
Три главных проблемы и вывода
Наши ожидания относительно объёма трафика не реализовались.
И это действительно является огромной проблемой для этого проекта, потому что все планы по монетизации базировались на том, что будет большой трафик, сотни тысяч пользователей в месяц. Мы ожидали, что мы хорошо сделаем SEO оптимизацию, получим много трафика, а потом придумаем как на этом заработать. Мы смотрели на конкурентов, видели их цифры трафика и думали, что если сделать удобный для пользователя и технически качественный сайт, то трафик придёт сам собой.
Как бы не так, сказал нам Google и Яндекс.
Первый год принёс нам 10.000 посетителей или несколько десятков посетителей в сутки.
Второй год - 156.000 посетителей. Тут в среднем было несколько сотен в сутки, с пиками до 1.800 в сутки в конце весенней сессии.
Третий год - 391.000 посетителей. Причём тут стоит сказать, что начало года выдалось очень удачным, наблюдался почти линейный рост трафика и почти 4.000 пользователей в сутки в конце декабря 2023 года, однако всё закончилось после Нового Года 2024 и обновления поисковой машины Google. Трафика оттуда упал в 3 раза и вернулся на уровень второго года.
Это стало серьёзным ударом, поскольку мы уже думали о том, как к началу лета приблизимся к желаемому уровню уникальных пользователей в сутки, реализуем механизм таргетной рекламы с высокой конверсией и начнём зарабатывать.
Почему так получилось?
Сложно сказать наверняка. Моя лучшая теория сейчас - повлияло то, что у нас на сайте относительно много неоригинального контента. Мы пытались исправить эту ситуацию, переписывали некоторый контент, проводили замеры, оценивали результаты. Нам удалось немного улучшить ситуацию в какой-то момент, но это далеко не то, на что мы рассчитывали.
Так же стоит сказать, что всё время жизни проекта мы занимались технической SEO оптимизацией сайта. В какой-то момент удалось довести техническую производительность контентных страниц сайта до уровня Wikipedia, чтобы максимально нравится поисковикам. Мы реализовали очень много разных вещей для SEO по лучшим рекомендациям Google и опытных SEOшников, которых мы привлекали для консультаций.
В целом, для меня это было очень неожиданно. Я был уверен, что имея хорошую SEO производительность сайта и удобный для пользователя интерфейс мы обречены на успех в поисковых системах. Оказалось, что этого недостаточно.
Возможно, мы не уделили достаточно внимания внешнему продвижению, а сильно рассчитывали на органический рост.
Что я бы сделал сейчас по-другому?
Перед стартом реализации проекта, который рассчитывает на большой трафик я бы выяснил каким образом планируется этого достигать. Я бы закладывал гораздо больший маркетинговый бюджет если это возможно, я бы думал о стратегии внешнего продвижения. Так же я бы с самого старта привлёк опытных SEO специалистов, чтобы они вместе с дизайнером могли помочь в построении правильной структуры сайта, чтобы не приходилось переделывать некоторые вещи уже после запуска проекта. Я бы точно не полагался на цифры конкурентов без понимания того, как и какой ценой они их достигли.
А возможно, я бы вообще поставил под сомнение реализацию такого проекта, который может быть успешен только если он понравится поисковым машинам. На поисковые машины нельзя полагаться, никто в конечном счёте не понимает как они работают и на этом нельзя строить бизнес-модель.
Честно сказать, такое чувство, что принципы работы поисковых машин - это эволюционирующий чёрный ящик и как будто никто до конца не понимает, что нужно делать, чтобы им нравится.
Отсутствие методологии процесса разработки во время работы над первыми версиями проекта.
Оценка задач не делалась, ни о каком планировании не было и речи. У нас было лишь примерное понимание того, что мы делаем за следующий промежуток времени, и зачастую он вообще не был ограничен. Мы вели какие-то карточки в Jira, но не более того.
Это приводило к тому, что мы постоянно задерживали сроки, постоянно было ощущение, что мы не успеваем, это разочаровывало моего партнёра да и меня тоже. И однажды наступил момент, когда стало понятно, что так больше продолжаться не может - на нас нельзя было положиться. Тогда в нашей команде разработки было 3 человека.
Именно этот момент стал переломным для меня и для нашей команды. Тогда я понял, что нам нужно нормально управлять процессом разработки, а до этого у меня не было этого понимания. Я жил в позиции разработчика и не задавался такими вопросами.
Я прошёл много курсов по Scrum, разобрался досконально и понял зачем он нужен и почему этот подход так популярен. Я понял как с помощью него можно решать проблемы, которые у нас есть. Я понял из-за чего они возникают. Это позволило мне самостоятельно внедрить полноценный Scrum в наш процесс разработки. После мне понадобилось время, чтобы обучить команду, объяснить зачем нам нужны эти церемонии и задать планку.
С октября 2022 года мы работаем используя Scrum. Мы сделали огромный прогресс с точки зрения качества разборов беклога, сессий планирования спринта, наших оценок. С тех пор мы никогда не подводили ничьих ожиданий, и всегда реализовывали то, на что подписывались всей командой.
Мы были увлечены нашим видением платформы, а не бизнес результатом.
И, конечно, нам было очень интересно. Однако, изначально мы хотели разработать коммерческий проект, а получился социально-благотворительный.
Я думаю, это произошло потому что мы мало опирались на обратную связь от реальности, часто принимали решения исходя из нашего видения и мало думали про коммерческую составляющую проекта.
Что я бы сейчас сделал по-другому?
Если есть цель - делать коммерческий проект, то я бы в первую очередь концентрировал внимание именно на этом. На бизнес-плане и на продуктовых фичах, которые позволят его реализовать. Я бы старался направлять проект в сторону того, чтобы его развитие определяли потребности пользователей. Я бы выстраивал процессы разработки именно вокруг этого, транслируя это понимание в команду.
Заключение
Я убеждён, что нужно делиться не только успешными историями. Потому что из успешной истории особо не сделаешь выводов. А вот из такой как у меня - вагон и маленькая тележка.
Надеюсь, что моя статья была полезной и смогла помочь вам. Возможно, она натолкнула вас на какие-то мысли.
В будущем я планирую рассказать о технической стороне этой платформы, а также о создании команды.
Если вас что-то заинтересует или появятся вопросы - буду рад ответить в комментариях. А если захочется пообщаться подробнее, то вот мой LinkedIn и Telegram.
Спасибо!