Go back to the search
Thales Canada

Embedded Systems Developer

Thales Canada

View all the job opportunities for this company

Embedded Systems Developer

Québec City, QC (On-Site) – Office/Client

Job Summary

Working as a Senior Embedded Systems Developer at Thales Digital Solutions, you will be paired with a dynamic and growing team composed of engineers and scientists with highly diverse knowledge and skills. Our team specializes in the cyber analysis of embedded systems and the development of countermeasures.

Our mandate is to ensure that Thales' critical solutions and those of our clients are resilient against potential cyber attacks. We therefore ensure the protection of various critical operational technologies and Industrial IoTs such as vehicles, airplanes, boats, and satellites. We thus have a concrete and very real impact on the security of these critical systems.

As an Embedded Systems Developer at Thales Digital Solutions:

  • As an embedded systems developer, you will have the responsibility of developing, deploying, and delivering software that can be deployed on embedded systems or allowing communication with embedded systems in collaboration with clients;
  • Work in close collaboration with multidisciplinary, dynamic, and growing teams that specialize in the hardware security analysis of embedded systems and the development of countermeasures whose mandate is to ensure that Thales' critical solutions and those of clients are resilient against potential cyber attacks as well as ensuring the protection of various critical operational technologies and Industrial IoTs like vehicles;
  • As an embedded systems developer, you will have a concrete and very real impact on the security of these critical systems.

Essential Functions

  • Participate in software or hardware "reverse engineering" of certain embedded systems to understand their operation and identify potential vulnerabilities;
  • Perform penetration tests on embedded systems;
  • Develop and assemble test benches to perform cybersecurity tests;
  • Perform tests to confirm vulnerabilities (observation or destructive);
  • Develop tools allowing communication with or analysis of the behavior of embedded systems;
  • Design, program, and test software that can be deployed on embedded systems;
  • Participate in the smooth running of activities within an Agile team (Sprint Planning, Daily Meeting, Sprint Review, and Sprint Retrospective);
  • Document and effectively communicate the results of tests performed;
  • Perform all of these tasks in compliance with the team's best practices.

Minimum Requirements

  • Bachelor's degree (or higher) in computer science, electronics, or any other related and relevant field;
  • Knowledge of scripting languages (Python, Bash, PowerShell) and programming languages (C/C++, C#, etc.);
  • Knowledge of embedded programming software (Keil, STM32CubeIDE, etc.);
  • Understanding of the internal workings of a microcontroller and internal peripherals (IO, DMA, Timers, PLL, ADC, DAC, etc.);
  • Understanding of low-level protocols (I2C, SPI, Serial, CAN, etc.);
  • Experience in the design and manufacturing of electrical circuits is an asset but not a requirement;
  • Good command of spoken and written French; mastery of English is an asset but not a requirement.

This position requires a good knowledge of English for drafting technical documents, interacting with, supporting, and/or providing services to international clients, employees, and/or partners, as well as to foreign government authorities who do not speak French.

Desirable Qualifications

  • Have an interest in the field of cybersecurity;
  • Experience in the hardware security of embedded system components;
  • Analysis of side-channel leaks or fault injection on embedded systems to evaluate and validate hardware security at the component level;
  • Experience with physical reading or probing techniques at the component level;
  • Knowledge of disassembler software like IDA/Ghidra is an asset;
  • A strong sense of code quality and good programming and architecture practices is desired;
  • Having experience with Agile development methods (Scrum, Kanban) is an asset;
  • Having an interest in embedded systems;
  • Having intellectual curiosity, the desire to learn and diversify;
  • Having aptitudes for teamwork and favoring collective intelligence;
  • Having a good sense of professional ethics is essential.

This position may require meeting the eligibility criteria described in the Canadian Controlled Goods Program and the Canadian Industrial Security Program.

Details

City
Quebec City, Canada

Apply

Interested by this job opportunity? Submit your application now.

Need help?

This website uses cookies for analysis and video content. You can accept only essential cookies or accept all cookies.