Résumé du poste
Nous sommes à la recherche d’un(e) Developpeur senior des systèmes logiciels hautement qualifié(e) pour agir à titre d’expert(e) technique au sein de notre écosystème applicatif. Ce poste combine une solide expertise en génie logiciel à une connaissance approfondie des plateformes technologiques afin de soutenir la réussite des déploiements, de valider la préparation à la mise en production, de résoudre des problèmes techniques liés aux versions et aux déploiements, et de garantir que les systèmes critiques sont prêts pour un lancement réussi en production.
L’ingénieur(e) principal(e) des systèmes logiciels travaillera à travers l’ensemble de la pile technologique et collaborera étroitement avec les équipes de développement logiciel, d’assurance qualité (QA), de DevOps, d’infrastructure, de gestion de produits et de soutien à la clientèle. Cette personne jouera un rôle clé dans la préparation à la production, l’exécution des déploiements, la validation des versions, le leadership technique, l’analyse des causes fondamentales et l’amélioration continue de la plateforme avant et pendant les activités de mise en production.
La personne idéale possède une solide expérience du développement en Java et en TypeScript, une bonne connaissance des environnements infonuagiques et des réseaux ainsi qu’une passion pour la résolution de défis techniques complexes touchant les logiciels, l’infrastructure, les intégrations et les environnements clients réels.
Principales responsabilités
Génie logiciel et ingénierie des systèmes
- Agir à titre d’expert(e) technique pour la plateforme applicative et les systèmes connexes.
- Assurer le leadership technique principal lors des déploiements et des mises en production.
- Participer aux discussions de conception logicielle et aux revues d’architecture.
- Collaborer avec les équipes de développement afin de diagnostiquer, déboguer et résoudre des problèmes applicatifs complexes.
- Analyser le code des applications, les services, les API et les intégrations afin d’identifier les défauts et les goulots d’étranglement liés aux performances.
- Développer et mettre en œuvre des améliorations logicielles, des correctifs, des solutions d’automatisation et des améliorations d’outillage lorsque nécessaire.
- Soutenir les activités de tests, de validation des déploiements et de préparation aux mises en production.
Préparation des versions, déploiement et leadership lors des mises en production
- Agir à titre de responsable technique lors des implantations clients, des déploiements et des mises en production.
- Assurer la préparation des applications et des services de soutien avant leur mise en production.
- Coordonner les activités de déploiement entre plusieurs équipes d’ingénierie.
- Identifier et atténuer les risques techniques associés aux versions et aux changements de plateforme.
- Servir de principal point d’escalade technique lors d’activités critiques de déploiement, de validation des versions et de mise en production.
Dépannage et analyse des causes fondamentales
- Diriger les enquêtes liées à des problèmes complexes touchant les applications et les systèmes.
- Analyser les journaux (logs), les métriques, les traces et les données de surveillance afin d’identifier les causes racines.
- Diagnostiquer les problèmes touchant les logiciels, l’infrastructure, les réseaux, les services infonuagiques et les intégrations de tiers.
- Assurer la résolution rapide des problèmes liés aux déploiements, des constats de validation des versions et des enjeux critiques identifiés lors des implantations et des mises en production.
- Participer aux rétrospectives de versions et recommander des améliorations aux processus de déploiement, à la préparation des applications et aux procédures opérationnelles.
Leadership technique interfonctionnel
- Collaborer avec les équipes de développement logiciel, DevOps, infrastructure, assurance qualité, produit et soutien.
- Coordonner les efforts de plusieurs équipes d’ingénierie afin de résoudre des défis techniques complexes.
- Fournir du mentorat et des conseils techniques aux ingénieurs relativement au débogage, au dépannage et à la conception de systèmes.
- Favoriser l’amélioration de la fiabilité, des performances, de l’évolutivité et de la maintenabilité de la plateforme.
- Contribuer à l’établissement des meilleures pratiques d’ingénierie en matière de déploiement, de surveillance et d’excellence opérationnelle.
Validation des versions et préparation opérationnelle
- Valider la préparation des applications avant leur déploiement en production.
- Vérifier l’infrastructure, les intégrations, les configurations et les dépendances liées aux déploiements.
- Soutenir les activités de validation des versions et les essais d’acceptation de la production.
- Identifier et documenter les risques opérationnels avant le lancement chez le client.
- Maintenir la documentation technique, les procédures de déploiement et les guides opérationnels (runbooks).
- Collaborer avec les équipes d’ingénierie afin d’améliorer la fiabilité des déploiements et la qualité des mises en production.
Qualifications requises
- Baccalauréat en informatique, en génie logiciel, en systèmes d’information ou dans un domaine connexe, ou expérience équivalente.
- Minimum de cinq (5) années d’expérience en génie logiciel, ingénierie des systèmes, ingénierie de plateforme ou dans un rôle technique similaire.
- Solide expérience du développement et du soutien d’applications basées sur Java.
- Expérience avec TypeScript et les technologies Web modernes.
- Excellentes compétences en dépannage et en débogage dans des systèmes distribués.
- Expérience en validation, déploiement, dépannage et soutien d’applications lors de mises en production et d’activités de lancement.
- Connaissance pratique des services infonuagiques AWS et des architectures infonuagiques modernes.
- Bonne compréhension des principes fondamentaux des réseaux, des API, des intégrations de services et des modèles de communication applicative.
- Connaissance des pratiques DevOps, des pipelines CI/CD et des processus de déploiement.
- Expérience dans l’analyse des journaux, des métriques et des données de surveillance afin de résoudre des problèmes techniques.
- Excellentes aptitudes de communication et de collaboration auprès d’intervenants techniques et non techniques.
Qualifications privilégiées
- Expérience avec les technologies VoIP, les télécommunications, les communications en temps réel ou les plateformes technologiques de sécurité publique.
- Expérience avec les architectures infonuagiques natives (« cloud-native ») ou basées sur des microservices.
- Connaissance des plateformes d’observabilité et de surveillance.
- Expérience avec les environnements conteneurisés et les technologies d’orchestration.
- Expérience démontrée dans la direction de déploiements en production, d’activités de préparation aux versions, d’implantations clients et de mises en production.
- Expérience en mentorat de développeurs ou en leadership technique auprès de plusieurs équipes.
À quoi ressemble le succès dans ce rôle
- Agit comme l’expert(e) technique de confiance pour l’ensemble de la plateforme applicative.
- Dirige avec succès les activités techniques liées aux implantations clients et aux mises en production.
- Identifie et résout rapidement les problèmes techniques complexes survenant lors de la validation des versions, des déploiements et des mises en production.
- Contribue à l’amélioration de la qualité des déploiements, de la prévisibilité des versions, de la préparation de la plateforme et du succès des lancements en production.
- Aide les équipes d’ingénierie à livrer des solutions logicielles de grande qualité avec confiance.
- Développe de solides partenariats avec les équipes de développement, d’infrastructure, d’assurance qualité et de gestion de produits.
Position SummaryWe are seeking a highly skilled Senior Software Systems Engineer to serve as a technical subject matter expert across one of our most updated and crucial 911 call taking applications. This role combines software engineering expertise with deep platform knowledge, helping drive successful deployments, validate production readiness, resolve pre-release and deployment-related technical issues, and ensure mission-critical systems are prepared for successful production launch.The Senior Software Systems Engineer will work across the full technology stack and partner closely with Software Development, QA, DevOps, Infrastructure, Product Management, and Customer Support teams. This individual will play a key role in production readiness, deployment execution, release validation, technical leadership, root cause analysis, and continuous platform improvement prior to and during production launch activities.The ideal candidate possesses strong Java and TypeScript development experience, solid cloud and networking knowledge, and a passion for solving complex technical challenges that span software, infrastructure, integrations, and real-world customer environments.
Key Responsibilities
Software & Systems Engineering• Serve as a technical subject matter expert across the application platform and supporting systems.• Serve as the primary technical lead during deployments and go-live events.• Contribute to software design discussions and architectural reviews.• Partner with development teams to troubleshoot, debug, and resolve complex application issues.• Analyze application code, services, APIs, and integrations to identify defects and performance bottlenecks.• Develop and implement software enhancements, bug fixes, automation, and tooling improvements when needed.• Support testing, deployment validation, and release readiness activities.
Release Readiness, Deployment & Go-Live Leadership• Act as the technical lead for customer implementations, deployments, and go-live events.• Ensure production readiness of applications and supporting services prior to release.• Coordinate deployment activities across multiple engineering teams.• Identify and mitigate technical risks associated with releases and platform changes.• Serve as a primary technical escalation point during critical deployment, release validation, and go-live activities.
Troubleshooting & Root Cause Analysis• Lead investigations into complex application and system issues.• Analyze logs, metrics, traces, and monitoring data to identify root causes.• Troubleshoot issues across software, infrastructure, networking, cloud services, and third-party integrations.• Drive timely resolution of deployment-related issues, release validation findings, and critical issues identified during implementation and go-live activities.• Participate in release retrospectives and recommend improvements to deployment processes, application readiness, and operational procedures.
Cross-Functional Technical Leadership• Collaborate with Software Development, DevOps, Infrastructure, QA, Product, and Support teams.• Coordinate efforts across multiple engineering teams to resolve complex technical challenges.• Provide guidance and mentorship to engineers on debugging, troubleshooting, and system design.• Drive improvements in platform reliability, performance, scalability, and maintainability.• Help establish engineering best practices for deployment, monitoring, and operational excellence.
Release Validation & Operational Readiness• Validate application readiness prior to production deployment.• Verify infrastructure, integrations, configurations, and deployment dependencies.• Support release validation and production acceptance testing activities.• Identify and document operational risks before customer launch.• Maintain technical documentation, deployment procedures, and release runbooks.• Partner with engineering teams to improve deployment reliability and release quality.
Required Qualifications
• Bachelor's degree in Computer Science, Software Engineering, Information Systems, or related field, or equivalent experience.• 5+ years of experience in Software Engineering, Systems Engineering, Platform Engineering, or a related technical role.• Strong experience developing and supporting Java-based applications.• Experience working with TypeScript and modern web appli