(function(m,e,t,r,i,k,a){m[i]=m[i]||function(){(m[i].a=m[i].a||[]).push(arguments)}; m[i].l=1*new Date(); for (var j = 0; j < document.scripts.length; j++) {if (document.scripts[j].src === r) { return; }} k=e.createElement(t),a=e.getElementsByTagName(t)[0],k.async=1,k.src=r,a.parentNode.insertBefore(k,a)}) (window, document, "script", "https://mc.yandex.ru/metrika/tag.js", "ym"); ym(93807279, "init", { defer: true, clickmap:true, trackLinks:true, accurateTrackBounce:true }); ym(93807279, 'hit', window.location.href);

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

Привет, это небольшая история о том, как продуктовая команда 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. Писать письма и вопросы можно на [email protected].

0
160 комментариев
Написать комментарий...
Sasha Lander

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

Ответить
Развернуть ветку
Михаил Анюков

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

Ответить
Развернуть ветку
Sasha Lander

Амазон тоже начинался с маленькой книжной лавки онлайн.
Я верю что и у вашего проекта с шариком из ткани большое будущее!
Я например сегодня вообще ничего не создал.
Кроме этого комента :(

Ответить
Развернуть ветку
Ярослав Фролов

Амазон тоже начинался с маленькой книжной лавки онлайн.
Я верю что и у вашего коммента большое будущее!

Ответить
Развернуть ветку
Vlad

Амазон начинался с беспроцентной суды родствеников Базосу. Он до сих пор не может внятно пояснить кто внес 300 000 уе первых инвестиций

Ответить
Развернуть ветку
Wall Street Shadow

Да вот же давно всё объяснил: работал, а потом и возглавил хедж-фонд в Нью-Йорке, который шортил всё подряд и считался №1 среди хедж-фондов на Уолл-Стрит.
+ вот статейка хороша про "успехи" Амазона

Ответить
Развернуть ветку
Sasha Lander

Это юмор такой :)
Понятно что Амазон начинался с могза, опыта и связей Безоса.
Хотя по факту - Амазон таки да начинался с простенького онлайн магазинчика.

Ответить
Развернуть ветку
К М

Да не, не юмор. Человек там все на серьезных щах все втирает

Ответить
Развернуть ветку
К М

1. Человек работал в банке, были кое-какие накопления. 2. Родители жены дали в долг деньги (ну как в долг, в обмен на долю)

Ответить
Развернуть ветку
Product Management & AI

не банк, а хедж-фонд

Ответить
Развернуть ветку
Фаиз Мангутов

Житель австралийского города Перт Грэм Баркер собрал крупнейшую в мире коллекцию пуха из собственного пупка, пишет The Daily Telegraph.
.
На собирание свалявшихся фрагментов ткани австралийцу понадобилось 26 лет. В трех банках, в которых разместилась коллекция, собрано 22,1 грамма пупочного пуха. Это необычное достижение 45-летнего библиотекаря было официально зафиксировано Книгой рекордов Гиннесса.
.
По словам библиотекаря, он продал банки с пухом одному из местных музеев. Баркер не сообщил, какую сумму музей предложил ему за коллекцию, однако отметил, что результаты трения живота о ткань были оценены по достоинству.

Ответить
Развернуть ветку
Egor Krasnov

Плюсик авансом поставил, но

Ответить
Развернуть ветку
alien i

Извлек из пупочка? Ставлю плюс.

Ответить
Развернуть ветку
Max Chirin
Ответить
Развернуть ветку
greg chudnoff
Ответить
Развернуть ветку
Valentin Dombrovsky

Молодец! Продолжай в том же духе, не останавливайся на достигнутом!

Ответить
Развернуть ветку
George Weiller
шарик из ткани

из пупка?)

Ответить
Развернуть ветку
157 комментариев
Раскрывать всегда