Мы разработали корпоративную звонилку, но не выпустили её на рынок

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

Как родилась гипотеза

То, что стало повсеместным с появлением коронавируса — дистанционная коммуникация — для нас, как и для многих других ИТ-компаний, уже давно является обыденностью. 80% коллектива распределены по России и СНГ, то есть вся работа строится виртуально: Slack, Jira, корпоративный портал (на платформе, на которой мы запускаем медиа) и звонилки. Нас устраивали все инструменты, кроме тех, в которых мы проводили голосовые совещания.

Два года назад, когда о пандемии ещё даже не шло речи и рынок не был завален большим количеством разнообразных звонилок, мы стали искать для себя удобный инструмент нетекстовой коммуникации. Zoom никому в команде не нравился по самым разным причинам, а встроенные звонки в Slack, который мы используем как мессенджер, сильно тормозили. Чаще всего мы созванивались через лаконичную веб-версию Whereby.

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

В большинстве случаев мы общаемся с одними и теми же людьми на одни и те же темы.

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

Таким образом, например, бэкенд-разработчики будут находиться на связи, как по рации. Именно они собрали себе прототип на NodeJS, назвали его Heyka («приветик» по-польски):

Прототип всем понравился

Применение модели Discord в корпоративном общении с открытыми и закрытыми каналами пришлось по душе сразу всем отделам компании — мы начали использовать его на ежедневной основе уже в форме прототипа. Он заметно сократил время на организацию коммуникации в компании. Отдельно понравилось то, что разработчики могли подключаться к совещаниям дизайнеров или менеджеров, чтобы следить за эволюцией продукта (и наоборот), потому что недостаток горизонтальной коммуникации — главная проблема распределенных команд.

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

Как устроена Heyka

Взаимодействие с Heyka начинается с экрана логина. Мы задумывали его как расширение для корпоративных систем вроде Slack, MS Teams и прочих. Авторизация через них позволяет быстро пригласить коллег и даже продублировать каналы или чаты:

В уже рабочем виде компактное (это было для нас важно) приложение по своей структуре напоминает привычные, но уменьшенные в размере, инструменты коммуникации: Slack, Telegram, Discord. Слева находятся публичные и приватные каналы, список коллег для индивидуальной коммуникации:

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

После входа в канал, если активируется другое окно в системе, Heyka сворачивается до маленькой плашки с основными элементами управления:

Конечно, звонок можно быстро развернуть:

Например, чтобы посмотреть чей-то шеринг экрана.

Хотя смотреть можно и фоном, в компактном режиме. Видео переключается на того, кто говорит:

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

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

Конечно, никакая коммуникация невозможна без мобильных приложений.

Где начались ошибки

Начались они на стандартной и распространённой для неопытных команд развилке: выпустить продукт с минимальной функциональностью — каналы и голосовое общение — или допилить «ещё немного фишек, так ведь будет круче». Мы не успели заметить, как стали больше думать, что мы делаем, а не зачем. А видео? А шеринг экрана? А рисование? А приватные каналы? А текстовый чат?

Менеджерские ошибки повлекли за собой в том числе проблемы в коде. Мы традиционно являлись веб-разработчиками — это наша специализация. Поэтому не очень ясно, о чем мы думали, когда говорили друг другу «Heyka будет работать на всех платформах: Mac, Windows, iOS, Android, Web, Linux». Нам достаточно было сделать веб и мобильные приложения.

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

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

Что будет дальше

О самом эксперименте, конечно, не жалеем — было интересно, многому по ходу дела научились. Эксперименты проводить полезно, но ещё полезнее — вовремя их останавливать. Мы в этом году привлекли небольшие инвестиции, поэтому хотим сейчас сфокусироваться на развитии нашей основной платформы, а уже потом, с учётом ошибок, вернуться к теме корпоративной коммуникации, которая нам очень интересна. Пока что продолжаем пользоваться Heyka внутри компании — наши нужды она покрывает.

Для продукта сейчас видим несколько сценариев

  1. Продажа тем, кто умеет и хочет делать такие продукты.
  2. Поиск технических партнёров, с которыми мы сможем продолжить в качестве продуктовых менторов.
  3. Если ни то, ни другое не случится до нового года, то мы просто опубликуем на ProductHunt её исходный код — вдруг кому-то пригодятся наши наработки.

Какие технологии использовали

  • Фронтенд: Electron, Vue, Vuex, Stylus
  • Бэкенд: NodeJS, Hapi, Postgres, Redis
  • WebRTC: Janus (в этой части мы, похоже, с выбором ошиблись)

У невыпущенного продукта есть сайт, который мы не доделали — heyka.app. Писать письма и вопросы можно на heyka@cmtt.ru.

365365
155 комментариев

Всегда ставлю плюс людям которые СДЕЛАЛИ!
Независимо от результата - всегда лучше сделать, чем не сделать.

156

Интересная позиция. Я вчера сделал шарик из ткани, поставьте плюсик пожалуйста)

201

Комментарий недоступен

Интересно, есть тут люди, которые знают, что подобные выражения всего лишь способ утвердить своё мнение?)

работал я как-то в компании где нужно было дискорд постоянно в режиме «рации» держать, это такой ад когда ты сидишь в тишине в своих мыслях и кто-то начинает что-то говорить, кароч на дня 2 меня хватило)

34

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

2

латокен? :)

1