logo

View all jobs

Embedded Software Engineer

Burnaby, British Columbia
Embedded Software Engineer

Aversan Inc. (www.aversan.comis 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 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 seeking a highly skilled Embedded Software Engineer to join our technical team. As a Member of Technical Staff (MTS), you will be responsible for developing and optimizing embedded software for our next-generation products. You will work closely with hardware engineers, firmware developers, and system architects to create high-performance, reliable, and scalable solutions.

Responsibilities.
  • Develop, optimize, and maintain embedded software, including low-level drivers, middleware, and application code.
  • Design and implement software components for Linux-based embedded systems using C/C++ and Python.
  • Customize and build Yocto-based Linux distributions for embedded platforms.
  • Develop and debug device drivers for peripherals and interfaces such as SPI, I2C, UART, USB, Ethernet.
  • Optimize system performance and troubleshoot kernel-level and user-space issues.
  • Work on networking protocols and optimize network stack performance for embedded systems.
  • Collaborate with cross-functional teams to define software requirements and integrate with hardware.
  • Implement software development best practices, including version control, CI/CD pipelines, and automated testing.
  • Document designs, implementations, and debugging procedures.

Basic Qualifications
  • Master’s degree in computer science or equivalent work experience.
  • 5+ years of embedded software development.
  • Proficiency in C and C++, with experience in Python for scripting and automation
  • 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 with 3D Sensing Systems & LiDAR technology.
  • Knowledge of real-time operating systems (RTOS) and bare-metal programming.
  • 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++



 

Share This Job

Powered by