Description:
Récapitulatif de la description d'emploi
Nous cherchons un(e) Analyste-programmeur(euse) – Java pour la Direction Guichet unique, Cadres, outils et pratiques de développement. Vous aurez à travailler sur des frameworks et fondations de développement Java utilisés par une grande partie des équipes de développement chez le client.
Vous devrez analyser comment les différentes équipes travaillent afin de concevoir, faire évoluer et maintenir des composants réutilisables, répondre aux besoins émergents, autant que les différents standards de l'entreprise dont la sécurité.
Vous serez également impliqué(e) dans le maintien et l’évolution des outils de développement, IDE, frameworks et chaînes de livraison utilisées par les équipes. Une vigie technologique constante fait partie intégrante du rôle, en collaboration avec les autres membres de l’escouade. Vous travaillerez étroitement avec le responsable de produit afin de planifier et supporter les activités futures liées au développement.
Toujours dans l'objectif du mandat de la direction, vous contribuerez au sein du groupe à proposer et à développer des solutions innovantes permettant aux équipes de développement logiciel d’atteindre un haut niveau d’agilité et de productivité.
Nous sommes à la recherche d’une personne organisée, rigoureuse, ayant une grande capacité à vulgariser des concepts techniques complexes.
Description d'emploi
Responsabilités principales
· Participer aux développements, évolutions et modernisations des solutions d’affaires.
· S’assurer de la qualité, de la sécurité et de la résilience applicative des solutions qu’il code.
· Participer activement aux revues de code avec une checklist (lisibilité, tests, sécurité, performance, maintenabilité).
· Participer aux activités DevOps incluant la livraison continue, l’observabilité, l’exploitation et la mise à jour des solutions.
· Contribuer à la mise en place et à l’amélioration des pipelines CI/CD.
· Intégrer les principes DevSecOps en appliquant systématiquement les bonnes pratiques de sécurité et en automatisant la détection des vulnérabilités.
· Proposer des solutions techniques alignées aux objectifs d’affaires et en partager l’imputabilité.
· Effectuer le développement complet des produits logiciels : conception, codification, tests, automatisation, documentation et exploitation.
· Automatiser les essais (ex. : pyramide des tests, TDD, BDD) et porter l’imputabilité de leur stabilité.
· Documenter les solutions techniques et les pratiques pour assurer la pérennité et la maintenabilité des produits.
· Participer à la vigie des technologies, incluant les tendances en IA générative, infonuagique et outils de développement modernes; partager les meilleures pratiques au sein de l’équipe.
· Travailler en cocréation avec les partenaires d’affaires pour bien comprendre les enjeux et réaliser des solutions alignées aux intentions et objectifs d’affaires.
· Comprendre l’application des technologies infonuagiques, des architectures modernes et des outils IA dans le développement de solutions d’affaires, et les faire progresser pour améliorer la vélocité et la qualité de livraison.
· Utiliser de façon appropriée l’intelligence artificielle générative dans les activités de développement (génération de code, documentation, analyse, validation), tout en respectant les pratiques et politiques internes.
Requirements
Profil recherché
· Baccalauréat dans une discipline appropriée
· Minimum de six (6) ans d’expérience pertinente
· Expérience solide en développement Java
· Veuillez noter que d’autres combinaisons de formation et d’expérience pertinentes pourraient être considérées
· Pour les postes situés au Québec, la connaissance du français est requise
Connaissances spécifiques
· Maîtrise des concepts orientés objet et fonctionnels.
· Capacité à identifier et appliquer les bonnes pratiques logicielles (Clean Architecture, Clean Code, Design Patterns).
· Capacité à concevoir des architectures logicielles efficaces, modulaires, flexibles, résilientes et simples.
· Connaissances de base en DevOps, DevSecOps, CI/CD, automatisation et observabilité
· Compréhension de l’infonuagique et des modèles modernes de livraison logicielle.
· Connaissances en résilience applicative (gestion des erreurs, redondance, stratégies de reprise, patterns de résilience).
· Notions de conteneurisation et de diagnostic en environnement cloud (logs, métriques, traces de base).
· Curiosité, capacité à se remettre en question et volonté d’apprentissage continu.
· Capacité à identifier les problèmes, les blocages et à proposer des solutions réalisables.
· Organisation, rigueur et gestion efficace des priorités.
· Leadership positif, capacité à rallier l’équipe à une vision technique et à se conformer lorsqu’exigé.
· Esprit d’équipe et collaboration active.
· Capacité de communication et de vulgarisation.
· Capacité à utiliser de façon professionnelle l’IA générative comme outil de productivité en développement