Senior Embedded Software Engineer
Aversan Inc.
Date: 2 weeks ago
City: Burnaby, British Columbia
Contract type: Full time

Aversan Inc. (www.aversan.com) is a trusted multi-service engineering and electronics manufacturing company. Aversan delivers leading-edge and reliable safety-critical electronics and software systems to the aerospace, defense, and space industries.
We are currently seeking a qualified Senior Embedded Software Engineer to work on leading-edge technology products.
Location: Burnaby, BC
Schedule: Onsite
Compensation: Base pay + Performance based Quarterly Bonus + Equity + Stock options
Description
We are looking for a Senior Member of Technical Staff (SMTS) with deep expertise in embedded software to play a critical role in architecting, developing, and optimizing software for our next-generation embedded systems. In this position, you will lead complex development efforts, contribute to platform architecture decisions, and help guide junior engineers through technical challenges.
You’ll work closely with cross-functional teams including hardware design, system architecture, and applications engineering to deliver high-performance 3D sensing reference designs.
Responsibilities.
We are currently seeking a qualified Senior Embedded Software Engineer to work on leading-edge technology products.
Location: Burnaby, BC
Schedule: Onsite
Compensation: Base pay + Performance based Quarterly Bonus + Equity + Stock options
Description
We are looking for a Senior Member of Technical Staff (SMTS) with deep expertise in embedded software to play a critical role in architecting, developing, and optimizing software for our next-generation embedded systems. In this position, you will lead complex development efforts, contribute to platform architecture decisions, and help guide junior engineers through technical challenges.
You’ll work closely with cross-functional teams including hardware design, system architecture, and applications engineering to deliver high-performance 3D sensing reference designs.
Responsibilities.
- Architect, develop, and maintain embedded software across the full stack - from low-level drivers and kernel modules to middleware and user-space applications using C/C++ and Python.
- Design and customize Linux-based embedded systems, including building and maintaining Yocto-based distributions and Board Support Packages (BSPs).
- Lead bring-up and integration of custom hardware platforms, including bootloader, kernel, and driver development.
- Develop and debug device drivers and peripheral interfaces (SPI, I2C, UART, USB, Ethernet).
- Drive performance optimization of networking stacks and real-time data processing in embedded Linux systems.
- Analyze and troubleshoot system-level issues across hardware/software boundaries using tools such as JTAG, logic analyzers, and profiling utilities.
- Contribute to system architecture, interface design, and long-term platform scalability.
- Define and implement software development best practices, including CI/CD pipelines, code reviews, and automated validation.
- Mentor and support junior engineers, conduct technical reviews, and provide guidance on complex issues.
- Create detailed technical documentation, design specifications, and debugging procedures.
- Master’s degree in computer science or equivalent work experience.
- 8+ years of embedded software development.
- Expert-level proficiency in C and C++, with experience in Python.
- Strong experience with Linux kernel, driver development, and Yocto build system.
- Hands-on experience with networking protocols (TCP/IP, UDP, MQTT, etc.).
- Familiarity with bootloaders, BSP development, and real-time constraints.
- Experience debugging embedded systems using JTAG, oscilloscopes, and logic analyzers.
- Knowledge of system profiling, memory management and performance optimization.
- Ability to read and interpret data sheets to inform implementation.
- Expertise of working in Linux environments.
- Expertise in Source code version control (Git).
- Strong problem-solving skills and ability to work in a fast-paced environment.
- Experience in Lidar, 3D Sensing Systems or real-time imaging systems.
- Hands-on experience of real-time operating systems (RTOS) and bare-metal development.
- Familiarity with hardware bring-up and board support package (BSP) development.
- Understanding of security best practices for embedded systems.
- Familiarity with Atlassian tools (Jira, Confluence, Bitbucket).
- Familiarity with working in Agile environments (Scrum / Kanban).
- Familiarity with embedded software development e.g. C, C++
See more jobs in Burnaby, BC