Всем привет! Меня зовут Максим, и я владелец продукта в ООО «КОРУС Консалтинг СНГ» (СберКорус).

В статье расскажу, как желание сотрудника техподдержки ускорить обработку входящих обращений привело к карьерному росту, смене вида деятельности, а, главное, — к созданию нового продукта! Но обо всём по порядку.


Продукт для сервиса проверки контрагентов


Роман, сотрудник службы поддержки, хотел создать востребованный продукт, который закроет потребности пользователей, а также упростит какие-либо рабочие процессы, сократит время и затраты на выполнение задач. Результатом идеи стал телеграм-бот сервиса проверки контрагентов (СПК).

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


Как используется информация в бизнес-процессах компаний

Идея ускорить и упростить проверку контрагентов у Романа появилась, когда он работал в службе поддержки третий год и стал старшим специалистом. Кроме работы с запросами клиентов, он оповещал коллег о деплоях, решал сложные и нестандартные кейсы. Был выделенным специалистом на нескольких проектах, сопровождал крупных клиентов, в частности клиентов API СПК.

Романа заинтересовала техническая сторона продуктов, поэтому он начал глубже изучать java 11, spring-boot, sql и nosql (cassandra, elasticsearch, orientdb), rabbitmq и микросервисы в openshift. Вместе с другим сотрудником отдела техподдержки он погрузился в java-стэк. Тут была классика жанра: общение с коллегами, создающими востребованные и сложные продукты, книги, бесплатные курсы, статьи и пр. Возможно, вы спросите: «А как же наставничество старших товарищей из группы разработки?» Но знаете, у каждого свой путь :)

Потихоньку, набравшись знаний, Роман приступил к поиску «точки приложения» своих усилий, чтобы закрепить теорию на практике. Объектом стали текущие процессы технической поддержки, в частности проверка контрагентов. Он решил улучшить сервис, а заодно попрактиковаться в разработке. Сначала дальше небольших поделок на java и spring-boot не заходило. Но цель была создать именно продукт, который мотивирует развиваться дальше. И со временем, как вы знаете, все получилось.

Новая идея — Телеграм-бот


Чтобы клиенты получали ответы быстрее, а консультации стали проще для сотрудников, Роман проанализировал процессы техподдержки. В результате он решил ускорить работу с обращениями по сервису проверки контрагентов с помощью Телеграм-бота. И вот почему.

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

С данными из Телеграма не нужно запускать web-приложение. Раньше, чтобы ответить на вопрос клиента, сотрудник должен был открыть web-приложение сервиса, авторизоваться, найти компанию и проверить информацию из заявки. Работа в нескольких окнах удлиняет процесс и увеличивает вероятность ошибок. Бот позволит работать с информацией сразу в мессенджере. Планируемый алгоритм использования: сотрудник технической поддержки в боте вводит ИНН компании из заявки, получает данные и готовит ответ, прикрепляя информацию в Jira.

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

С точки зрения пользовательского пути, у бота высокая скорость работы. Чтобы мгновенно получить краткую информацию о контрагенте, менеджеру достаточно ввести только ИНН. Поиск осуществляется в мессенджере, не нужно переключаться между устройствами.

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

Внешние условия для старта реализации бота также сложились удачно. В API Телеграма удобно встроить API сервиса проверки контрагентов. Стоит отметить, что ситуация с блокировкой Телеграм на территории РФ привнесла некоторые трудности, но сейчас всё выровнялось.

API сервиса проверки контрагентов


Возможности сервиса проверки контрагентов уже активно использовались внутри компании для анализа рынков и конкурентов, выявления ниш для новых продуктов, заполнения информации о контрагентах в CRM-системе и т.д. API сервиса позволяет находить компании по ИНН во внутреннем реестре СПК. В базе более 20 млн. компаний за всю историю ЕГРЮЛ/ЕГРИП.

Через сервис также можно получить данные:

  • данные из ЕГРЮЛ/ЕГРИП (все данные, которые содержатся в выписке ЕГРЮЛ/ЕГРИП);
  • ФИАС (поиск адреса);
  • арбитражные дела и банкротство;
  • взаимосвязи учредителей и руководителей компании с другими компаниями;
  • госконтракты и реестр недобросовестных поставщиков;
  • исполнительные производства;
  • сервис получения истории изменений ЕГРЮЛ/ЕГРИП;
  • коды статистики Росстата;
  • особые реестры ФНС (массовые руководители, адреса массовых регистраций, реестр дисквалифицированных лиц);
  • полный отчет по контрагенту по требованиям ФНС;
  • скоринговая оценка контрагента «Светофор»;
  • финансовые показатели по контрагенту.

Говоря об архитектуре взаимодействия чат-бота с API СПК, перед Романом стояла довольно непростая задача — выполнить интеграцию через имеющийся REST API сервиса. Использование бота на широком рынке в перспективе — это не совсем контролируемый рост нагрузки на сервера компании, а значит нужно вводить тротлинг и механизмы гибкого управления API. Подобный контроль это скорее задача инфраструктуры, а не приложения (например, концепция service mesh).

Эту задачу решили ранее через управление API и внедрением gravitee.io в СПК. Отматывая назад, скажу, что в своё время выбирали данный класс инструментов между Kong, ws2o, gravitee.io и в итоге выбор пал на последнего. В качестве причин: знакомый java-стэк для создания расширений и полная открытость в купе с API Portal функциями. Стоит отметить, что сравнение подобных инструментов это отдельная статься и подробно останавливаться не будем.


Как пользователь получает данные из источников

С одной стороны, есть потребители — это сам Телеграм, зарегистрированный бот и telegram bot gateway, созданный с помощью opensource-библиотеки github.com/rubenlagus/TelegramBots. А с другой — источник данных — API Gateway сервиса проверки контрагентов, отвечающий за троттлинг, лимиты запросов и пр.

Описанный каркас бота был готов примерно за один месяц работы причём, не в рабочее время, а по выходным дням и иногда вечерами. :)

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

Разработка и развитие


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

Чтобы найти векторы развития нового продукта, мы:

  • проанализировали конкурентов и их возможности;
  • использовали результаты анализа сессий пользователей web версии СПК, основных сценариев и поведения;
  • подготовили и оценили возможности и сценарии потенциальной коммерциализации;
  • оценили возможности сервисов аналитики для изучения сессий пользователей внутри бота.

В результате Телеграм-бот получил следующие функции:

  • поиск контрагента по ИНН;
  • просмотр информации из ЕГРЮЛ/ЕГРИП по контрагенту;
  • скачивание отчёта по контрагенту;
  • скачивание выписки из ЕГРЮЛ/ЕГРИП по контрагенту с ЭЦП ФНС;
  • просмотр результатов экспресс-анализа (индикаторов «Светофор») по контрагенту;
  • просмотр информации о банкротстве контрагента;
  • информация о государственных контрактах контрагента;
  • финансовые показатели контрагента.

Одна из самых востребованных функций бота внутри компании — экспресс-анализ. Результаты экспресс-анализа бот получает из сервиса проверки контрагентов. Расскажу подробнее про экспресс-анализ. Он состоит из итоговой оценки и четырёх групп критериев.

Информация о компании. Отслеживаем существенные факторы, влияющие на надёжность компании с юридической точки зрения, в том числе записи в ЕГРЮЛ/ЕГРИП. Статус компании — действующая, в стадии ликвидации или прекратила деятельность, а также срок существования компании и прочее.

Деловые риски. Отслеживаем наличие/отсутствие информации о компании в Едином федеральном реестре сведений о банкротстве и учитываем арбитражные дела в различных статусах и типах участия.

Финансы. Оцениваем показатели, характеризующие финансовое состояние компании.

Госконтракты. Оцениваем дисциплину исполнения организацией госконтрактов, их количество, расторжения и причины.

Всего критериев расчёта агрегированной оценки по компании более 30.

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

Сейчас доработанный Телеграм-бот активно используется внутри компании и готовится к выходу в soft launch.

Победа


Роман достиг цели и очень рад. Он смог создать продукт, который не только решает задачи внутри компании, но и выходит на рынок. Благодаря успеху, в карьере Романа произошли изменения: из техподдержки он перешёл в команду разработки сервиса проверки контрагентов в долгожданной роли разработчика.

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

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