О компании:
Мы — продуктовая команда, которая создает цифровые решения в сфере здравоохранения. Наши продукты — это медицинские приборы и информационные системы (МИС) для частного использования и для клиник, рабочие места для врачей, интерфейсы для работы с медицинским оборудованием, мобильные приложения для пациентов.
Наша миссия — дать врачам удобный и качественный инструментарий отечественного производства, упростить работу врачей, снизить риски ошибок и дать пациентам удобные инструменты для контроля за своим здоровьем.
Мы ищем опытного Backend-разработчика, который станет ядром нашей команды и будет отвечать за создание быстрой, масштабируемой и, самое главное, безопасной серверной части наших продуктов. Вы будете строить цифровой фундамент, на котором базируется работа врачей и функционирование медицинских приборов.
Чем предстоит заниматься:
Проектирование и разработка API:
- Создание и поддержка надежных RESTful и/или gRPC API для наших веб- и мобильных приложений.
- Разработка внутреннего API для взаимодействия между микросервисами.
Работа с данными и базами данных:
- Проектирование схем баз данных (реляционных и нереляционных) для хранения чувствительных медицинских данных.
- Написание сложных и оптимизированных запросов, обеспечение целостности и консистентности данных.
Создание бизнес-логики:
- Реализация сложной бизнес-логики, связанной с медицинскими процессами, расписаниями, ведением историй болезни и обработкой результатов анализов.
- Разработка сервисов для обработки данных, поступающих в реальном времени с медицинского оборудования.
Интеграции и безопасность:
- Интеграция с внешними медицинскими системами (региональными, федеральными, госпитальными, амбулаторными).
- Обеспечение безопасности данных, управление доступом, защита от уязвимостей, соблюдение законодательства о персональных данных (152-ФЗ).
Архитектура и производительность:
- Участие в проектировании архитектуры бэкенда (часто микросервисной).
- Оптимизация производительности и масштабирование системы под растущие нагрузки.
- Обеспечение отказоустойчивости критически важных сервисов.
Наши ожидания от кандидата (обязательные требования):
- Отличное владение Node.js и TypeScript. Вы понимаете асинхронную природу Node.js, Event Loop и используете все преимущества строгой типизации TypeScript для создания надежных приложений.
- Опыт коммерческой разработки на Node.js от 3-х лет.
- Опыт работы с фреймворками: NestJS.
- Глубокое понимание баз данных:
- Опыт работы с реляционными СУБД (PostgreSQL/MySQL), умение писать сложные SQL-запросы и работать с транзакциями.
- Опыт работы с NoSQL базами данных (MongoDB, Redis).
- Опыт использования ORM/ODM (TypeORM, Prisma, Mongoose).
- Опыт проектирования и построения RESTful API. Понимание принципов и лучших практик (корректные HTTP-коды, версионирование, пагинация).
- Умение писать тестируемый код и сами тесты (Unit, Integration) с использованием фреймворков вроде Jest или Mocha.
- Опыт работы с Docker. Вы должны уметь упаковать свое приложение в контейнер и запустить его.
- Уверенное использование Git и понимание процессов командной разработки (code review, feature branches).
- Высокий уровень ответственности и системное мышление. Понимание, что ошибка в коде может повлиять на реальные медицинские процессы.
Будет огромным плюсом:
- Опыт работы с медицинскими стандартами обмена данными (HL7, FHIR, DICOM). Это ваш главный козырь и огромное конкурентное преимущество.
- Опыт построения микросервисной архитектуры.
- Опыт работы с брокерами сообщений (RabbitMQ, Kafka) для асинхронного взаимодействия сервисов.
- Практический опыт в обеспечении безопасности веб-приложений (знание OAuth 2.0, JWT, принципов шифрования, защиты от OWASP Top 10).
- Опыт работы с облачными провайдерами (AWS, Yandex.Cloud, Azure) и понимание принципов IaC (Terraform).
- Опыт работы с WebSocket или другими протоколами для обмена данными в реальном времени.
Мы предлагаем:
- Работу над социально значимым продуктом, который приносит реальную пользу.
- Команду сильных инженеров, у которых можно многому научиться.
- Конкурентную заработную плату, обсуждаемую индивидуально с успешным кандидатом.
- Современный стек технологий, но и некоторое количество легаси.
- Гибкое начало рабочего дня и возможность работать удаленно.