← Все кейсы
КЕЙС Problem Solving Root Cause Analysis

Загадка со звуком в CRM: как сэкономить на закупке оборудования

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

Проблема

Пользователи нашей самописной CRM-системы массово жаловались на сильные помехи при звонках. Отделы начали перекидывать ответственность друг на друга: инфраструктура предлагала закупить новые гарнитуры и компьютеры, а разработка утверждала, что с кодом всё в порядке. Проблема повисла в воздухе.

Процесс расследования

Я не стал тратить бюджет бизнеса на слепую закупку оборудования и взял расследование инцидента на себя. Зная, что протокол SIP плохо работает через NAT, я перевел тестовые номера на Zoiper. Звук пошел идеально. Это сразу отмело гипотезу о плохих гарнитурах.

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

В итоге я выдвинул финальную продуктовую гипотезу: проблема в среде исполнения (браузерах). Мы провели A/B тест софтофонов на базе WebRTC в разных браузерах.

Результат

Гипотеза подтвердилась. В Яндекс Браузере обработка WebRTC отрабатывала намного стабильнее, чем в Chrome/Edge, и помехи исчезли. Мы не поменяли ни строчки кода и не купили ни одной новой гарнитуры. Мы просто локализовали проблему и нашли самое дешевое из возможных решений.

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