Как мы объединили учётную систему, low-code, Big-Data и мобильное приложение для управления сотрудниками фармкомпании

от автора

Привет, Хабр! Представьте, что у вас несколько сотен сотрудников, которые распределены по всей стране. Каждый работает на своём «треке» — районе города или целом регионе, постоянно находится в разъездах и иногда даже без мобильной связи. При этом вам нужно не только координировать их, но и почти в реальном времени анализировать данные, в которых отражается результат их работы. 

Добавьте к этому необходимость соблюдения трудового законодательства, своевременный и очень внимательный выпуск организационно-распорядительных документов, внешние источники информации, базы данных аналитических агентств и жёсткую связь между ответственностью и анализом план/факт на основе разнородных данных…

Мы — Иван Колесников, директор по цифровой трансформации в Группе компаний «Промомед», и Анастасия Чернова, директор по корпоративной аналитике — в этой статье расскажем, как мы обрабатываем эту сборную солянку из метаданных и на их основе определяем загрузку сотрудников на местах, анализируем продажи и долю присутствия компании на рынке.

А ещё разберём, как мы собрали для этого гибкую систему-«пазл» из разных инструментов и почему в её центре low-code-платформа и DWH.

Почему основной интегратор — мы сами

Тут всё просто — готового решения, которое нам бы подошло, просто нет. Некоторые разработчики ПО предлагают якобы полные пакеты услуг, но при ближайшем рассмотрении оказывается, что они не закрывают все наши задачи.

В «Промомеде» уже есть общепринятая ERP-система и хранилище, из которого сотрудники могут брать данные для анализа, построения бордов и повышения эффективности работы. В итоге мы выбрали более гибкий и безопасный подход и добавили новые сервисы к уже существующим. Так мы решаем все важные бизнес-задачи и не привязаны к одному подрядчику — всю картину видит только наша внутренняя команда.

В наш «пазл» сейчас входят:

  • low-code-платформа GreenData, с помощью которой мы создаём приложения для конкретных бизнес-процессов;

  • приложение для Android, в котором сотрудники ежедневно получают все обновления задач и контактов;

  • 1С:ERP — основной управленческий инструмент;

  • 1С:ЗУП — основной инструмент работы с сотрудниками, учёта кадровых решений и формирования организационно-распорядительных документов;

  • личный кабинет — основной инструмент взаимодействия с сотрудниками по всем кадровым вопросам;

  • система МДЛП, откуда мы получаем данные о всех движениях товара на рынке;

  • Apache Superset — основной BI-инструмент для анализа и визуализации данных;

  • Data Lake — централизованный инструмент работы с данными на базе PostgresSQL.

Теперь разберёмся, за что отвечают самые важные фрагменты «пазла».

Как выглядит МДЛП

Как выглядит МДЛП

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

Для начала немного о самих сотрудниках. С помощью low-code-платформы GreenData мы распределяем на местах медицинских представителей. Они занимаются просветительской работой и рассказывают о наших препаратах на личных встречах с членами врачебного сообщества. Чтобы сотрудники эффективно работали, мы должны обеспечивать их материалами для встреч, планировать загрузку и следить за выполнением KPI.

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

В системе есть сущность «ставка» — «рабочее место». Она закрепляется на «треке» — территории, на которой будет работать человек. Территориальное распределение идёт по нескольким уровням — иерархически:

  • страна;

  • федеральный округ;

  • «третий уровень». ​

На «третьем уровне» могут быть и район Москвы, и целая Кировская область. Крупные города несколько сотрудников делят между собой как раз по районам. В других регионах территорию определяют по совокупности факторов: количество населённых пунктов, аптечных точек, медицинских учреждений и врачей в них.

На «треке» может быть закреплено несколько медпредставителей, которые работают с разными портфелями препаратов. К ним относятся, например, препараты для лечения эндокринологических, онкологических, орфанных (редких) заболеваний, безрецептурные лекарства и препараты для антиретровирусной терапии при ВИЧ. 

Мы распределяем сотрудников по принципу «где живут — там и работают». ​Москвичей в Новосибирск для работы не отправляем, а командировки если и есть, то в пределах региона. Например, житель Владивостока может съездить в Благовещенск.

При этом система изначально задумана так, чтобы перевод сотрудника между территориями не был проблемой при необходимости. Ставку можно повесить на новые «треки», то есть расширить территорию для того же человека. А можно снять его со ставки и поставить на неё другого — все территории пакетом переходят к новому сотруднику.

После того как сотрудник получил назначение, из GreenData данные отгружаются в CRM-систему, где он видит все медучреждения на своём «треке».

Интерфейс приложения

Интерфейс приложения

Ещё GreenData связана с 1С. Когда нанимают нового сотрудника, он автоматически попадает в систему, ответственным приходят уведомления «надо поставить на ставки». При увольнении человек автоматически снимается со ставки, ответственным тоже приходит уведомление, дальше они решают — назначать другого или оставить ставку свободной.

GreenData помогает оценивать экономическую эффективность разных регионов, рассчитывать нагрузку сотрудников, анализировать результаты работы, а затем планировать продажи. При этом GreenData не знает ничего о зарплате, KPI, продажах, количестве встреч, только о том, «какой человек — на каких территориях — с каких по какие даты».

Работа «в поле». Как мы используем данные из CRM и мобильного приложения для медпредставителей

Когда медпредставителей распределили на местах, начинается самая важная часть их работы — живые встречи. Чаще всего медпредставители общаются с врачами, реже — с провизорами и фармацевтами в аптеках. Ещё они могут участвовать в профильных медицинских конференциях.

Наша основная задача — обеспечить доступ к рабочим материалам, даже если связи нет, и анализировать активность сотрудника. Для этого у каждого из них есть свой планшет, на которых установлена CRM‑система. Она хранит клиентскую базу медпредставителя — список врачей и медучреждений, за которые он отвечает.

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

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

Приложение работает в том числе офлайн — на тот случай, если во время встречи не будет мобильной связи. Это актуально и в некоторых регионах, и в центре Москвы — везде, где иногда глушат связь. У приложения есть синхронизация с бэкендом, которая подгружает изменившиеся данные на сервер с планшета и наоборот.

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

Ещё с планшета мы получаем данные GPS. Так мы можем оценить, сколько времени на дорогу потратил человек, сколько в целом длилась встреча.

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

Мозг всей системы. Корпоративное DWH и сбор сырых данных в одном месте

DWH — большой котел, куда стекаются данные из всех источников: 

  • назначения территорий и ставок из GreenData; 

  • ​данные о проведённых медпредставителями встречах из мобильного приложения; 

  • ​данные о продажах препаратов в аптеках из Информационной системы мониторинга движения лекарственных препаратов (ИС МДЛП); 

  • данные из 1С:ERP.

Движение данных из разных источников

Движение данных из разных источников

Данные из GreenData передаются в DWH. Затем они используются в CRM через промежуточный сервис и ERP, чтобы медицинский представитель на планшете видел свою клиентскую базу и территорию. Ещё данные идут к аналитикам, которые фиксируют, кто за какую географию отвечает, как долго, и привязывают к этому планы продаж и KPI по числу визитов.

База CRM забирается дампом и разворачивается внутри контура компании. Также настроена синхронизация CRM с DWH с небольшим лагом, но не в реальном времени. CRM хранит всё, что делает медицинский представитель непосредственно руками «в полях». Также видна динамика третичных продаж. Объединив эти параметры, можно провести оценку качества работы. 

Из ERP и внешних систем данные стекаются через внешний контур — через отдельный сервис и API, формат JSON; ​ERP — через JSON; ​1С — и через ODATA, и прямой записью в DWH. SuperSat (BI) подключается напрямую к базе DWH, без промежуточного API.

Рабочие часы медпредставителей считаются на стороне DWH самописными микросервисами: они рассчитывают, сколько человеко‑дней сотрудник отработал; учитывают болезни, праздники, в том числе региональные, формируют готовые витрины с рассчитанными показателями.

Все данные стекаются в DWH, нормализуются и очищаются. Потребителем выступает BI-система и 1С, в которой собирают рабочие часы сотрудников и их зарплаты. 

BI — одна из финишных точек пайплайна

BI пользуются разные департаменты — каждый берёт оттуда свой пласт обработанных данных.

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

SFE‑аналитики (Sales Force Efficiency) и топ-менеджмент группы компаний видят агрегированную картину по направлениям, регионам или всей стране. Они оценивают производительность, выполнение плана на основе данных из DWH. 

Ещё в DWH лежат специальные таблицы с результатами продаж каждого медицинского представителя, собранные вместе с планами, территориями и ретроспективой. Специалисты из других отделов используют эти данные и «прогоняют» их по своей бизнес-логике. 

Таким образом, мы имеем две финишные точки: BI для медицинских представителей и другие данные из DWH для административных менеджеров.

Вместо заключения: какие результаты мы получили

Если говорить о глобальной пользе для компании, то грамотное назначение медпредставителей повышает качество визитной активности. Сотрудники лучше распределяют своё время, выполняют планы и качественнее взаимодействуют с врачами. Всё это напрямую влияет на продажи препаратов и осведомлённость о них среди врачей и их пациентов. Хороший пример — продвижение одного из наших главных лончей в 2025 году. Согласно отчёту DSM препарат для лечения диабета второго типа «Тирзетта» — № 1 по стоимостному объёму продаж в России.

Что касается улучшения нашего «пазла», то останавливаться на достигнутом мы не собираемся. Уже сейчас почти готов новый BI-дашборд, объединяющий данные из CRM и рыночной статистики. Поверх единой структуры мы будем создавать новые витрины и сервисы в архитектуре DWH. В планах также запустить умные продажи на DWH: чтобы оценивать потенциал рынка и смотреть охват территории, то есть сегментировать «рыбные места» и недоинвестированные зоны. 

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

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

ссылка на оригинал статьи https://habr.com/ru/articles/1025514/