Sous la responsabilité du Directeur technique, le / la Développeur·euse back-end / full stack est chargé·e de concevoir, de développer et d'assurer la maintenance de solutions logicielles personnalisées qui soutiennent les projets immersifs et interactifs de Float4.
En étroite collaboration avec les équipes de création, de technologie et de production, le / la titulaire de ce poste contribue à l'architecture technique, au développement d'applications web et de CMS, aux intégrations d'API, aux pipelines de déploiement et aux initiatives de R&D. Il / elle participera à toutes les étapes du cycle de vie des projets, de la planification technique et du prototypage jusqu'au déploiement et à l'intégration sur site, tout en assurant la supervision et l'encadrement techniques des partenaires de développement externes afin de garantir que les solutions livrées répondent aux normes, aux exigences et aux objectifs de Float4.
CRITÈRES D’ADMISSIBILITÉ OBLIGATOIRES
Ceci est un poste hybride basé à Montréal, nécessitant une présence au studio trois jours par semaine. Les candidat·e·s doivent résider actuellement au Québec et être légalement autorisé·e·s à travailler au Canada au moment de la candidature.
Les candidat·e·s doivent également posséder un minimum de trois années d’expérience professionnelle en développement de systèmes back-end destinés à des installations multimédias interactives ou des projets de technologies immersives.
Si ces critères ne sont pas remplis à ce jour, merci de ne pas postuler.
RESPONSABILITÉS
DÉVELOPPEMENT DE LOGICIEL
- Concevoir, développer, tester et assurer la maintenance d’applications back-end et full-stack évolutives
- Développer des solutions logicielles sur mesure, des plugins, des API et des intégrations au service des projets de Float4
- Construire et maintenir des systèmes de gestion de contenu (CMS) et des outils web pour les clients et les équipes internes
- Développer des applications pilotées par les données, des tableaux de bord et des systèmes de diffusion de contenu
- Créer des frameworks, des bibliothèques et des composants réutilisables afin d’améliorer l’efficacité du développement sur l’ensemble des projets
- Contribuer au développement d’expériences interactives adaptées aux appareils mobiles et au web, y compris des applications WebAR et Web3D
- Contribuer à l’intégration de logiciels avec des moteurs de rendu, des serveurs multimédias, des périphériques matériels, des capteurs et des systèmes tiers
- Optimiser les performances et la fiabilité des logiciels dans les environnements de production
- Collaborer avec les responsables de la production et de la technologie pour planifier, hiérarchiser et superviser les activités de développement réalisées par des ressources externes
- Coordonner, superviser et contrôler le travail des développeur·euse·s externes, en veillant au respect des objectifs du projet, des normes de codage et des meilleures pratiques de développement
- Réaliser des prototypes et des preuves de concept afin de valider les approches techniques et les stratégies de production
SOLUTION ARCHITECTURE
- Sous la supervision du Directeur technique :
- Si nécessaire, participer aux phases de planification et d'analyse technique des projets
- Évaluer la faisabilité, identifier les risques liés au projet et recommander des solutions et des technologies adaptées
- Définir les architectures logicielles et les stratégies de développement pour les projets interactifs et web
- Estimer les efforts de développement et contribuer à la définition de la portée et à la planification des projets
- Évaluer les technologies, plateformes et intégrations tierces
DÉVELOPPEMENT DE PLATEFORMES WEB & DE CMS
- Concevoir et mettre en œuvre des architectures modernes d'applications web
- Définir et maintenir des piles technologiques, des normes de programmation et des pratiques de développement communes pour les projets web
- Développer et maintenir des bases d'applications, des frameworks et des environnements de déploiement partagés
- Mettre en place des systèmes capables d'intégrer plusieurs sources de données, serveurs multimédias, capteurs et API externes
- Soutenir les initiatives visant à réaliser à l’interne des projets logiciels et CMS de plus grande envergure
DEV OPS, INFRASTRUCTURE & DÉPLOIEMENT
- Configurer et assurer la maintenance des environnements de développement, de préproduction et de production
- Mettre en œuvre et gérer les pipelines CI / CD et les workflows de déploiement
- Gérer l'infrastructure cloud, les serveurs, le réseau et l'hébergement des applications
- Surveiller les performances, la fiabilité et la sécurité des applications
- Planifier et exécuter les déploiements de logiciels, les mises à jour et les processus de mise en production
- Veiller à ce que les solutions logicielles respectent les meilleures pratiques en matière de sécurité et d'exploitation
TECHNOLOGIES INTERACTIVES & TEMPS RÉEL
- Collaborer avec les développeur·euse·s, les artistes techniques et les équipes de production afin de soutenir le développement d’expériences immersives
- Explorer les technologies liées au rendu en temps réel, à la visualisation 3D, au WebGL, aux shaders, aux systèmes d’éclairage et aux pipelines de diffusion multimédia
- Contribuer à des projets portant sur la visualisation de données, la diffusion de contenus interactifs et les systèmes multimédias
- Assurer l’intégration logicielle lors des installations sur site et des phases de mise en service
ASSURANCE QUALITÉ
- Rédiger un code clair, facile à maintenir et bien documenté
- Réaliser des révisions de code et formuler des recommandations concernant les performances, l'extensibilité, la stabilité et la sécurité
- Effectuer des tests, du débogage et du dépannage tout au long du cycle de vie du projet
- Identifier les possibilités d'optimisation et d'amélioration continue
- Résoudre les problèmes affectant les applications existantes et les projets déployés
RECHERCHE & DÉVELOPPEMENT
- Participer aux initiatives de R&D et d'exploration technologique de Float4
- Assurer une veille sur les nouvelles technologies, les frameworks, les pratiques de développement et les tendances de l’industrie
- Évaluer de nouveaux outils et de nouvelles approches susceptibles d'améliorer la qualité, l'efficacité ou les capacités des projets
- Partager ses connaissances et contribuer au développement technique de l'équipe
AUTRES CONSIDÉRATIONS
Des déplacements occasionnels peuvent être requis.
QUALIFICATIONS & COMPÉTENCES REQUISES
- Baccalauréat en informatique, en génie logiciel, ou expérience pratique équivalente
- Au moins 3 à 5 ans d’expérience dans le développement de logiciel back-end ou full-stack
- Connaissances avancées en JavaScript / TypeScript et dans les pratiques modernes de développement web
- Expérience avec Node.js et le développement d’API
- Expérience dans la conception et le développement d’applications web et de systèmes de gestion de contenu
- Solide compréhension de l’architecture logicielle, du multithreading, des réseaux et de l’optimisation des performances
- Expérience de travail avec des bases de données relationnelles et / ou NoSQL
- Expérience des workflows de contrôle de version basés sur Git
- Expérience dans le domaine des installations interactives, des systèmes multimédias ou des expériences immersives
- Maîtrise du français et de l’anglais, tant à l’oral qu’à l’écrit
- La connaissance de l’anglais est requise afin de collaborer avec des partenaires et des ressources externes anglophones, ainsi que pour consulter et préparer, au besoin, de la documentation et des communications de projet en anglais.
ATOUTS
- Maîtrise du C++ et de la programmation orientée objet
- Expérience avec React, Next.js, Vue ou d’autres frameworks front-end similaires
- Expérience avec Docker, Kubernetes ou les environnements conteneurisés
- Expérience avec AWS, Azure ou Google Cloud Platform
- Connaissance des pipelines CI / CD et des pratiques DevOps
- Expérience avec les API REST, les WebSockets, les protocoles TCP / IP, UDP, OSC ou d’autres protocoles de communication en temps réel
- Expérience avec Python, PHP, Go ou d’autres langages back-end
- Connaissance de Unity, Unreal Engine, TouchDesigner, WebGL, Three.js ou d’autres technologies 3D en temps réel
- Connaissance des pipelines de rendu, des shaders, des matériaux, de l’éclairage, de la simulation ou des workflows d’effets visuels
QUALITÉS RECHERCHÉES
- Solides compétences en résolution de problèmes
- Esprit d'analyse, souci du détail et approche structurée du travail
- Excellentes aptitudes en communication et en collaboration
- Capacité à travailler de manière autonome et à s'approprier des solutions techniques
- Ouverture d'esprit, esprit de collaboration et capacité à travailler de manière interdisciplinaire
MODALITÉS D’EMPLOI
- Il s'agit d'un poste permanent à temps plein (40 heures par semaine)
- Politique de travail hybride : 3 jours au bureau et 2 jours à domicile (sur une base hebdomadaire)
Considérant la diversité comme une véritable richesse, Float4 invite les femmes, les Autochtones, les minorités visibles, les minorités ethniques et les personnes handicapées à soumettre leur candidature.
Remarque : Dans le présent document, le masculin est utilisé dans le seul but d’alléger le texte.