Développeur logiciel - systèmes de senseurs ou de communication / Developer for sensor or communication systems
CAE Inc.
Saint-Laurent, QC
Role and Responsibilities

(English will follow)

Êtes-vous passionnés par l’aviation, le développement logiciel, les senseurs ou les systèmes de communication des avions ou des hélicoptères? Que diriez-vous d’un emploi permettant de contribuer significativement à la sécurité aérienne partout dans le monde ?

CAE est un chef de file mondial en formation dans les domaines de l’aviation civile, de la défense et sécurité, et de la santé. Nos équipes d’Ingénierie sont passionnées, innovatrices, créatives et mordues de technologies d’avant-garde. Nos nouveaux environnements de travail sont ouverts et modernes. De plus, nous proposons un horaire de travail flexible avec une possibilité de télétravail. Également, nous offrons plusieurs services, dont une cafétéria offrant un menu varié, un stationnement gratuit, et bien plus ! Afin de faciliter l’intégration des nouveaux employés, nous offrons un programme de mentorat et de formation initiale. Enfin, nous tenons à cœur le sens de l’initiative et l’innovation. Nous valorisons le perfectionnement et le développement de nos employés.

Nous sommes présentement à la recherche de développeurs logiciels pour la simulation et l’intégration des systèmes de senseurs et de communication. Les possibilités et les défis sont nombreux dans ce domaine, allant de l’architecture à la conception, le développement, l’essai, l’intégration, la résolution de non-conformités et la documentation des systèmes simulés.

Les équipe de la grande famille des senseurs et systèmes de communication se concentrent principalement sur les domaines suivants :

Guerre électronique : Grâce à une série de senseurs, le système effectue une analyse passive de l’environnement afin de détecter des signaux radar, des missiles et des lasers qui pourraient être hostiles envers l’aéronef. En cas de danger immédiat, ce système est capable de déployer des contremesures afin de tromper les radars et les missiles.
Électro-optique : Équipé d’une série de caméras et de lasers installés sur une plateforme gyrostabilisée, le système offre au pilote la possibilité de visualiser l’environnement autour de l’aéronef en différentes longueurs d’ondes (couleur, infrarouge et basse visibilité). De plus, ces systèmes peuvent être équipés de différents types de lasers permettant de calculer la distance, de désigner des cibles ou d’illuminer une scène.
Radar : Ce senseur actif construit des images de l’environnement basées sur les réflexions que les ondes radio ont sur les divers objets de l’environnement tel que le relief de terrain, la météo, les bâtiments, les véhicules, les bateaux, les transpondeurs, etc. Certains systèmes offrent également des fonctionnalités plus avancées telles que la génération d’imagerie haute résolution, l’acquisition automatique de contacts ou l’identification de la signature d’un contact.
Sonar : Ces systèmes sont déployés à partir d’hélicoptères, avions, sous-marins et bateaux dans un contexte de lutte anti-sous-marine et anti-mine. Ils permettent la détection des menaces par la présentation visuelle et auditive d’informations sur l’environnement sonore sous-marin. La propagation du son dans l’eau est simulée par des modèles physiques tenant compte de l’environnement océanographique.
Communication : Le système est composé de plusieurs types de radio afin de communiquer dans le monde virtuel. Ce dernier est constitué de différentes balises tel que des tours au sol, des entités qui émettront des signaux d’urgences et plusieurs autres. De plus, le système permet l’utilisation de canaux d’intercoms (de poste à poste dans un appareil), la simulation du repérage par signal radio ainsi que la génération des alarmes du poste de pilotage.

Pour tous ces domaines, l’équipe de développement est responsable de la gestion de l’interface de son ou ses systèmes spécifiques avec la cabine de pilotage (panneaux de contrôles, affichages, cadrans, autres systèmes, etc.), l’environnement virtuel ainsi que, dans le cas de systèmes simulés, de la modélisation du système incluant la logique de mise sous tension, les systèmes de diagnostic en continu, les défaillances prédéfinies, les connexions électriques, les modes d’opération, etc.

Principales responsabilités :
Participer à la conception des solutions logicielles et matérielles afin de reproduire fidèlement le comportement de l’avion en tenant compte des exigences du client.
Développer en C++ des solutions logicielles permettant la simulation des différents systèmes simulés, ou l’interface des systèmes matériels.
Participer aux revues de code de ses pairs.
Élaborer des tests systèmes et des tests unitaires permettant la validation automatique de la modélisation.
Intégrer les composantes logicielles et matérielles de son équipe avec les autres composantes nécessaires à la fabrication d’un simulateur complet.

Exigences :
Baccalauréat en génie logiciel, informatique, électrique ou physique.
Personne dynamique axée sur les résultats ayant un fort esprit d'équipe et un bon sens de l'initiative.
Bon sens de l'organisation et de la planification.
Bonne capacité d’analyse, d’adaptation et de résolution de problème.
Bonnes compétences en communication (à l'oral et à l'écrit).
La connaissance du langage de programmation C++ est essentielle.
Expérience au niveau des diverses composantes logicielles : systèmes d’opération (Windows, Linux), micro-processeurs (Intel), pilotes et microprogrammes, communications interprocessus et intergiciels de protocole réseau (TCP/IP, Windows Sockets, UDP, etc.).
La connaissance du domaine des senseurs et/ou des communications, un atout.
La connaissance des cartes de son professionnelles et de l’audio analogique/numérique, un atout.
La connaissance de UML est essentielle.
La connaissance de la programmation en temps réel, un atout.
La connaissance de la méthodologie Agile, un atout.
La connaissance des tests unitaires et tests systèmes automatisés, un atout.
Bilinguisme (français et anglais), un atout.
Possibilité de voyages d'affaires occasionnels vers des destinations mondiales

Are you passionate about aviation, software development and aircraft and helicopter sensor and communication systems? What would you say to a job that allows you to make a significant contribution to global air safety?

CAE is a global leader in training for civil aviation, defence and security, and healthcare markets. Our engineering teams are passionate, innovative, creative and enthusiastic about cutting‑edge technology. Our new work environments are open and modern. Moreover, we offer a flexible work schedule with the possibility of teleworking. We also offer several services, including a cafeteria with a varied menu, free parking and much more! To help integrate new employees, we offer a mentorship program and beginner training. Lastly, we greatly value initiative and innovation. We emphasize employee development.

We are looking for software developers for the simulation and integration of sensor and communication systems. There are many opportunities and challenges in this field, ranging from architecture to design, development, testing, integration, resolution of non-compliance and documentation of simulated systems.

The teams in the big sensor and communication systems family focus primarily on the following areas:

Electronic warfare: With a series of sensors, the system performs a passive analysis of the environment to detect radar signals, missiles and lasers that may be hostile to the aircraft. In case of immediate danger, this system can deploy counterattacks to jam the radars and missiles.
Electro-optics : Equipped with a series of cameras and lasers installed on a gyro stabilized platform, the system enables the pilot to view the environment around the aircraft in different wavelengths (colour, infrared and low visibility). These systems may also be equipped with different types of lasers for calculating distance, designating targets or illuminating the surroundings.
Radar: This active sensor builds images of the environment based on the reflections that radio waves have on various objects in the environment, such as the terrain, weather formations, buildings, vehicles, boats, transponders, etc. Some systems also provide more advanced functions, such as the generation of high‑resolution images, automated contact acquisition or identification of a contact signature.
Sonar : These systems are deployed from helicopters, aircraft, submarines and boats for anti‑submarine warfare and mine countermeasures. They make it possible to detect threats through the visual and auditory presentation of information on the sub‑marine sound environment. Sound propagation in water is simulated with physical models that account for the oceanographic environment.
Communication : The system is composed of several types of radio to communicate in the virtual world. This consists of various beacons, such as towers on the ground, entities that issue emergency signals and several others. Furthermore, the system makes it possible to use intercom channels (peer‑to‑peers in a device), simulate tracking by radio signals and generate alarms from the cockpit.

For all of these areas, the development team is responsible for managing the interface of sound or its specific systems with the cockpit (control panels, displays, gauges, other systems, etc.), the virtual environment and, in the case of simulated systems, the modelling of the system, including the powering‑up logic, continuous diagnostic systems, pre‑defined faults, electrical connections, modes of operation, etc.

Main responsibilities:
Participate in designing software and hardware solutions that faithfully reproduce the aircraft’s behaviour, taking into account the customer’s requirements
Develop software solutions in C++ for the simulation of various systems or the interface of hardware systems
Participate in peer code reviews
Develop system and unit tests for automated validation of modelling
Integrate the team’s software and hardware components with the other components required to build a complete simulator

Requirements:
Bachelor’s degree in software, computer, electrical or physical engineering
Dynamic team player with a sense of initiative and focus on results
Good planning and organizational skills
Ability to analyze, adapt and solve problems
Good oral and written communication skills
Knowledge of the C++ programming language is essential
Experience with various software components: operating systems (Windows, Linux), microprocessors (Intel), drivers and firmware, interprocess communication and network protocol middleware (TCP/IP, Windows Sockets, UDP, etc.)
Knowledge of communications and/or sensors field, an asset
Knowledge of professional sound cards and analogue/digital audio, an asset
Knowledge of UML is essential
Knowledge of real‑time programming, an asset
Knowledge of Agile methodology, an asset
Knowledge of unit testing and automated system testing, an asset
Bilingualism (French and English), an asset
Possibility of occasional business trips to locations around the world

Position Type

Regular

CAE thanks all applicants for their interest. However, only those whose background and experience match the requirements of the role will be contacted.

Equal Employment Opportunity

At CAE, everyone is welcome to contribute to our success. With no exception.

As captured in our overarching value "One CAE" (one passionate and inclusive team), we’re proud to work as one passionate, boundaryless and inclusive team.

At CAE, all employees are welcome regardless of race, nationality, colour, religion, sex, gender identity or expression, sexual orientation, disability or age.

The masculine form may be used in this job description solely for ease of reading, but refers to men, women and the gender diverse.