- Salary To be discussed
-
Published since 4 day(s)
-
1 position to fill as soon as possible
Description
La personne titulaire de ce poste joue un rôle important dans la conception, le développement et l’évolution à long terme des applications intégrales de niveau production du secteur du transport du CN. Bien que le ou la titulaire du poste privilégie fortement les interfaces Web iOS et Android natives conçues avec Angular, cette personne est également responsable des décisions techniques touchant l’ensemble des applications, notamment les systèmes d’interaction, les services dorsaux et les intégrations.
Au-delà de la prestation de fonctionnalités au quotidien, la personne titulaire du poste sert également d’autorité technique tout au long du cycle de vie des applications, assurant l’évolutivité, la sécurité et la viabilité des solutions. Ce travail exige une compréhension pratique et fonctionnelle des plateformes dorsales, des intégrations système et des environnements opérationnels pour que les décisions touchant les systèmes frontaux et mobiles respectent les contraintes liées aux architectures et aux plateformes à long terme.
Principales responsabilités Développement de logiciels· Fournir un leadership technique pratique en ce qui a trait aux systèmes d’interaction du secteur du transport du CN, en guidant les décisions de mise en œuvre technique, en assurant la qualité et la cohérence des solutions et en harmonisant les travaux de développement avec les modèles de solution établis, les normes de développement et les pratiques exemplaires d’ingénierie
· Concevoir, développer et maintenir les applications en mettant d’abord l’accent sur la mobilité, en livrant des applications iOS et Android natives et des solutions Web avec Agular et en fournissant du soutien pour les composantes dorsales tout en veillant à ce que le code soit de qualité, facile à maintenir et prêt pour la production tout au long du cycle de vie des applications
· Établir et diriger des stratégies de gestion du cycle de vie des applications en maintenant les technologies à jour, en planifiant et en exécutant les initiatives de modernisation et de remaniement, en gérant la dette technique de manière transparente, et en évaluant les risques liés au cycle de vie dans le but de faciliter la maintenabilité à long terme et la stabilité opérationnelle
· Assurer la préparation à la production et la fiabilité opérationnelle en participant aux déploiements, en validant les capacités de surveillance et d’alerte et en résolvant les problèmes de production en privilégiant la stabilité, l’observabilité et l’amélioration continue
· Renforcer les pratiques de livraison Agile en assurant une collaboration efficace, en faisant du coaching, en soutenant les cérémonies Scrum, en coordonnant les activités des sprints et en vérifiant les codes pour assurer la conformité aux normes de qualité d’ingénierie et de livraison
Leadership technique· En tant qu’autorité technique tout au long du cycle de vie des applications, prendre des décisions clés quant à la mise en œuvre et aux technologies en équilibrant l’expérience utilisateur, l’intégration dorsale, les contraintes au niveau des plateformes, l’évolutivité, la sécurité et la maintenabilité à long terme
· Encadrer et guider les développeurs et les spécialistes en fournissant des conseils techniques au quotidien tout en coordonnant l’exécution Scrum par l’affectation des tâches, la planification des sprints, la priorisation et l’orientation de la résolution de problèmes au sein des équipes de livraison Agile
· Établir et renforcer les normes de qualité d’ingénierie en faisant la promotion de codes épurés, de modèles de conception stables et de solutions maintenables dans les applications mobiles et Web au moyen de vérifications, de coaching et d’exemples
· Assurer la préparation à la production et la qualité des solutions de bout en bout en supervisant les stratégies de test et de validation, en coordonnant les activités de préparation des nouvelles versions et en soutenant les processus de gestion des changements afin de confirmer que les solutions respectent les exigences fonctionnelles, non fonctionnelles et opérationnelles
· Communiquer les problèmes techniques complexes et les risques pour la livraison à la direction, notamment aux équipes de gestion des produits et de direction des projets et aux intervenants principaux, en traduisant les détails techniques en répercussions, en options et en plans d’action clairs
Conditions de travailCe poste prévoit des conditions de travail standard dans un bureau et un horaire de travail normal du lundi au vendredi. La personne titulaire du poste doit être disponible à l’occasion pour travailler en dehors des heures normales de travail afin d’intervenir en cas de problèmes affectant les logiciels et de respecter les calendriers de livraison. En raison de la nature du poste, la personne qui l’occupe doit être en mesure de respecter des échéanciers serrés, de bien tolérer la pression et de gérer le stress.
Exigences ExpérienceDéveloppement de logiciel
· De 10 à 15 ans d’expérience de travail générale
· De 5 à 10 ans d’expérience pertinente du développement de logiciels et des méthodologies Scrum
· Au moins 5 ans d’expérience dans des fonctions nécessitant des qualités de leadership technique ou de supervision des livrables
o Expérience de travail avec des fournisseurs et des sous-traitants, et de la gestion de personnel externe
Formation, certification et désignation· Baccalauréat en informatique, en génie logiciel ou en technologie de l’information
Compétences· Jugement et esprit critique : applique un jugement indépendant à des situations techniques et de livraison complexes, en évaluant les options, les risques et les incidences à long terme plutôt qu’en se concentrant uniquement sur les résultats à court terme
· Collaboration et esprit de coaching : travaille efficacement au sein des équipes de livraison, en mettant l’accent sur la collaboration, le partage des connaissances et l’amélioration continue tout en acquérant une maturité technique générale
· Influence sans autorité directe : influence les équipes, les fournisseurs et les parties prenantes en usant de son expertise, de sa crédibilité et de son raisonnement clair plutôt que de sa position d’autorité
· Leadership et capacité d’adaptation face au changement : s’adapte aux exigences, aux technologies et aux priorités changeantes de façon contrôlée et délibérée
· Communication claire et efficace : communique les problèmes techniques complexes, les risques et les plans d’action de manière efficace aux équipes de direction des produits et des projets et à la haute direction
· Connaissance de l’entreprise et du domaine : comprend le contexte et les priorités opérationnelles du secteur du transport du CN et utilise ces connaissances pour informer les décisions techniques
Connaissances et compétences techniques· Connaissance approfondie du développement d’applications iOS et Android, notamment l’utilisation d’environnements de développement intégré et d’émulateurs (p. ex. Xcode, Android Studio) pour le débogage avancé, l’intégration avec modules d’appareils et l’interaction avec les API au niveau des plateformes
· Grande efficacité dans la création d’applications Web avec Angular en utilisant les architectures TypeScript, de composant modulaire et de services, ainsi que dans les intégrations d’API robustes avec un accent sur la conception adaptative, la performance et la compatibilité entre les appareils
· Solide compréhension des architectures de microservices et des modèles d’intégration dorsaux; une expérience pratique des technologies telles que Java, Node.js et de développement d’API RESTful est considérée comme un atout
· Habilité éprouvée à intégrer des applications mobiles et Web aux services de plateformes, y compris les couches BFF/BaaS, les fournisseurs de services d’authentification et d’identité et les intégrations de services infonuagiques (p. ex. Firebase, Google Cloud, Microsoft Entra ID)
· Connaissance des principes DevSecOps et expérience de travail avec les pipelines basés sur YAML et sur modèle dans Azure DevOps, notamment une certaine connaissance des principes de gouvernance d’intégration continue et de livraison continue, des flux d’approbation et des contrôles de déploiement
· Leadership technique démontré au-delà du développement de fonctionnalités au quotidien pour influencer la conception de solutions, guider les décisions techniques stratégiques et façonner l’évolution à long terme et le développement durable des applications
· Solide connaissance des pratiques Agile et Scrum, notamment la capacité de fournir du coaching aux développeurs, de contribuer à la planification des sprints et aux cérémonies et d’effectuer des vérifications du code pour renforcer les normes de qualité d’ingénierie et de livraison
· Maîtrise du français et de l’anglais à l’oral et à l’écrit*
* Toute connaissance dans l’un des domaines ci-dessus constitue un atout.
Ce poste est affiché comme étant de niveau 9
Requirements
undetermined
undetermined
undetermined
undetermined
undetermined
Other Canadian National Railway's offers that may interest you