Senior - BSP Driver Developer
- Full-time
- Department: Software Development
Company Description
CS Group Canada, a subsidiary of CS Group and part of the Sopra Steria group, is a catalyst for functional safety and cybersecurity in companies developing critical embedded technologies (avionics, autonomous driving, transportation electrification). Our clients include original equipment manufacturers (OEMs) and Tier 1 suppliers in the aerospace, automotive, defense, and railway sectors, seeking functional safety (ISO 26262, DO-178C, DO-254, ARP-4761, ARP-4754, EN50128) and cybersecurity (DO-326A, ISO 21434, UN-R155) certifications to bring their technologies to market.
Job Description
We are looking for an Embedded Driver Development Engineer to join our specialized team working on Board Support Packages (BSPs) and low-level driver development for next-generation automotive computing platforms. You will contribute to the board bring-up process and integrate advanced hardware peripherals on state-of-the-art embedded architectures.
Your main focus will be developing device drivers for various peripherals (UART, I2C, SPI, CAN, etc.) while ensuring software performance optimization and compliance with safety standards.
- Board bring-up and driver development for advanced embedded platforms.
- Very low-level hardware configuration, including register-level programming, clock tree and pin-mixing setup, DDR controller configuration, GIC/interrupts/exceptions management, and boot flow debugging (JTAG, etc.).
- Full software development lifecycle, including requirements definition, coding, debugging, and safety analysis.
- Contributing to a cross-platform safety initiative, starting with x86 (Intel Tiger Lake), then moving to ARM-based platforms (TI, NXP, etc.).
- Working in a small, autonomous team (3 software developers + 1 Functional Safety Manager).
Key Responsibilities
- Develop and optimize low-level embedded drivers for automotive platforms.
- Implement BSP components, including bootloader development, board initialization, and hardware abstraction.
- Configure system peripherals (GPIO, SPI, I2C, UART, CAN, etc.) and optimize high-speed communication buses (PCIe, USB, SDIO).
- Debug boot sequences and hardware-software integration using JTAG, serial debuggers, and trace tools.
- Ensure compliance with functional safety (ISO 26262, IEC 61508) and real-time performance requirements.
- Work closely with hardware and software teams to ensure seamless integration of BSP components.
Qualifications
- Bachelors degree in Computer Science, Computer Engineering or equivalent
- Senior level of expertise in software development, with hands-on embedded development experience
- In-depth knowledge of C and Assembly programming languages.
- Hands on development experience using embedded operating systems (QNX, Linux, GreenHills, VXworks preferred)
- Prior experience in driver development is essential
- Experience writing software for major processor architectures (Intel Tiger, x86, 64bits)
- Knowledge of assembly
Additional Information
Only selected candidates will be contacted.
Job Type: Full-time, Permanent
CS Group Canada values workplace diversity and encourages women, visible and ethnic minorities, Indigenous people, and individuals with disabilities to apply.
Benefits:
- Hybrid work model
- Comprehensive health, dental, and vision insurance
- Access to telemedicine services
- RRSP program
- Personal and sick leave
- Recreation room with pool table and foosball
- Free on-site gym access
All your information will remain confidential in accordance with EEO guidelines.
Inclusive and committed employer, our company works every day to combat all forms of discrimination and promote a respectful working environment. That's why, committed to gender diversity and overall inclusivity, we encourage all applications and profiles.