Как выстроить работу отделов R&D и Customer Support, чтобы они друг друга не переубивали

Olga Skvortsova
5 min readNov 9, 2023

--

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

Вводные данные из выступления:

  • Техподдержка закрывает 3000–4500 обращений в месяц со средней оценкой 4.8 / 5.
  • При этом существует целый пласт вопросов, с которыми надо ходить к другим отделам (продакты, программисты, девопсы).
  • По числам это 500–100 обращений за двухнедельный спринт.
    С одной стороны, это немного, с другой стороны — это постоянный поток обращений🙈
  • В результате ребята наладили у себя режим обращения техподдержки с вопросами в другие отделы. Об этом ниже 👇

Шаг 1: Оптимизация трэдов в Slack

Изначальная проблема: программисты тратили много времени, чтобы понять, на что конкретно жалуются клиенты, так как сотрудники поддержки всегда по-разному описывали проблему (кто-то писал своими словами, а кто-то копипастил в чат всю простыню жалоб клиента).

Как решили: договорились, что саппорт пишет клиентские вопросы программистам по единой схеме:

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

Пример:

Да, пункты немного “капитанские”, но это здорово увеличивает читаемость вопроса 👍

Из интересного:

  • Поскольку Slack поддерживает трэды, удобнее всего оказалось писать по принципу “1 вопрос — 1 трэд”.
  • Для вопросов в разные отделы сделали разные каналы (техподдержка ↔ интеграторы, техподдержка ↔ девопсы, техподдержка ↔ ядро и т.п.)

Шаг 2: Дежурства

Изначальные проблемы:

  1. Сотрудники техподдержки иногда писали вопросы в личку одному конкретному программисту вместо того, чтобы писать в канал.
  2. При этом в выделенном канале в Slack отвечали все программисты подряд. В результате стало сложно переключаться между спринтовыми задачами и ответами ребятам из поддержки, и возникла проблема, что на вопросы вообще никто не отвечает 😢

Как решили: организовали дежурство

  • Дежурный назначался от каждого отдела (ядро, интеграторы, девопсы) на соответствующий канал в Slack.
  • Дежурный назначался на спринт, если команда большая, и на неделю — если маленькая.
  • В начале недели/спринта “старые” дежурные добивают свои хвосты, чтобы не оставлять их “новым” дежурным.
  • Разработчиков, недавно пришедших в компанию, включали в график дежурства через 3–6 месяцев.

Логично, что в минусы дежурства можно записать доп.нагрузку, но есть и плюсы:

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

Ну и заодно на берегу договорились про правила обработки багов:

  • Если клиент неправильно понимает логику, то надо объяснить, почему она именно такая.
  • Мелкий баг (до 2 часов) фиксится в рамках дежурства.
  • Трудоёмкий баг заводится в трекер на профильную команду:
    ✅ только если удалось понять первопричину проблемы;
    ✅ с понятным и ёмким названием задачи
    ✅ с фиксацией всего контекста проблемы (описание, логи, выявленная причина)
  • Баг не заводится, если не удалось понять причину проблемы, или не удалось его воспроизвести.

На этом этапе у всех, кто пробовали внедрить у себя дежурства (я в одной компании их внедряла 3 раза 🤪) возникает вопрос: как техподдержке избежать соблазна отдать задачу дежурному, чтобы он разбирался, вместо того, чтобы разбираться самим?
Докладчик рассказал, что они договорились с руководителем технической поддержки, что он на своей стороне будет следить за долей задач, которые уходят из саппорта программистам.

Шаг 3: PatrolBot в Slack

Чтобы ничего не терялось, в канал в Slack, куда техподдержка пишет вопросы програмистам, добавили специального бота, который мониторит динамику обработки обращений и подсвечивает нерешённые треды:

Из интересного: можно дополнительно делать графики нагрузки на дежурных.

Шаг 4: Уровни техподдержки

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

Как решили: команду саппорта разбили на уровни

  • L1: пользовательские сценарии с нулевым намёком на техническую/инженерную составляющую
  • L2: технические спецы, которые знают основы интеграций
  • L3: инженерное крыло поддержки, способное влезть в интеграции клиента и поправить/доработать их.

Соответственно, сложные обращения клиента шли по уровням L1 → L2 →L3, часть вопросов решалась в отделе техподдержки и только действительно нерешаемые силами поддержки попадали к дежурным программистам.

Из интересного: договорились, что необязательно быть L3, чтобы прийти с вопросом к программистам, при необходимости к дежурному могут прийти сотрудники поддержки любого уровня.

Шаг 5: База знаний техподдержки

Докрутили следующие моменты:

  • Назначили ответственных за базу знаний: периодически проверять поток вопросов клиентов и однотипно-повторяющиеся заносить в базу знаний.
  • Каждые 3 месяца сотрудники уровня L1 проходят переаттестацию с учётом всех изменений и новых фич в продукте.

Шаг 6: Привлечение саппорта на внутренние митапы

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

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

Выводы:

  • Постоянно налаживайте коммуникацию между отделами R&D и Customer support, это очень важно и всегда есть куда улучшаться.
  • Договоритесь о формате обращения к дежурным, вовремя пополняйте базу знаний и по максимуму используйте ботов в Slack.
  • В целом дежурство работает, но это не silver bullet 💪

Ссылка на видео:

--

--

Olga Skvortsova

Support team lead и большой фанат Zendesk. 100+ статей в блоге, где я извлекаю уроки из своего и чужого опыта 😅 Telegram: https://t.me/oskv0