Aller au contenu principal

Ingénieur(e) Full Stack (Recherche et infrastructure)

Période d'affichage : du 21 septembre, 2026 au 2 octobre, 2026
Date limite de candidature : le 2 octobre, 2026 à 23h59
Durée prévue du contrat : du 12 octobre 2026 au 31 mars 2029
Salaire : 27,03 $ à 46,79 $ l'heure
Nombre d'heures par semaine : 40
Titre du poste CARE : Professionnel de soutien
Responsable principal ou supérieur hiérarchique direct : Dr. Ursula Eicker

Description du poste 

Nous recherchons un(e) ingénieur(e) polyvalent pour créer et maintenir des applications Web avec une interface utilisateur React/JavaScript et un backend Python (Flask/FastAPI/Django), développer des API internes reliant les outils de recherche et les pipelines de données, et prendre en charge les applications de bout en bout, de l’architecture au déploiement et à la maintenance. Le poste consiste notamment à traduire le code et les modèles de recherche en logiciels de production robustes, à collaborer avec les chercheurs pour mettre en œuvre de nouvelles techniques, et à réaliser des prototypes avec une voie claire vers la production. Vous serez chargé de provisionner et de gérer des serveurs Linux pour les applications Web et les charges de travail d’apprentissage automatique, de superviser la conteneurisation et l’orchestration (Docker/Podman), de surveiller l’état et la sécurité du système, et de mettre en place des pipelines d’intégration continue et de déploiement continu (CI/CD) tant pour les environnements de recherche que de production. Les candidats idéaux posséderont une formation en informatique ou en génie (ou l’équivalent), une expérience en développement full-stack avec JavaScript/React et Python, des compétences en administration de serveurs Linux, ainsi qu’une bonne connaissance des déploiements auto-hébergés et de la lecture de code de ML et de science des données basé sur Python, en plus d’excellentes aptitudes à la communication interdisciplinaire.

Responsabilités

Développement full-stack

  • Développer des applications Web avec une interface utilisateur React/JavaScript et un backend Python (Flask/FastAPI/Django)
  • Développer et maintenir des API internes reliant les outils de recherche, les pipelines de données et les interfaces destinées aux utilisateurs
  • Gérer les applications de bout en bout : architecture, mise en œuvre, tests, déploiement et maintenance

 

Intégration de la recherche

  • Transformer le code et les modèles de recherche expérimentale en logiciels robustes et de qualité de production
  • Collaborer avec les chercheurs pour comprendre et mettre en œuvre de nouvelles techniques (modèles d’apprentissage automatique novateurs, méthodes de traitement des données)
  • Réaliser rapidement des prototypes tout en conservant une trajectoire claire vers la mise en production

 

Administration de l’infrastructure et des systèmes

  • Mettre en place et entretenir des serveurs Linux pour les applications Web, les charges de travail d’apprentissage automatique et les tâches de calcul de longue durée
  • Gérer la conteneurisation (Docker/Podman), l’orchestration et la planification des tâches pour les tâches dépendantes du GPU
  • Surveiller l’état du système, les sauvegardes, l’application des correctifs de sécurité et le contrôle d’accès
  • Mettre en place et maintenir des pipelines de CI/CD pour les systèmes de recherche et de production
  • Autres tâches selon les besoins du chercheur principal.
  •  

Qualifications / compétences requises

  • Baccalauréat en informatique, en génie ou dans un domaine connexe (ou expérience pratique équivalente)
  • Expérience avérée en développement full-stack avec JavaScript/React (côté client) et Python (côté serveur) (Flask, FastAPI ou Django)
  • Administration de serveurs Linux, y compris le système, le réseau, le stockage et les autorisations
  • Expérience pratique de la conteneurisation et du déploiement auto-hébergé (Docker, Podman; la connaissance de nginx est un atout)
  • Expérience en provisionnement, déploiement et maintenance d’applications Web et de charges de travail d’apprentissage automatique sur des serveurs Linux
  • Connaissance de l’orchestration et de la planification des tâches liées aux processeurs graphiques (GPU)
  • Capacité à lire, adapter et mettre en production du code de recherche en apprentissage automatique ou en science des données basé sur Python
  • Solides compétences en débogage, en tests et en documentation
  • Expérience en conception et en utilisation d’API internes, ainsi qu’en intégration d’outils de recherche et de pipelines de données
  • Avoir déjà assumé la responsabilité d’applications de bout en bout : architecture, mise en œuvre, tests, déploiement et maintenance
  • Connaissance des concepts de CI/CD et de la mise en place de pipelines pour les environnements de recherche et de production
  • Excellentes aptitudes à la communication et à la collaboration interdisciplinaires avec des chercheurs et des ingénieurs
  • Maîtrise avec cinq ans d'expérience dans la décarbonisation des bâtiments. Une certification en gestion de projet est considérée comme un atout.

 

 

Comment postuler

Veuillez envoyer votre CV et votre lettre de motivation à ursula.eicker@concordia.ca avant la date limite de candidature, soit le 2 octobre, 2026 à 23h59.

 

*Ce poste de professionnel de soutien est soumis à toutes les conditions énoncées dans la convention collective de AERC. 

 

 

Équité en matière d'emploi : 
L'Université Concordia s'engage fermement à promouvoir l'équité en matière d'emploi au sein de sa communauté et à recruter un corps professoral et un personnel diversifiés. L'université encourage les candidatures de toutes les personnes qualifiées, y compris les femmes, les personnes racialisées, les Autochtones, la communauté 2SLGBTQI+, et les personnes ayant un handicap; les candidats sont invités à s'identifier comme tels dans leur candidature. 

Statut d'immigration:
Tous les candidats qualifiés sont encouragés à postuler; toutefois, la priorité sera accordée aux Canadiens et aux résidents permanents. Afin de se conformer aux exigences de déclaration du gouvernement du Canada, l’Université est tenue de recueillir des renseignements sur le statut des candidats, qu’ils soient résidents permanents du Canada ou citoyens canadiens. Bien que les candidats ne soient pas tenus d’indiquer leur pays d’origine ou leur citoyenneté actuelle, tous doivent inclure l’une des déclarations suivantes : 

Oui, je suis citoyen ou résident permanent du Canada ou Non, je ne suis ni citoyen ni résident permanent du Canada