Наша компания предоставляет комплексные услуги по разработке, и мы уже довольно давно автоматизируем различные процессы для крупных платформ. Одна из проблем крупных успешных платформ заключается в том, как быстро они масштабируются. Одним из первых расширившихся отделов является отдел поддержки клиентов.
Один из наших клиентов, крупная финансовая платформа, предоставляющая платежные решения для магазинов, нуждался в оптимизации расходов в отделе технической поддержки.
К платформе уже подключены сотни тысяч магазинов, и нагрузка на техническую поддержку при таком количестве контрагентов действительно впечатляет. Это сотни запросов в службу технической поддержки в день. Сюда входят как звонки, так и переписка в чатах и электронных письмах.
Стоит уточнить, что клиент уже использовал некоторую автоматизацию своих процессов, по крайней мере, он уже использовал билетную систему OTRS. Но у системы были существенные недостатки, которые требовали выполнения огромного количества ручных действий. Это и поиск информации о клиенте или контрагенте — все это хранится в отдельном приложении или отдельной базе данных; попробуйте найти магазин или заказ, связанный с этим клиентом; найдите задачи по разработке или ошибки, связанные с этим запросом. На все это ушло огромное количество времени.
Негативные последствия включают увеличение численности вспомогательного персонала и длительное ожидание решения проблем. Также необходимо было учитывать важность хранения данных клиентов на стороне финансовой системы.
Решение этой проблемы заключается в усовершенствовании OTRS и интеграции его с различными частями системы.
Прежде всего, мы проанализировали, какие улучшения помогут нашему клиенту улучшить процесс.
Отображение информации в данном случае играет решающую роль. Например, если звонит клиент, вы можете попробовать найти информацию в базе клиентов CRM по номеру телефона или электронной почте. Вам также понадобится информация, связанная с клиентом, например, в баг-трекере компании. Дополнительный анализ помог нам понять, какие улучшения необходимо внести в интерфейсную часть, поскольку решения для систем открытых заявок имеют довольно ограниченный интерфейс. Также были полезны горячие клавиши и подсказки.
Приступив к внедрению, мы проанализировали текущие решения на рынке и просчитали возможные варианты. Неудивительно, что, учитывая желаемые улучшения, клиенту было гораздо выгоднее внедрить собственное решение, а не пытаться модифицировать существующие, учитывая тот факт, что огромный пласт билетных систем был немедленно выброшен из-за требования сокрытия данных.
Более того, информации было достаточно, чтобы любой другой сотрудник мог сразу же начать действовать без дополнительных действий. Подключение к внутреннему багтрекеру помогло нам не отвлекаться от поиска возможного решения и выдачи статуса существующей заявке.
Информация об открытых билетах также отправлялась в личный кабинет пользователя, чтобы он также мог сам узнать статус проблемы или дополнить ее какими-либо данными.
Разработка:
Команда Intelexity реализовала элегантное решение, объединив React в качестве внешнего интерфейса и java в качестве бэкенда. С точки зрения интерфейса мы разработали интерфейс, в котором удобно размещалась информация о клиенте, его платежная информация, небольшая история платежей, а также открытые тикеты, для чего сразу же отображалась соответствующая переписка с ответственным сотрудником, которому, по возможности, был отправлен звонок или переписка.
Для реализации этой функциональности бэкэнд был написан на языке java с использованием Spring Framework и интегрирован с целым рядом внутренних систем. Это, прежде всего, телефония. В настоящее время Asterisk по-прежнему лидирует на рынке телефонии с открытым исходным кодом, хотя существует множество других решений, которые также можно использовать в качестве VoIP. Это могут быть FreeSwitch, 3CX и многие другие. Бэкенд может передать звонок соответствующему сотруднику, сделать запись в журнале вызовов и, при необходимости, сохранить телефонный разговор. Вторым каналом связи была электронная почта, для чего к серверу был подключен почтовый клиент, внутренние алгоритмы, такие как расстояние Левинштейна, TF-IDF в сочетании с функцией Cosine Similarity на сервере, связывали переписку по темам для относительной простоты поиска. В письмах также изменялись статусы заявок, что упрощало фильтрацию по открытым заявкам. Интеграция с CRM позволила отображать информацию о текущем пользователе, а интеграция с баг-трекером — отображать открытые ошибки для разработки и создавать новые запросы на разработку. Они, в свою очередь, уже были обработаны командой разработчиков.
Для обеспечения высокой скорости обработки сообщений были также добавлены соглашения об уровне обслуживания, которые уведомляют соответствующих ответственных лиц о задержках в обработке для возможной оптимизации процесса.
Система оценки занятости сотрудников помогла сбалансировать нагрузку и исключить простои на линии и в почте.
Также была создана система отчетности для оценки работы как отдельных сотрудников, так и всего отдела. Например, на основе успешно обработанных заявок, тенденций качества и скорости обработки заявок. Все это помогло выровнять и настроить систему для повышения эффективности.
А:
Несмотря на то, что система являлась внутренней разработкой и была ориентирована на внутренних пользователей, тестированию приходилось уделять клиентам не меньше внимания, чем любой внешней системе, ведь правильная работа комплекса — залог высокой производительности технического отдела. Для удобного хранения тестовых примеров по согласованию с заказчиком мы использовали Jira с плагином X-rail и плагином GitLab. Эта комбинация помогла быстро найти, в какой части кода обнаружена ошибка, и, следовательно, быстро исправить ее.
DevOps:
Для быстрого внесения исправлений и новых функций в продукт были разработаны сборочные линии на основе gitlab. Gitlab — одно из самых удобных решений на рынке для хранения и развертывания кода. Возможность писать довольно сложные процессы сборки — безусловное преимущество, благодаря чему мы смогли реализовать полноценный процесс CI/CD с автоматическим тестированием как самого кода с помощью SonarQube и анализаторов проверки зависимостей, так и образов докеров, которые будут установлены на сервере, trivy scanner. Оркестрацию выполнили легкие k3s.
В результате принятого комплекса мер эффективность службы поддержки клиентов многократно возросла. Скорость решения проблем по телефону увеличилась, а время звонка уменьшилось в среднем на 60%. Скорость закрытия заявок по почте также резко возросла на 47%. Чаще всего проблемы заключались в поиске предыдущей корреспонденции и корреспонденции, наиболее актуальной по смыслу. Количество обращений в службу технической поддержки в целом снизилось на 15% благодаря реорганизации информации в личном кабинете и подключению чат-бота, который мог отвечать на часто задаваемые вопросы. Стоимость обработки заявки снижена на 30%.
Эффективность работы отдела также была повышена за счет выявления перегруженных и недогруженных специалистов. Для специалистов, систематически не отвечающих требованиям SLA, были организованы курсы повышения квалификации, что также положительно сказалось на показателях ответов.
Мы смогли значительно повысить эффективность службы технической поддержки нашего клиента, автоматизируя систему тикетов и интегрировав ее с другими клиентскими подсистемами. А также благодаря правильной реорганизации пользовательской документации.
Накопленный нами положительный опыт позволяет повысить эффективность службы поддержки пользователей вашей компании за счет уникальной разработки, разработанной специально для ваших потребностей. Не откладывайте решение на завтра — экономьте и развивайтесь уже сегодня вместе с Intelexity.