Как мы решили задачу Geekbrains по импортозамещению

Цели:

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

Необходимо было найти отечественного разработчика из-за двух условий:

  1. Владение системой в таком случае будет дешевле из-за более низких тарифов и отсутствия зависимости от курса доллара/евро.
  2. Отечественная компания-разработчик, по идее, должна быть более лояльна к доработкам собственного продукта.

Были сформированы цели проекта:

  1. Обеспечить полное импортозамещение в виде плавного перехода с зарубежной CRM-системы на отечественное решение или платформу, работающее на российских серверах, без остановки работы компании.
  2. Создать единое информационное пространство для работы крупнейшей онлайн-школы, интегрирующее работу всех подразделений в компании заказчика
  3. Провести анализ функционала Salesforce, реализовать его на отечественном решении с повышением удобства работы на основе обратной связи от команды заказчика. Другими словами, сделать не только так, как было, а даже лучше.
  4. Реализовать необходимые интеграции: с почтовыми и рассылочными сервисами (Fasttrack), телефонией, ПО для интерактивной визуализации данных и бизнес-аналитики (Tableau и MetaBase)
  5. Предоставить возможность кастомизации и изменения работы платформы без непосредственного участия команды разработчиков
  6. Обеспечить и гарантировать стабильную и быструю работу отечественной платформы с большим объемом данных (свыше 70 000 активных записей в сутки) с гарантированным SLA (показателем бесперебойной работы) не менее 99,7%

Выбор платформы для решения:

Из подходящих вариантов для использования были практически сразу же исключены “масс-маркетовые” CRM-системы (назовем их условно МаоCRM и Тритрикс34 - прим. редактора), так как работа с этими CRM-системами проходит только через интегратора, а не с разработчиками напрямую, что сильно осложняет и ограничивает возможность для доработок фунционала под конкретные требования заказчика.

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

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

По результатам опроса в качестве основной платформы для дальнейшей работы была выбрана S2.

Реализация:

Первый этап: март 2021 - июнь 2021 года

  1. Cбор бизнес-требований от компании-заказчика
  2. Составление технического задания на реализацию проекта
  3. Прогнозирование необходимых мощностей для полноценного функционирования платформы
  4. Первичная настройка для запуска MVP на основе базового функционала платформы
  5. Запуск в работу в S2 первичной тестовой группы от компании заказчика (Сотрудники которой обучены с нуля работать в S2, ранее с Salesforce не сталкивались)
  6. Доработка платформы на основе собранной обратной связи и статистики
  7. Начало разработки, реализации и переработки функционала Salesforce на отечественном решении

К сожалению, большая часть реализованного функционала находится под NDA.

В качестве примера разработки внутренней командой имеющегося функционала можно привести механизм “горячего” распределения сделок.

Разработка механизма “горячего” распределения сделок проходила в три итерации:

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

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

В рамках третьей итерации был переосмыслен подход: теперь ищется не подходящие менеджеры для сделок, а наоборот: подходящие сделки для менеджера.

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

Второй этап: июль 2021 года - февраль 2022 года

В июле 2021 года реализован глобальный перенос всей базы данных с Salesforce на S2 и переезд всех сотрудников отделов продаж (порядка 200 активных пользователей Geekbrains).

Перенос и переезд осуществлялся в течение двух ночей подряд (т.к. одно из функциональных требований заказчика - это запрет на приостановку работы компании в рабочее время). В переносе и переезде одновременно принимали участие две группы разработчиков - одна со стороны S2 и вторая со стороны Geekbrains.

С июля 2021 года по февраль 2022 года:

  1. Дорабатывался фунционал интеграций. Так, например, работа с ПО для интерактивной визуализации данных и бизнес-аналитики Tableau и MetaBase была реализована таким образом, что отчеты можно выводить напрямую на рабочий стол S2 без излишней нагрузки на платформу.
  2. Подключались дополнительные отделы и подразделения компании заказчика (увеличение активных сотрудников в системе с 200 до 600 человек)
  3. В связи с увеличением количества активных сотрудников была дополнительно наращена мощность выделенных серверов для поддержания стабильной и быстрой работы

Активная фаза работы над проектом была завершена в феврале 2022 года

Третий этап: март 2022 по настоящее время:

В марте 2022 года произошел переезд с зарубежных серверов на отечественное решение с поддержкой платформы Kubernetes.

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

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

Итоги:

В настоящее время компания-заказчик продолжает стабильную работу в S2.

Для нас кейс с Geekbrains стал подтверждением того, что компания спокойно может закрывать большие задачи и большие проекты.

Есть что обсудить? Пишите на [email protected]

 

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

Сергей Новайкин,

Исполнительный директор S2, руководитель проекта