6 октября 2025
Medpoint — это образовательный портал для врачей, созданный Onpoint совместно с ведущими экспертами отрасли. Сегодня платформой пользуется более 70 000 врачей по всей России: они профессионально развиваются, обмениваются практическим опытом с коллегами и изучают материалы на основе доказательной медицины.
Чтобы Medpoint был одновременно надёжным, быстрым и удобным, мы собрали технический стек, который в фарме используется крайне редко. Сегодня приоткроем завесу и расскажем, как он устроен внутри. Наша команда разработчиков подбирала технологии не формально, а исходя из реальных задач портала: где‑то использовали лучшие мировые практики, а где‑то создавали собственные решения. Такой подход позволил собрать систему, которая работает именно под нужды врачей и брендов, а не по шаблону.
Содержание
Архитектура и база данных: гибкость против классики
Бэкенд: Node.js и сила open-source
Архитектура и база данных: гибкость против классики
Обычно в фармацевтической digital-среде используют SQL-базы: они хороши там, где структура данных заранее жёстко задана. Но в Medpoint всё иначе — у нас десятки форматов контента: видео, статьи, вебинары, клинические кейсы, дайджесты. На старте мы тоже использовали SQL, но довольно быстро стало ясно: такой подход тормозит развитие портала. Поэтому ещё на раннем этапе мы приняли решение перейти на MongoDB (NoSQL).
Этот шаг позволил:
-
Хранить разнотипные данные без сложных обходных решений;
-
Гибко компоновать данные и собирать персонализированный контент под интересы пользователя (например, формировать дайджест-рассылку из материалов разных форматов);
-
Быстрее проверять и масштабировать продуктовые гипотезы и запускать новые сервисы;
-
Поддерживать скорость изменений, критичную для образовательных проектов: если завтра появляется новый формат курса, мы просто добавляем модуль, а не перестраиваем систему.
Бэкенд: Node.js и сила open-source
Бэкенд Medpoint построен на TypeScript/Node.js с использованием фреймворка NestJS. Это решение позволило нам:
-
Опираться на огромную экосистему open-source-библиотек (npm) — от обработки видео до математических расчётов, что ускоряет запуск новых фич без необходимости писать всё с нуля;
-
Масштабировать систему под рост аудитории и нагрузку;
-
Эффективно работать в роли сервера для веб-приложений без тяжёлых вычислений.
Такой подход делает развитие портала экономичнее и быстрее: мы используем лучшие практики глобального IT-сообщества и адаптируем их под нужды фармобразования.
Узнайте больше про Medpoint
Образовательный продукт для врачей в сотрудничестве с ведущими лидерами мнений
Узнать большеУзнайте больше про Medpoint
Образовательный продукт для врачей в сотрудничестве с ведущими лидерами мнений
Узнать большеСобственная админка вместо CMS
Стандартные CMS перегружены лишним функционалом и плохо подходят для медицинского контента. В Medpoint мы используем собственную админку — не классическую CMS, а гибкое самописное решение, которое:
-
Включает конструктор для создания, наполнения курсов и библиотеки с обучающими материалами;
-
Минимизирует лишний функционал и делает интерфейс максимально удобным;
-
Легко адаптируется под новые задачи портала.
В результате администрирование становится быстрее, а команды маркетинга и медицинские редакторы могут сосредоточиться на контенте, а не на технических барьерах.
Интеграции и данные
Medpoint интегрирован с ключевыми сервисами фармрынка и digital-аналитики:
-
Altcraft — рассылки всех типов (email, СМС, push, ОСМ), включая триггерные и дайджесты;
-
Яндекс DataLens — дашборды и визуализация статистики по рассылкам;
-
Amplitude, Яндекс Метрика — поведенческая аналитика и A/B-тесты.
Чтобы данные обновлялись быстро и без перегрузки систем, мы используем:
-
RabbitMQ — «склад сообщений», который принимает миллионы запросов одновременно и распределяет их по сервисам в удобном для них темпе. Это стандарт индустрии: даже при пиковых нагрузках система остаётся стабильной.
-
Оптимизацию API-запросов — группируем данные пакетами и минимизируем количество обращений к сторонним сервисам, чтобы ускорить обмен информацией.
-
Postgres — отдельная SQL-база для агрегации статистики по email-рассылкам и выгрузки этих данных в Яндекс DataLens.
Благодаря этому портал стабильно обрабатывает большие объёмы данных и остаётся быстрым даже при сложных интеграциях.
Масштабируемость и скорость
Medpoint выдерживает пиковые нагрузки — будь то федеральные медицинские форумы или массовые аккредитованные вебинары. За это отвечает архитектура, построенная на современных индустриальных решениях:
-
Микросервисная архитектура. Вместо монолита, где всё «лежит в одной коробке» и падение одного модуля может остановить работу целиком, у нас каждая функция живёт в отдельном сервисе: авторизация, рассылки, админпанель, синхронизации. Если нагрузка растёт на один блок (например, рассылки), мы просто масштабируем именно его, не перегружая остальное.
-
Kubernetes. Он управляет сервисами как «коробочками»: если нагрузка увеличивается, автоматически поднимает дополнительные «коробочки», чтобы система работала стабильно. У нас три географические зоны (разные дата-центры Яндекса), и даже если одна «падает», Kubernetes переносит нагрузку на другие, сохраняя доступность портала. Кроме того, Kubernetes позволяет выкатывать обновления бесшовно: мы можем обновить отдельный модуль или даже весь портал, не прерывая работы пользователей.
-
Мониторинг и логи (Prometheus + Loki + Promtail + Grafana).
Prometheus отвечает за мониторинг сервисов, Loki и Promtail — за сбор и агрегацию логов, а Grafana отображает данные. Благодаря этому разработчики в реальном времени видят состояние системы и получают алерты прямо в Telegram, что позволяет реагировать мгновенно.
Безопасность и надёжность
В Medpoint мы закладываем безопасность и стабильность работы портала в саму архитектуру.
Мы регулярно проверяем портал на соответствие стандарту OWASP Top 10 — это международный список наиболее распространённых угроз для веб-приложений. Такой аудит позволяет своевременно закрывать уязвимости и держать уровень защиты на высоком уровне.
Чтобы минимизировать риски потери данных или простоя, мы используем несколько решений:
-
Ежедневные бэкапы, чтобы при необходимости можно было быстро восстановить систему;
-
Гибкую систему прав внутри облачного провайдера и Kubernetes: доступ к базе и контейнерам только у нужных специалистов;
-
Репликацию базы — данные синхронно хранятся в нескольких копиях;
-
Геораспределённые серверы — в трёх независимых дата-центрах: даже если один из них «падает», портал продолжает работать.
Наш кейс: когда один из дата-центров Яндекса вышел из строя, Medpoint не остановился ни на секунду. Благодаря продуманной архитектуре портал продолжал работать в штатном режиме — пользователи даже не заметили сбоя.
Другими словами, Medpoint спроектирован так, чтобы врачи всегда имели доступ к образовательным материалам, а бренды — к стабильной коммуникационной площадке, даже при внешних сбоях.
UX-технологии «под капотом»
Для врача важно не задумываться о технологиях — портал должен работать быстро, стабильно и удобно. В Medpoint мы используем решения, которые незаметны на поверхности, но делают работу с сайтом комфортной:
-
Server-Side Rendering (Next.js) — страницы генерируются на сервере и отдаются врачу уже в готовом виде. Это ускоряет загрузку в разы, улучшает SEO и позволяет видеть контент почти мгновенно.
-
Адаптивная вёрстка — мобильная версия учитывает привычки врачей: например, меню вынесено вниз экрана. Мы постоянно тестируем разные варианты интерфейса через A/B-тесты, чтобы выбирать то, что действительно удобнее.
-
Современные графические форматы и кеширование — используем для изображений WebP и другие лёгкие форматы, которые сохраняют качество и ускоряют загрузку. Дополнительно настроено кеширование изображений: при повторном заходе страницы картинки загружаются практически мгновенно.
-
Поисковая система OpenSearch — новое решение, которое мы внедрили для более быстрого и точного поиска по порталу. Это особенно важно, когда врач работает с большим количеством материалов и ему нужно найти нужное за секунды.
-
Персонализированные дайджесты и аналитика — система подбирает релевантный контент, чтобы врачам было проще находить нужное.
В результате Medpoint остаётся быстрым и удобным на мобильных устройствах, через которые на портал заходит большинство пользователей.
Взгляд в будущее
Мы внедряем решения, которые в фарме появляются одними из первых:
-
AI-сервисы для врачей. AI Bolit — интеллектуальный поиск по клиническим рекомендациям, встроенный прямо в портал Medpoint. Он позволяет находить нужную информацию в привычной среде портала, экономя время и повышая точность поиска. Подробнее в статье.
-
Прозрачная аналитика для заказчиков. Функция «Личные кабинеты вебинаров» показывает эффективность образовательного контента. Обычно фармкомпании получают Excel-таблицы с данными, которые сложно систематизировать. В Medpoint же каждая активность имеет отдельную статистику и готовую воронку из четырёх ключевых элементов, что делает анализ и планирование гораздо проще. Подробнее в статье
Все технологии, о которых мы рассказали, работают «под капотом». А главное, для врачей Medpoint остаётся удобным и надёжным образовательным порталом.
Для фармкомпаний портал обеспечивает:
-
стабильную работу контента даже при высокой нагрузке;
-
прозрачную аналитику в реальном времени;
-
интеграцию брендовых материалов в образовательный контент без потери доверия.
Эти возможности помогают компаниям эффективнее организовывать обучение и оценивать результаты своих образовательных проектов.
Если вы планируете запуск портала, лендинга или образовательного проекта, команда Onpoint может помочь создать решение, которое будет удобно для врачей и эффективно для бренда.
Подпишитесь на наш Telegram!
Обсуждаем тренды и цифровые инновации в фармпродвижении, делимся кейсами, лайфхаками и инсайтами из мира фармацевтики
