Валя, как это было… И еще раз о ботах с человеческим именем

36b4b807fdd27c2a6d50aa4419a98be9.png

Как-то раз в светлые головы разработчиков одного департамента ЛАНИТ закралась мысль: «А не провести ли нам хакатон?». Казалось бы, уже тысячу раз было. Но мы преследовали коварные корпоративные цели, а значит, отступать было некуда — позади HR.  

Во-первых, планировалось сделать хакатон межрегиональным, то бишь собрать команды со всех офисов и дать им тимбилдинг в полный рост. Во-вторых, реально запустить в жизнь продукт, который покажется рецензентам наиболее жизнеспособным и перспективным. А поскольку в то время только ленивый (или ярый пользователь WhatsApp) не писал собственных ботов, мы подумали: «Ок, так тому и быть. Пусть будет бот, но пусть он приносит много пользы».

В итоге было предложено аж пять почти готовых ботов для Telegram, в каждом из которых было свое рациональное зерно. Но, как водится, ни один из них не получил какого-либо бурного развития. И тогда за дело взялись два рыцаря джедая… 

Зачем нам еще один бот?  

«Так в чем же миссия, может быть, вы откроете?»

А. Смит

a0521d27fdfce3e3b79e5119117bb729.png

На первом этапе мы преследовали две цели.

  • Создать помощника для HR-специалистов, который мог бы отвечать на бесконечный поток однотипных вопросов, реагируя на ключевые слова. Например, на те самые вопросы: как оформить отпуск, когда приходит аванс, как получить корпоративные скидки и где вкусно поесть/поспать/далее по списку.

  • Получить песочницу для начинающих разработчиков, где они погружались бы в удивительный мир java, сразу вникая в принципы и правила корпоративной разработки, которые применяются на большинстве наших проектов (работа с тикетами в таск-трекере, код-ревью, мерж-реквесты, работа с БД, фронт-бек etc). 

Исходя из этого, на начальном этапе мы пришли к следующему:

  • была написана обвязка, основные классы, модули;

  • прикручена простая админка для наполнения базы знаний;  

  • придуман механизм аутентификации;

  • добавлена возможность получения обратной связи прямо из бота в тикеты таск-трекера. 

Под капотом наш бот выглядит примерно так:

7122d72741ee0a69fc5a019e8c0972b2.png

И понеслась

«Почему, мистер Андерсон, почему?

Во имя чего?

Что вы делаете?

Зачем, зачем встаете?

Зачем продолжаете драться?»

А. Смит

c494d1c31b2c9809d0af64234421d070.png

Реализовав базовые функции, мы выдохнули и стали изучать статистику. Оказалось, что ботом не пользуется почти никто. Пришлось оперативно собирать фокус-группу и устраивать мозговой штурм в лучших традициях фильмов про всех умных людей. Ведь так решаются все проблемы — от качества кода до наличия чая на корпоративной кухне, верно?

И вот что решили.

  • Пользователю нужно ненавязчиво предложить воспользоваться ботом.

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

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

Итак, к чему мы пришли в итоге?

Теперь для сотрудников:

  • создана рассылка актуальный мероприятий, которую, конечно, можно отключить;

  • добавлена функция опросов;

  • создан движок для проведения онлайн-квизов, викторин и полноценных квестов с поддержкой разделения на команды;

  • реализован процесс быстрого согласования отпусков, что весьма удобно для распределенной компании;

  • реализован функционал отправки больничных листов, что стало особенно актуально в связи с удаленным форматом работы;

  • добавлены функции рекомендации фильмов на базе рейтингов сторонних сервисов и книг как образовательно-технических, так и художественных;

  • анекдоты и мемы по запросу… фьють-ха;

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

  • загружены бланки заявлений на все случаи жизни;

  • появилась возможность добавления информации сотрудниками об изменении личных данных для специалистов отдела кадров;

  • реализована функция прямой линии с руководством департамента для решения наболевших вопросов;

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

  • информирование о корпоративных скидках, программах страхования;

  • расписание корпоративных маршруток до офиса и обратно;

  • помощь в бронировании переговорной комнаты;

  • напоминание о важном событии, в том числе ближайшем дне рождении коллеги;

  • предоставление любых справок и копии трудовой книжки по одному клику;

  • проверка списания времени в Project за период и выгрузка расхождения прямо на устройство;

  • помощь в поиске контактов коллеги: ссылки для связи, почты, ФИО, указания рабочего места. 

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

Коварно? А как же! Зато явка — 120%.

397e0c836841ab426a7c5f15f7102e4f.jpeg1435fff1752bdf8a141b6a4c72caa4ba.jpeg1853bffac68393d8fefcb23f3e9250b0.jpegdd8d8e80bc7bbdcdb1263956dbf16777.jpeg

Чуть подробнее

«Иллюзии, мистер Андерсон, причуды восприятия.

Хрупкие логические теории слабого человека,

который отчаянно пытается оправдать

свое существование — бесцельное и бессмысленное! <…>

Вам пора это увидеть, мистер Андерсон, увидеть и понять!»

А. Смит

e7e1024cd6b0eed81f7219a64dd92630.png

Например, разглядим под лупой подачу сотрудниками заявления на отпуск. Этот процесс было решено полностью перенести в бота — раньше он был реализован через тикеты в таск-трекере. 

Забегая вперед, там он и остался… Но пользователю больше нет необходимости отдельно заходить на сайт, что-то там колдовать с паролем и многочисленными типами заявок… 

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

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

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

Сколько зайцев мы убили  приголубили?  

«Вам пора это увидеть, мистер Андерсон, увидеть и понять!»

А. Смит

0a87cb3d9cd19c5b448c227310b9d94a.png

  • Сотруднику нет необходимости заходить на корпоративный портал, вся рабочая «вселенная» прямо у него в телефоне/Telegram.

  • Беспокойство самых важных и всегда занятых руководителей берет на себя бот — теперь не надо собираться с духом и дрожащими руками писать в личку напрямую.

  • Сотрудник всегда знает, кто задерживает согласование его отпуска, и может связаться с этим человеком. 

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

Что в планах

«Вы не можете победить, продолжать борьбу бессмысленно.

Почему, мистер Андерсон, почему вы упорствуете?»

А. Смит

0a91d9f602f63f82902e087c6639c912.png

Очень хочется переработать дизайн админки, сделать его более user-friendly, UX, material design, вот это вот все… 

Поработать над тормозами в некоторых запросах. 

Добавить боту такой функционал, как сбор документов при трудоустройстве, а также адаптацию/онбординг/хлеб-соль для нового сотрудника. 

Реализовать многомерную структуру департамента в связке с карточками сотрудников для формирования групп рассылок. 

Сделать робота более гибким в плане общения — не зря же у него человеческое имя. 

Так что двухгодичная история, которая началась с очередного хакатона, еще далеко не закончена. Бот, который изначально выполнял несколько базовых функций и в целом не особо отличался от других шаблонных существ, вырос в полноразмерного помощника. 

Ну, а после всех доработок он, наверное, вообще заговорит голосом и потребует у нас должность сотрудника HR и соответствующую зарплату. Но до этого мы пока не дошли, хотя все впереди.

© Habrahabr.ru