title image

«Это квинтэссенция идеи разработки, чистое творчество, из-за которого сотрудник выбрал программирование как профессию» - как Viber внедряет локальные идеи своих сотрудников в глобальный продукт

Недавно ведущее мировое приложение для общения Viber анонсировало новую функцию — «создать стикер». Опция представляет собой встроенный редактор стикеров, с помощью которого пользователи могут создавать паки со своими фотографиями, любимыми фразами и другими изображениями или надписями. Идея новой функции Viber, мировой платформы с миллиардной аудиторией и центрами разработки в нескольких странах, принадлежит белорусам — сотрудникам минского офиса. Bel.biz поговорил с командой создателей опции о том, как рождаются крутые идеи и что значит возможность влиять на конечный продукт в контексте мировой компании.

Марина Хомич, директор по персоналу минского офиса Viber

— С прошлого года мы проводим в Минске внутренние хакатоны. Их функция — дать возможность локальным сотрудникам повлиять на развитие «своего» продукта и предложить новые функции для международной аудитории Viber. Первый такой форум прошел еще прошлой осенью. Его результатом стало внедрение функции «опрос» в январе этого года. Второй хакатон мы провели в апреле. В нем приняло участие более 30 человек — это треть минского офиса Viber. После того, как мы организовали два этих мероприятия в Минске, топ-менеджмент компании принял решение провести третий, но уже глобальный хакатон, в Тель-Авиве.

Марина Хомич, фото: Viber

Почему компания Viber вообще проводит мероприятия такого плана? Кроме очевидной цели получить свежие и интересные идеи для усовершенствования платформы, такие форумы работают и на повышение корпоративного духа команды. Хакатоны — это квинтэссенция идеи разработки, чистое творчество, из-за которого каждый из сотрудников в свое время выбрал программирование как профессию. Для разработчиков это простой способ повлиять на продукт, они могут воплотить свою идею в приложении, которым пользуется более миллиарда человек. Для любой компании важно дать работникам почувствовать свою значимость, возможность реализовать свои лидерские качества и делать вещи, которые они сами хотели бы видеть в продукте. Сплочение команды — еще один важный эффект, который мы достигаем, ведь такие мероприятия помогают узнавать друг друга, сотрудничать с другими командами и подразделениями.

Сам хакатон проходит в три этапа. На первом мы предлагаем сотрудникам собрать свою команду, в рамках которой они будут реализовывать одну идею. Все проекты попадают в онлайн-голосование, с помощью которого наши сотрудники выбирают 15 лучших на их взгляд.

Следующий этап — уже оффлайн-защита. У каждой команды-автора идеи есть 2 минуты, чтобы рассказать о своей задумке и убедить за нее проголосовать. Всем сотрудникам-слушателям мы раздаем три сувенирные купюры по 100 долларов и предлагаем «инвестировать» их в понравившийся проект. Можно вкладывать в разные идеи или «пожертвовать» все 300 в один. Таким образом, путем «народного голосования» мы выбираем шесть проектов-финалистов. Они отправляются в разработку. Каждой команде мы выделяем переговорную комнату, где на протяжении 48 часов они воплощают свою задумку в жизнь.

Второй этап хакатона, фото: Viber

Третий этап — финальная презентация готовой функции. Некоторые команды снимали ролики, и это получалось интерактивно, весело и наглядно, другие же делали презентации с подробным объяснением функции. Но обязательное условие — разработка прототипа нового продукта.

Функция «создать стикер» стала безоговорочным лидером, за нее проголосовало более половины сотрудников.

Илья Селицкий — автор идеи функции, FDD Project manager

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

Илья Селицкий, фото: Viber

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

Презентация идей, фото: Viber

Максим Евменьков — лидер команды разработки

— На хакатон я хотел подать другую идею — различные реакции на сообщения (прим. — сейчас в Viber можно отреагировать только «лайком»). Идея мне нравилась, но с точки зрения разработки не вызывала интереса. Реализация этой функции мало чем отличается от других фич, которые я делал, — редактирование сообщений, создание опросов. Поэтому я передал свою идею другой команде, рассказал им как ее делать, а сам присоединился к команде по разработке «редактора стикеров». Было сложно, ведь мы не знали ни механизм реализации функции, ни кто нам нужен в команду.

Максим Евменьков, фото: Viber

В восемь вечера к нам в кабинет заходили ребята из других команд, которые уже закончили с разработкой своих фич, и просили показать, что у нас получилось. У нас же на тот момент не было вообще ничего. Пришлось собраться, организовать всех и заказать пиццу с сосисочными бортиками — это были три решающих фактора успеха. Челлендж был и моральным, и техническим. Так получилось, что первый день мы потратили не очень продуктивно — наметили план действий и перенесли свои рабочие компьютеры в одну переговорную. А вот на второй день нам пришлось сидеть над фичей до 4 часов утра.

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

Геннадий Ботян — Android-разработчик

— Как оказалось, в Viber безумное количество кода, который касается именно стикеров. Как только мы это осознали, стало понятно, что будет сложно подготовить код к внедрению кастомных стикеров и при этом никак не повлиять на клиентские паки. Это еще одна сложность, с которой мы столкнулись. Думаю, успех заключался в том, что мы в меньшей степени думали об исходе конкурса и победе, а в большей все же погрузились в эту атмосферу «‎стартапа».

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

Фото: Viber

Анатолий Сафонов — разработчик (функционал обрезки фото)

— Функция «‎создать стикер» в том виде, в котором она существует в Viber сейчас, немного отличается от реализованной нами на хакатоне. Так как на разработку у нас было ограниченное количество времени — реализация была достаточно грубая и примерная. Мы брали фотографию, брали модель, которая на TensorFlow Lite запускалась, и вырезали маску с помощью OpenCV. Изначально это действие занимало много времени, около 10 секунд, и даже на новых девайсах функция работала очень медленно. Сейчас же функция работает без OpenCV, мы делаем обрезку прямо на видеокарте на системе Android.

Анатолий Сафонов, фото: Viber

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

Иван Ширко — разработчик (имплементация функции в магазине стикеров)

— Я решил принять участие в хакатоне, так как это мой первый год работы в Viber и мне было интересно познакомиться с новыми людьми в экстремальных условиях. Теперь я знаю ребят из других команд, с которыми по работе почти не соприкасаемся. Но участие оказалось полезно не только в плане новых знакомств, но и в плане новых знаний. До этого я абсолютно не знал, как устроена внутренняя часть магазина стикеров. Чтобы понять, как заставить работать нашу фичу, пришлось досконально разобраться и в этом тоже.

У нашей команды были опасения, что идею с кастомными стикерами не пропустят, но, как оказалось, зря. Эффект от повышенного внимания к этой функции сработал, и опция была внедрена в приложение. Сейчас пользователи создали уже более миллиона стикерпаков.

Презентация проектов, фото: Viber

Максим Дубинин — специалист по тестированию, готовил промо-ролик функции

— Если говорить о том, как работает функция совсем простым языком, то пользователь открывает экран создания стикеров, добавляет туда фотографии/текст и создает нужное ему количество стикеров, после этого дает имя своему паку. Viber формирует этот набор в архив и отправляет его на сервер, который размещает стикерпак в маркете. Стикеры можно сделать «общими» — любой пользователь Viber сможет загрузить его. Или «личными» — только сам пользователь сможет видеть все стикеры в нём, отправлять и скачивать их.

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

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

Команда-разработчик функции «создать стикер», фото: Viber

Юрий Ярошевич — разработчик нейросети для обрезки фотографий, которая использовалась для функции 

— Я не принимал участие непосредственно в хакатоне, но нейросеть для обработки фото, на которой функция работает, была разработана мной. Нейросеть была написана на Python, так как язык удобный, компактный и там легко экспериментировать. Сообщества, которые занимаются машинным обучением в исследовательских целях, используют именно Python, ведь там удобные библиотеки для работы с математикой, и он позволяет эффективно обучать нейронные сети.

Упрощенно говоря, обучение нейронной сети для обрезки фото происходило в несколько этапов. Сначала разработчики готовят обучающую выборку — набор картинок с информацией по ним. Потом все это изучает нейросеть и пытается предугадать или предсказать, где на этой картинке человек, а где бэкграунд. И эти действия повторяются большое количество раз. Например, для обучения нашей нейронной сети у меня было загружено более 10 000 картинок и предположительно каждую картинку сеть видела по 100 раз. Это заняло неделю непрерывного обучения — исследование сетью обучающей выборки.

О функции «‎создать стикер»

Viber представил новую функцию «Создать стикер» в сентябре 2019 года. С ее помощью пользователи могут придумывать и добавлять собственные персонализированные стикерпаки для выражения любых эмоций без слов.

Чтобы создать собственный стикерпак, пользователю необходимо:

  • Открыть редактор на вкладке «Магазин стикеров»
  • Войти в меню стикеров в любом чате или
  • Сделать фотографию через приложение для ее мгновенного редактирования.

Один пак может включать до 24 отдельных изображений.

 

Фото: Viber

 

Интересно? Поделитесь с друзьями!
  •  
  •  
  •  
  •  
  •  
  •  

Похожие статьи

Imaguru Video

Популярное