ООО "Инвитро"
7 800 000
Медицина и ветеринария
Россия, Москва
Корпоративный сайт
Битрикс24
Сентябрь 2025
Медицинская сеть столкнулась с типичными для отрасли вызовами: разрозненные данные, отсутствие единого мобильного продукта, ручная обработка расписаний врачей и ограниченные возможности для дистанционных консультаций. Клиенту требовалась система, которая:
- объединяет данные пациента (EHR) с полной историей записей и лечений;
- позволяет быстро и безошибочно записываться на приём;
- предоставляет врачам удобную админ-панель для работы с пациентами;
- поддерживает телемедицину, оплату услуг, интеграцию со страховыми полисами;
- обеспечивает безопасный доступ к лабораторным результатам и рецептам.
В основе платформы — модульная архитектура с гибкой реляционной моделью и JSONB-расширениями для данных EHR. Такой подход позволил хранить медицинские записи с версионностью, избегая потери данных и обеспечивая юридически значимую историю изменений.
Ключевые модули платформы:
- Электронная карта пациента (EHR)
Хранение медицинских записей, структурированных анализов, назначений и документации. Версионность обеспечивает полную историю изменений и соответствие медицинским стандартам.
- Запись на приём и расписания врачей
Интеллектуальная система расписаний, исключающая конфликты и учитывающая занятость врача. Интеграция с календарями клиники и мобильными приложениями.
- Оплата и страховые полисы
Поддержка ДМС / ОМС, эквайринг, работа с внутренними тарифами и пакетами услуг.
- Телемедицина
Видеоконсультации, чат, обмен файлами, загрузка фото-анализов. Использован стек WebRTC + gRPC для сигналинга и оптимизации нагрузки.
- Лабораторные результаты
Автоматическая загрузка результатов в PDF и HL7, доступ через персональный кабинет, push-уведомления о готовности.
- Модуль рецептов
Выписка и продление электронных рецептов, интеграция с аптечными системами.
- Админ-панель врачей
Личная статистика, нагрузка, текущие записи, работа с пациентами, быстрый доступ к данным.
- Уведомления
Push, SMS, email — напоминания о приёмах, готовности анализов, консультациях.
Цель: собрать и синтезировать требования, определить границы системы и риски.
Что делать:
- Провести воркшопы с ключевыми стейкхолдерами (врачи, админы, лаборанты, юристы по медданным, финотряд) — уточнить рабочие сценарии (patient journey).
- Составить list critical user flows: регистрация/аутентификация, запись на приём, телемедицина, выдача результатов, выписка рецептов, оплата.
- Собрать требования по безопасности и соответствию (локальные законы о медданных, хранение, шифрование, версионность EHR).
- Описать интеграции: ЛПУ, лаборатории (HL7), аптечные системы, платёжные шлюзы, страховые.
- Определить SLA и целевые метрики (RPS, средняя задержка API, доступность видеосервисов).
- Оценить данные: объёмы EHR, количество файлов (PDF/изображения), модели хранения.
Артефакты:
- Product backlog с приоритетами (MVP / post-MVP).
- Диаграмма основных интеграций (схема).
- Оценка рисков и план их снижения.
- Нефункциональные требования: RTO/RPO, GDPR-like требования, retention policy.
Критерии приёмки:
- Подписанный список функциональных требований и согласованный MVP.
- Принятые правила безопасности и список внешних интеграций.
Цель: получить целостную архитектуру, обеспечивающую безопасность, масштабируемость и поддерживаемость.
Что делать:
- Спроектировать модульную архитектуру: API-gateway, микросервисы (EHR, Scheduling, Telemedicine, Labs, Payments, Notifications), Auth-service, файловое хранилище, event-bus.
- Выбрать БД: реляционная (Postgres) + JSONB для гибких медзаписей; предусмотреть версионность (audit tables или temporal tables).
- Определить контракт API (OpenAPI), схемы событий (protobuf), gRPC для сервис-to-service, REST/GraphQL для мобильных клиентов.
- Выбрать файловое хранилище: S3-compatible с версионированием, шифрованием на стороне сервера.
- Для телемедицины: WebRTC + Signaling через gRPC (или через отдельный signaling server), TURN для стабильности в мобильных сетях.
- Для интеграции с лабораториями: поддержка HL7 (v2/v3/FHIR - уточнить по лабораториям), механизм ingestion и нормализации.
- Спроектировать шину событий (Kafka/RabbitMQ) для асинхронных задач (уведомления, обработка результатов).
- Аутентификация/авторизация: OAuth2 + OpenID Connect, RBAC для врачей/админов; MFA для критичных операций.
- План бэкапа и disaster recovery: регулярные бэкапы БД, тест восстановления.
Артефакты:
- Архитектурные диаграммы (контейнеры, sequence diagrams для ключевых сценариев).
- OpenAPI + protobuf спецификации.
- Техническое задание на интеграции (контакты сторон, формат данных, frequency).
Критерии приёмки:
- Архитектура утверждена и покрыта диаграммами/контрактами.
- Протоколы интеграции согласованы со сторонними системами.
Цель: быстро выпустить ценность — основные сценарии для пациентов и врачей.
MVP-функции (рекомендуемый минимум):
- Регистрация/аутентификация, профиль пользователя.
- Запись на приём (search/availability/conflict resolution).
- Простая электронная карта (чтение/запись ключевых записей — с версионностью).
- Телемедицина — базовая видеосессия и чат.
- Уведомления (push/SMS/email) о записи и приёме.
- Хранилище лабораторных PDF (просмотр) — файл загружается и ставится в очередь на обработку/парсинг.
Что делать:
- Реализовать транзакционный механизм записи на приём: блокировка слота → создание записи → уведомление → подтверждение. Важна идемпотентность и защита от race conditions.
- В EHR — минимальная модель (events + JSONB payload), аудиторские записи изменений.
- Телемедицина: deploy TURN/STUN, настройка WebRTC-пайплайна, тесты в мобильных сетях.
- Внедрить API-gateway и rate-limiting для публичных API.
Артефакты:
- Рабочее приложение (Android/iOS + web для врачей) с ключевыми сценариями.
- Тестовые интеграции с одной лабораторией и платёжным шлюзом в тестовом режиме.
Критерии приёмки:
- Пользователь может записаться на приём без конфликтов (проверить сценарии сквозных тестов).
- Проведена тестовая телесессия от пациента к врачу.
- Доступ к лабораторным PDF работает с учётом прав доступа.
Цель: обеспечить надёжный обмен с внешними системами.
Что делать:
- Реализовать адаптеры HL7/FHIR: ingestion → валидатор → трансформер → сохранение (EHR).
- Настроить очереди и retry-логику; предусмотреть dead-letter queue.
- Для аптек — API/EDI интеграция: выписка рецепта с форматами, которые поддерживают аптеки.
- Для страховых: механизмы передачи заявления/счёта, подтверждение статуса покрытия.
Артефакты:
- Документация по контрактам интеграции.
- Среда для тестирования интеграций (sandbox).
Критерии приёмки:
- Прошли тесты передачи HL7 сообщений и подтверждения их обработки.
- Демонстрация выдачи рецепта и подтверждения в аптеке (sandbox).
Цель: минимизировать регуляторные и репутационные риски.
Что делать:
0- Шифрование: TLS everywhere, шифрование данных at-rest (S3, DB encryption) и ключи в KMS.
- Логирование и аудит: immutable audit trail для всех изменений EHR, запись действий врачей.
- DLP-проверки, ограничения экспорта данных.
- Регулярные pentest и сканинг уязвимостей; CI/CD policy для безопасного деплоя.
- Политика хранения данных (retention, deletion requests).
- Юридическая проверка на соответствие местному законодательству о медданных.
Артефакты:
- Security policy, runbook на инциденты.
- Отчёт о прохождении pentest.
Критерии приёмки:
- Прошел первичный аудит безопасности.
- Процедуры восстановления и инцидент-менеджмента утверждены.
Цель: обеспечить стабильность, корректность и UX.
Что делать:
- Автоматизированные тесты: unit, integration (контракты), e2e для ключевых user flows.
- Load testing: симулировать peak load, тесты на масштабирование телемедицины.
- Регрессионные тесты и smoke-тесты перед деплоем.
- UX-исследования: сессии с врачами и реальными пациентами (A/B для интерфейсов).
- Accessibility checks (важно в медприложениях).
Артефакты:
- Test suites в CI, отчёты по нагрузке.
- Список найденных багов и метрики дефектов.
Критерии приёмки:
- Порог стабильности пройден (например, 0 критических багов)
Цель: безопасный, повторяемый деплой в production и возможность быстрого отката.
Что делать:
- Настроить CI/CD: автоматические сборки, тесты, объявления артефактов.
- Инфраструктура как код (Terraform/CloudFormation), blue-green или canary deployment.
- Мониторинг приложений и инфраструктуры (Prometheus + Grafana, alerts).
- Настроить SLO/SLI и систему оповещений (pager duty / Slack).
- План запуска: пилот на 1–2 клиники → сбор фидбэка → постепенное расширение.
Артефакты:
- Pipelines, runbooks, playbook rollback.
- Dashboards с ключевыми метриками (latency, error rate, video connection success rate).
Критерии приёмки:
- Успешный пилот, отсутствие аварий при увеличении нагрузки.
Цель: обеспечить стабильность, наблюдаемость и быстрый отклик.
Что делать:
- Наблюдаемость: traces (distributed tracing), metrics, логирование (ELK/Opensearch).
- SLA контракт с заказчиком: время ответа на инцидент, режим работы support.
- Регулярные расчёты capacity planning исходя из роста пользователей.
- Обновления безопасности и регулярные maintenance windows.
KPI для поддержки:
- MTTD (mean time to detect), MTTR (mean time to repair), availability %.
- Video call success rate, average API latency, time-to-result for lab PDFs.
Цель: план стратегического роста и новых возможностей.
Год 1 (после MVP):
- подключение всех филиалов сети;
- полные интеграции с основными лабораториями и аптечными сетями;
- расширение функционала EHR (структурированные данные, аналитика).
Год 2:
- ML-ассистенты (triage, автоанализ изображений, рекомендация рецептов на основании истории);
- telemedicine: запись консультаций, интеграция с устройствами удалённого мониторинга (IoT);
- расширение B2B: API для партнёров и партнёрских клиник.
Год 3:
- масштабирование на регион/страны (локализация, соответствие местным законам);
- монетизация дополнительных сервисов (premium-telemedicine, analytics for insurance);
- интеграция с реестрами и гос. системами при необходимости.

Работу над проектом мы разделили на критичные блоки и сфокусировались на тех модулях, которые определяют скорость, безопасность и удобство системы.
1. Сервис записи на приём
Построили транзакционную систему с проверкой конфликтов в реальном времени.
Результат: клиника избавилась от дублей и накладок в расписании, врачи перестали получать пересекающиеся записи.
2. Модуль лабораторных результатов
Создан безопасный механизм доступа к файлам и структуре HL7.
Результат: пациенты получают результаты сразу после интеграции с лабораторией, а врачи — корректные данные для дальнейшей работы.
3. Телемедицина на WebRTC
Внедрили видеоконсультации, чат и обмен файлами с signaling через gRPC.
Результат: минимальная задержка, стабильная работа при среднем мобильном интернете, единый UX для пациента и врача.
4. Оптимизация API мобильных клиентов
Перепроектировали часть запросов и сократили объём передаваемых данных.
Результат: ускорение работы мобильного приложения примерно на 30%, повышение отзывчивости интерфейсов и снижение нагрузки на backend.
Итоги и влияние на бизнес клиента
Обновлённая медицинская платформа позволила сети клиник перейти от набора разрозненных инструментов к единому цифровому ядру.
Финальный результат:
- снижение нагрузки на колл-центр и администраторов;
- увеличение скорости записи пациентов;
- рост количества телемедицинских консультаций;
- ускорение вывода результатов анализов;
- улучшение удержания пациентов за счёт удобного мобильного приложения.
Платформа стала основой для масштабирования бизнеса и подключения новых филиалов без ухудшения производительности.
![]()
Артём Пестов
В основе платформы — модульная архитектура с гибкой реляционной моделью и JSONB-расширениями для данных EHR. Такой подход позволил хранить медицинские записи с версионностью, избегая потери данных и обеспечивая юридически значимую историю изменений.
Максим Яблоков
Подписаться
Артём Пестов
Подписаться
Майя Долотова
Подписаться
Александр Ригерт
Подписаться