Développeur backend / opérateur pour l'entrepôt de données de santé hospitalier - h/f
CDD Entre 7 et 12 mois Poitiers (Vienne)
Description de l'offre
L'unité d'Informatique et d'Archivistique Médicale (IAM), en lien étroit avec la Direction du Numérique (DNUM) du CHU de Bordeaux et la Direction de la Recherche Clinique et de l'Innovation (DRCI), met en place un Entrepôt de Données de Santé (EDS) basé sur les modèles i2b2 et OMOP pour faciliter l'utilisation secondaire des données à des fins de recherche, d'amélioration de la pertinence et de la qualité des soins et en support des activités de routine du CHU de Bordeaux (vigilance, PMSI, etc…).
Le CHU de Bordeaux, au travers d'une réponse commune avec les CHU de Poitiers et de Limoges portée par le groupement de coopération sanitaire (GCS) NOVA, est l'un des lauréats de l'appel à projet national « accompagnement et soutien à la constitution d'entrepôts de données de santé hospitaliers ». Dans ce cadre, le CHU de Bordeaux va mettre en production son EDS dans un environnement technique et de gouvernance conforme au référentiel CNIL.
L'unité IAM est composée de quatre médecins spécialisés en informatique médicale, de trois data-scientist, d'un ingénieur data, d'un chef de projet, d'une attachée de recherche clinique et de deux à quatre stagiaires (internes en médecine, ingénieurs et externes en pharmacie). La gestion des flux de
données alimentant les EDS i2b2 et OMOP d'une part, et le développement de la couche applicative de l'EDS du CHU de Bordeaux d'autre part, est internalisé dans l'unité IAM :
Données : Intégration des données de l'EDS dans une base de données relationnelles (Oracle / PostgreSQL) et un index Elasticsearch (modèle i2b2) et standardisation des données au format OMOP ;
Back-end : interrogation / accès aux données de l'EDS au travers d'une couche d'API développée en Java (SpringBoot) dans une architecture de type microservice ;
Front-end : application web développée en JavaScript (React) ;
Authentification : OIDC (Keycloak) en lien avec le LDAP du CHU de Bordeaux ;
Déploiement : intégration continue (CI/CD) dans GitLab, déploiement via Docker-Swarm.
Cette couche applicative, développée initialement au CHU de Bordeaux, sera partagée aux deux autres établissements du GCS NOVA puis co-développée par les 3 établissements.
Outre le développement de l'EDS du CHU de Bordeaux, l'unité IAM est impliquée dans l'accompagnement des projets impliquant les données contenues dans l'EDS, notamment au niveau des projets de Recherche Hospitalo-Universitaire (RHU ; TALENT et ENVISAGE) et des Instituts Hospitalo-Universitaire (IHU ; Lyric et VBHI). En particulier, ces projets nécessitent la mise en place d'environnements d'analyse pour le traitement des données cliniques et des données d'imagerie (mobilisation des images, pseudonymisation et mise en place d'environnement avec du calcul).
Description de la mission
L'ingénieur devops jouera un rôle clé dans le développement de la couche applicative de l'EDS du CHU de Bordeaux ainsi que dans la mise en place des environnements d'analyse pour les projets le nécessitant.
Responsabilités principales :
Développement backend:
Concevoir et développer les environnements d'analyses pour les projets de recherche s'appuyant sur l'EDS du CHU de Bordeaux. En particulier, le développeur contribuera à la mise en place des pipelines de mobilisation et de pseudonymisation des images issues des PACS de production et la mise en place des environnement d'analyses pour les données cliniques et d'imagerie pseudonymisées ;
Concevoir et développer la couche d'API en Java (SpringBoot) dans une architecture de type microservice pour assurer un accès sécurisé et efficace aux données de l'EDS ;
Participer à l'optimisation et à la maintenance du code existant pour améliorer la scalabilité et la performance de l'application ;
Assurance qualité et tests:
Développer et maintenir des suites de tests automatisés pour assurer la qualité du code et la robustesse de l'application ;
Utiliser des outils modernes de CI/CD (GitLab) pour automatiser les tests et les déploiements ;
Déploiement et maintenance:
Participer à la supervision et la gestion du déploiement des espaces projets et de la couche applicative dans les environnements de pré-production et de production ;
Assurer la maintenance et l'optimisation continue de l'application pour améliorer la performance et la stabilité ;
Collaboration et communication:
Collaborer étroitement avec les équipes de data scientists et les autres ingénieurs pour aligner le développement avec les besoins d'analyse de données et de recherche médicale ;
Fournir une documentation technique claire et détaillée pour soutenir le développement et l'usage de l'application au sein des trois établissements du GCS NOVA.
Profil recherché
Profil recherché
Formation :
Diplôme de niveau bac +5 en informatique ou domaine connexe ;
De préférence, une expérience significative de 3 ans ;
Compétences et qualités requises :
Expérience en développement backend (SpringBoot / Python) ;
Une connaissance en développement front-end JavaScript (React) est un plus ;
Une connaissance des architectures de microservice est un plus;
Solides compétences en tests automatisés et outils de CI/CD (GitLab) ;
Expérience avancée dans la gestion de conteneurs Docker et leur intégration dans les processus de CI/CD ;
Connaissances en gestion de bases de données relationnelles (Oracle, PostgreSQL) ;
Connaissances des normes de sécurité informatique spécifiques au secteur de la santé (GDPR) pour les données relatives aux patients ;
Qualités personnelles :
Rigueur, autonomie et sens de l'organisation ;
Fortes capacités de communication pour travailler efficacement au sein d'équipes multidisciplinaires ;
Capacité à innover et à proposer des solutions créatives pour améliorer l'expérience utilisateur ;
Proactivité et capacité à prendre des initiatives pour résoudre des problèmes complexes et améliorer continuellement les processus.
Aptitudes attendues :
Recueillir, analyser, formaliser et valider les besoins fonctionnels et non fonctionnels utilisateurs (y compris les interfaces avec les applications existantes et les compléments aux applications informatiques)
Rédiger la documentation technique (développement / déploiement)
Mettre en œuvre les règles liées à la protection des données
Connaissances attendues :
Développement backend Java (SpringBoot)
Développement backend Python
Développement Front-end Javascript (React)
Gestion de version de code (Git)
Développement continu / intégration continue (CI/CD)
Déploiement dans Docker / Docker-Swarm
Déploiement dans Kubernetes
Interrogation de données (RDMBS et ElasticSearch)
Mécanismes d'authentification et de sécurité en particulier OIDC
Connaissance des normes de sécurité (RGPD)
Développement d'API robustes et sécurisées
UX/UI Design
À propos de Centre Hospitalier Universitaire De Bordeaux
Situé dans une ville attractive, proche du bassin d'Arcachon et des Pyrénées, premier employeur de Nouvelle-Aquitaine, classé parmi les premiers au classement des CHU de France, le Centre hospitalier universitaire de Bordeaux assure ses missions de soin, de recherche, d'enseignement et de prévention au bénéfice de la population de la Métropole de Bordeaux et de sa région environnante.
Fort de 14500 agents et plus de 180 métiers, il regroupe ses activités sur trois sites hospitaliers, les groupes hospitaliers Pellegrin et Saint-André à Bordeaux et le groupe hospitalier Sud à Pessac. Etroitement liés à l'Université de Bordeaux, ils participent de manière constante à la formation médicale, chirurgicale, pharmaceutique et odontologique de la région ainsi qu'à la recherche fondamentale en liaison avec les unités INSERM et CNRS avec des nouvelles techniques innovantes.
Situé à Bordeaux, proche de Mérignac, le Groupe Hospitalier Pellegrin est le plus important des sites du CHU de Bordeaux. Il constitue un centre de soins aux compétences et équipements très étendus.