
Ingénieur en logiciels / Software Engineer
- Longueuil, QC
- Permanent
- Temps-plein
- Effectuer du génie logiciel pour élaborer, intégrer, mettre à l’essai et maintenir les applications du système terrestre pour CHORUS-C.
- Travailler avec l’équipe et le propriétaire du produit à l’élaboration d’une feuille de route pour le produit.
- Identifier les domaines d’amélioration des programmes actuels et élaborer par la suite ces modifications (par exemple, améliorer les performances, l’automatisation...).
- Interagir avec les équipes opérationnelles pour soutenir l’intégration et l’essai des applications dans l’environnement opérationnel et de développement.
- Gestion des versions du cycle de vie de l’API
- Travailler en étroite collaboration avec nos équipes d’exploitation et de production pour fournir un soutien de niveau 3 en temps réel.
- Documenter les différentes phases de développement du logiciel (par exemple, plan d’essai et de maintenance).
- Maintenir, mettre à jour et améliorer l’environnement de développement ainsi que tous les systèmes nécessaires (base de données, transferts de fichiers, etc.).
- Gérer et documenter les bogues et les problèmes
- Soutien d’autres applications du système terrestre
- Développement d’outils pour soutenir la maintenance et l’automatisation du système
- Soutien à la recherche et à la résolution des problèmes liés à la base de données et au système
- Autres tâches en fonction des besoins, des priorités et des compétences.
- Diplôme d’études supérieures (B.Sc., M.Sc. ou équivalent) en informatique, en génie informatique ou dans une discipline connexe. Un diplôme en informatique et de l’expérience seront également pris en considération.
- Minimum de trois ans d’expérience en développement de logiciels
- Connaissance approfondie de Java à l’aide de maven (y compris Spring framework et Hibernate).
- Maîtrise de la conception et du développement d’une plateforme REST API, conversion de services web de SOAP à REST ou vice-versa.
- Expérience de SQL (SQL Server, PostgreSQL),
- Expérience de la rédaction de scripts (python, perl, bash, javascript, powershell).
- Expérience des processus Agile
- Connaissance des systèmes d’exploitation Windows et Linux
- Capacité à résoudre des problèmes et à travailler dans un environnement opérationnel pouvant présenter d’importantes contraintes de temps, de procédure et de sécurité.
- Une expérience avec XML, SVN, Git, Jira et Jenkins serait un atout.
- La connaissance du développement C++, des normes et des spécifications est un atout.
- Expérience du système de messagerie Kafka
- Expérience avec un système de gestion de flux de travail
- Expérience du déploiement et de l’orchestration de conteneurs (Docker, Kubernetes, etc.)
- Expérience dans la création, la mise à jour et la gestion d’images Docker
- Expérience dans la création et la mise à jour de pipelines CI/CD
- Expérience dans la création de documentation d’API REST à l’aide de Swagger et YAML ou d’outils similaires souhaitable.
- Expérience avec AWS ou d’autres infrastructures infonuagiques
- Connaissance de MongoDB
- Bon esprit d’équipe et excellentes aptitudes à la communication écrite et orale.
- Souci du détail et volonté d’approfondir les données.
- Esprit d’initiative, suivi et excellentes capacités d’organisation.
- Une connaissance préalable des satellites (par exemple, système au sol, fonctionnement, orbite...) est un atout.
- Les candidats retenus doivent obtenir et détenir une autorisation de sécurité au niveau de la cote de fiabilité
- Le reclassement au niveau secret et l’évaluation de la sécurité pour le programme des marchandises contrôlées peuvent être nécessaires en fonction du projet additionnel sur lequel le candidat travaille.
- Bien qu’il soit possible de travailler deux jours en télétravail, il est prévu que le candidat travaille sur place.
- Perform software engineering to develop, integrate, test and maintain ground system applications for CHORUS-C
- Work with the Team and Product Owner in shaping a product roadmap
- Identifying areas for improvement in existing programs and subsequently developing these modifications (e.g., improving performance, automation ...)
- Interact with operation teams to support application integration and testing within operational and development environment
- API lifecycle release management
- Work intimately with our operations and production teams to provide Level 3 support in real time.
- Document the various software development phases (e.g., test and maintenance plan).
- Maintain, update and improve the development environment as well as all the needed systems (database, file transfers etc …)
- Manage and document bugs and issues
- support of other different Ground System applications
- Tools development to support system maintenance and automation
- Support investigation and fix of database and system issue
- Other duties as needs, priorities, and skills allow.
- Completed post-secondary education (B.Sc., M.Sc. or equivalent) in Computer Science, Computer Engineering or related discipline. IT Diploma and experiences will also be considered.
- minimum 3 years related experience in software development
- In depth knowledge of Java using maven (including Spring framework and Hibernate)
- Proficient with design and development of REST API platform, converting web services from SOAP to REST or vice-versa.
- Experience of SQL (SQL server, PostgreSQL),
- Experience in scripting (python, perl, bash, javascript, powershell).
- Experience with Agile processes
- Knowledge of Windows and Linux OS
- Able to solve problems and ability to work in an operational environment that might have important time, procedural and security constraints.
- Experience with XML, SVN, Git, Jira and Jenkins would be an asset.
- Knowledge of C++ development, standards and specifications would be an asset
- Experience with Kafka messaging system
- Experience with workflow management system
- Experience deploying to and orchestrating containers (Docker, Kubernetes, etc.)
- Experience building, updating and managing Docker Images
- Experience building and updating CI/CD pipelines
- Experience in creating REST API documentation using Swagger and YAML or similar tools desirable
- Experience with AWS or other cloud infrastructure
- Knowledge of MongoDB
- Good team player with excellent written and verbal communication skills.
- Attention to detail and desire to probe further into data
- Initiative, follow-through and excellent organizational skills.
- prior satellite related knowledge (e.g., ground system, operation, orbit ...) is an asset
- Successful candidates must obtain and hold security clearance at the reliability status level
- Upgrade to secret status level and security assessment for the Controlled Goods Program (CGP) might be needed depending on additional project being worked on
- While there might be possibility for 2 days work from home, it is expected the candidate to work on site.