Poste temporaire de 6 mois au sein de Mila, suivi d’une transition vers un poste permanent en laboratoire
À propos de Mila
Fondé par le professeur Yoshua Bengio de l’Université de Montréal, Mila rassemble des chercheurs spécialisés en intelligence artificielle et plus précisément en apprentissage automatique, apprentissage profond et apprentissage par renforcement. Reconnu mondialement pour ses importantes contributions au domaine de l’apprentissage profond, Mila s’est particulièrement distingué dans la modélisation du langage, la traduction automatique, la reconnaissance d’objets et les modèles génératifs. Depuis 2017, Mila est le fruit d’une collaboration entre l’Université de Montréal et l’Université McGill, en lien étroit avec Polytechnique Montréal et HEC Montréal.
Mila s’est donné pour mission d’être un pôle mondial d’avancées scientifiques qui inspire l’innovation et l’essor de l’intelligence artificielle (IA) au bénéfice de tous.
Pour en connaitre davantage, veuillez consulter https://mila.quebec/
Description du mandat
Vous travaillerez au sein d’une petite équipe directement sur le projet InsectAI (https://www.insectai.org/), une initiative de recherche visant à surveiller les populations d'insectes à l'aide de pièges photographiques autonomes et de l'intelligence artificielle.
En tant que développeur(-euse) fullstack senior, vous serez responsable de l'évolution et de la maintenance de nos outils clés, notamment la plateforme Web Antenna (gestion et analyse des données des pièges) et notre API/backend d'apprentissage automatique (ami-data-companion). Vous concevrez l'infrastructure permettant de traiter des millions d'images provenant d'appareils de terrain, d'exécuter des modèles d'IA complexes (détection et classification d'espèces) et d'offrir une interface fluide aux chercheurs et biologistes.
Fonctions et responsabilités
- Développement Backend : Architecturer, développer et optimiser les API et les services backend, principalement en Python (Django). Assurer la liaison entre les interfaces utilisateur et les moteurs d'inférence d'apprentissage automatique.
- Traitement de données à grande échelle : Gérer l'ingestion massive d'images et de métadonnées. Développer et optimiser les files d'attente et les tâches asynchrones (Celery, Redis, RabbitMQ) pour le traitement des images par nos modèles d'IA (détecteurs, classificateurs d'espèces).
- Infrastructure et DevOps : Piloter l'environnement conteneurisé (Docker, Docker Compose) et les déploiements infonuagiques (Openstack, TeamCity). Maintenir et améliorer les pipelines d'intégration et de déploiement continus (CI/CD).
- Collaboration ML : Travailler avec les chercheurs en IA pour intégrer les nouveaux modèles de vision par ordinateur en production.
- Développement Frontend : Contribuer à l'amélioration de l'interface utilisateur de la plateforme Antenna, permettant aux scientifiques de visualiser les images, de corriger les prédictions des modèles et d'exporter des données statistiques.
- Qualité et Open Source : Agir à titre de leader technique sur des dépôts GitHub publics, en assurant la révision du code et la documentation technique de nos outils.
Profil recherché
- Vous êtes un(e) développeur(-euse) autonome, avec une forte inclinaison pour l'ingénierie des systèmes, l'architecture backend et la robustesse des infrastructures.
- Vous êtes à l'aise dans un écosystème hybride alliant le génie logiciel classique, l'hébergement infonuagique et la science des données / apprentissage automatique.
- Vous avez un intérêt marqué pour la conservation de la biodiversité, l'écologie et les principes du Open Source.
- Vous aimez résoudre des problèmes complexes, comme la gestion des états d'erreur lors du traitement de milliers d'images ou l'optimisation des requêtes de bases de données volumineuses.
Prérequis pour réussir
- Diplôme universitaire en informatique, génie logiciel ou dans un domaine connexe, ou combinaison équivalente d'études et d'expérience professionnelle.
- Minimum de 5 années d'expérience en développement logiciel, avec une forte concentration sur le développement backend et le DevOps.
- Excellente maîtrise de Python et d'au moins un cadre de développement web robuste (idéalement Django).
- Solide expérience avec l'exécution de tâches asynchrones et les courtiers de messages (Celery, RabbitMQ, Redis).
- Maîtrise des outils de conteneurisation (Docker) et de l'orchestration de l'infrastructure infonuagique (Openstack).
- Expérience prouvée dans la mise en place de pipelines CI/CD et le maintien de dépôts de code collaboratifs.
- Compétences pratiques en bases de données relationnelles (PostgreSQL) pour gérer efficacement d'importants volumes de données de séries chronologiques et de métadonnées.
- Connaissance fonctionnelle du développement frontend (JavaScript/TypeScript, React ou autres cadres modernes) pour intervenir sur les interfaces de visualisation.
- Atout : Compréhension des flux de travail en apprentissage automatique (PyTorch).
- Maîtrise du français et de l'anglais pour collaborer efficacement au sein de notre laboratoire ainsi que nos partenaires à l’international.
De bonnes raisons pour travailler à Mila
- L’occasion de contribuer à une mission unique avec un impact important;
- Un horaire flexible, un horaire d’été et une possibilité de télétravail;
- Un milieu de travail au cœur de la Petite Italie, dans le quartier branché Mile-Ex, à proximité des transports en commun;
- Une équipe d’experts de leur domaine, des gens passionnés et passionnants;
- Une ambiance de travail collaborative et inclusive.
Nous voulons vous connaître
À Mila, la diversité nous tient à cœur. Nous valorisons un environnement de travail équitable, ouvert et respectueux des différences. Nous encourageons toute personne souhaitant œuvrer dans un écosystème en progression continue et stimulée à contribuer à l’application et la définition d’une culture saine et inclusive, à postuler.
Veuillez noter que seules les personnes sélectionnées seront contactées.
https://mila.quebec/fr/protection-de-la-vie-privee