BSP (Kernel / QNX) Software Engineer
Job Description
Build and support next-generation embedded In-Flight Entertainment (IFE) platforms across Linux kernel, QNX, and device software.
Responsibilities
- Design, develop, debug, and maintain BSP, Linux kernel, QNX, and device driver software for embedded platforms
- Support board bring-up, bootloader enablement, operating system integration, hardware/software validation, and platform feature development
- Optimize software performance, memory utilization, reliability, and scalability to meet product and system objectives
- Collaborate with hardware, Android, platform software, integration, and validation teams to deliver robust embedded solutions
- Develop and execute functional, integration, regression, and performance tests; support software quality and automation initiatives
- Participate in Agile processes including sprint planning, stand-ups, retrospectives, and continuous improvement
- Contribute across the full development lifecycle: requirements analysis, design, implementation, code reviews, deployment, troubleshooting, and maintenance
Requirements
- Bachelor’s degree in Computer Science, Computer Engineering, Electrical Engineering, Software Engineering, or a related technical discipline
- Seven+ years of embedded software development with strong proficiency in C, C++, Python, Linux, and QNX
- Hands-on experience with Linux kernel development, device driver development, board bring-up, embedded operating systems, boot processes, and platform enablement
- Strong understanding of communication protocols: UART, SPI, I2C, Ethernet, and USB, plus hardware/software integration principles
- Experience optimizing embedded system performance, memory utilization, software reliability, security, and overall platform quality
- Familiarity with hypervisors, virtualization technologies, automated testing frameworks, and software verification methodologies
- Experience working in Agile, DevOps, and CI/CD environments, with strong communication, collaboration, and problem-solving skills
Technologies
- C, C++, Python
- Linux, QNX
- UART, SPI, I2C, Ethernet, USB
- Hypervisors, virtualization technologies
- Agile, DevOps, CI/CD
Benefits
- Paid time off based on employee grade (A-F), including Vacation: 12-25 days depending on grade, Company paid holidays, Personal Days, Sick Leave
- Medical, dental, and vision coverage (or provincial healthcare coordination in Canada)
- Retirement savings plans (e.g., 401(k) in the U.S., RRSP in Canada)
- Life and disability insurance
- Employee assistance programs
Preferred Qualifications
- Experience developing embedded software for aerospace, aviation, automotive, transportation, medical device, or life sciences industries
- Experience with Android platform integration and highly reliable or mission-critical embedded systems
- Knowledge of modern software engineering practices, including automated testing, continuous integration, code reviews, and software quality frameworks
Location
- 100% onsite in Portland, Oregon
Compensation
- Base compensation range: $73,150 - $174,000 per year (posted location)
- In addition to base salary, eligibility for additional compensation such as variable incentives, bonuses, or commissions depending on position and applicable laws