Summary
✨ AI‑Generated
An advanced technology development team is seeking a Low-Level Embedded Linux Developer for a contract role supporting sophisticated space systems. You'll work on custom embedded platforms, develop board support packages, bring up Linux on new hardware, configure kernels, and integrate low-level software with specialized hardware. The initial contract is 12 months, with extensions possible.
Highlights
A 12-month contract with extension potential, offering hands-on work on advanced embedded software for space applications. Join a multidisciplinary development team and contribute to board support packages, Linux bring-up, bootloaders, device drivers, and hardware-software integration.
Description
Location: Sainte-Anne-de-Bellevue, QC 4x/week (west end)
Length: 12 months contract + extensions
Why Open: Expected Vacancy
Rate: 50-100/hr
We may use artificial intelligence tools to assist with the screening, assessment, or selection of potential applicants for this position.
The Low Level Embedded Linux Developer is part of a multidisciplinary development team responsible for the architecture, development, integration, and maintenance of low-level embedded software for advanced space applications, including satellite platforms and payload systems.
The successful candidate will contribute to Board Support Package development, Linux board bring-up, bootloaders, kernel configuration, device drivers, and hardware–software integration on custom embedded platforms.
Responsibilities
Develop, configure, and maintain Board Support Packages for custom embedded platforms and complex Systems-on-Chip.Perform Linux bring-up and hardware initialization on new boards.Configure, customize, integrate, and debug the Linux kernel, device tree, bootloader, and root file system.Develop and maintain low-level software and Linux device drivers for hardware interfaces and peripherals.Integrate vendor SDKs, firmware, FPGA interfaces, and hardware components.Diagnose complex problems involving hardware, firmware, boot sequences, memory, interrupts, device drivers, and system performance.Collaborate with hardware, FPGA, systems, RF, software, and verification teams throughout the development lifecycle.Contribute to the definition and refinement of software requirements, architecture, interfaces, and technical designs.Optimize boot time, memory usage, reliability, and real-time performance.Support software integration, continuous integration, hardware-in-the-loop testing, and release activities.Produce and review software requirements, architecture, design, integration, and verification documentation.Support technical estimates and contribute to new project proposals.
Requirements
Bachelor’s degree in Electrical Engineering, Computer Engineering, Software Engineering, Computer Science, or an equivalent technical discipline.Minimum of 5 years of embedded software development experience, including experience with BSP or low-level Linux development.Strong programming skills in C and C++.Hands-on experience with Linux board bring-up, kernel configuration, device trees, bootloaders, and device drivers.Experience working with embedded processors, complex SoCs, and common hardware interfaces.Experience with embedded Linux build systems such as Yocto, OpenEmbedded, or Buildroot.Ability to read electrical schematics, hardware datasheets, and SoC reference manuals.Strong debugging and problem-solving skills across hardware and software.Strong communication and collaboration skills in English or French.
Nice to have
Experience with Yocto, Buildroot, or similar embedded Linux build systems.Experience with RTOS, FPGA-based platforms, or real-time Linux.Experience in the aerospace or space industry.Knowledge of satellite interfaces or protocols such as CAN, SpaceWire, CCSDS, or MIL-STD-1553.Experience with CI/CD, Git, Jira, and Confluence.Fluency in both French and English.