Principal Embedded Developer - C/C++ & Systems Programming
Primary stack
Job description
About the Position
We are seeking a Principal Embedded Developer specializing in C/C++ & Systems Programming for our remote team. This role focuses on developing high-performance embedded Linux systems across multiple architectures.
Responsibilities
- Design, develop, and optimize high-performance device drivers for embedded Linux systems across multiple architectures.
- Port Linux kernel and custom drivers to new hardware platforms with optimal functionality and performance.
- Troubleshoot and resolve complex embedded software issues in diverse hardware environments.
- Implement firmware updates and enhancements for specialized embedded devices.
- Collaborate with hardware engineers to ensure seamless integration between software and hardware components.
- Contribute to system architecture decisions that shape next-generation embedded products.
- Perform comprehensive code reviews and provide mentorship to junior development team members.
- Create detailed technical documentation for all embedded systems components and implementations.
- Optimize embedded software for maximum performance, minimal memory footprint, and efficient power consumption.
Requirements
- 6+ years of professional C programming experience in embedded systems environments.
- Proven expertise with embedded Linux kernel architecture, subsystems, and development methodologies.
- Hands-on experience with Yocto Project (version 4.2+) including custom layer development and package management.
- Practical knowledge of FreeRTOS (version 10.5+) implementation, task scheduling, and real-time optimization.
- Deep understanding of microprocessor principles, memory management, and peripheral interfaces (SPI, I2C, UART, GPIO).
- Extensive experience with Linux driver development for various device categories and hardware platforms.
- Demonstrated expertise in low-level programming and hardware abstraction layer implementation.
- Proficiency with embedded debugging tools and techniques (GDB, JTAG, logic analyzers, oscilloscopes).
- Higher specialized education in Computer Science, Electrical Engineering, or a closely related technical field.
- English language proficiency at B1 level or higher for effective cross-functional communication.
- Practical experience with cross-compilation environments, toolchains, and build systems.
About the Company
Join our innovative team dedicated to pushing the boundaries of embedded systems technology. We value creativity, collaboration, and excellence in all our projects.
© Smartbrain. This job description was sourced from the employer's public career page. TheJob is not the employer — we index the posting and route candidates to the source. All content rights and hiring decisions belong to the employer.
More at Smartbrain
All 121 rolesSenior Full-Stack Engineer — React / Node.js / AI Agents
Smartbrain
GPU Server/Hardware Engineer (NVIDIA, field-based)
Smartbrain
Kotlin AQA Engineer | Remote Mobile Testing Specialist
Smartbrain
Senior Full-Stack Engineer - Angular, Django & DevOps
Smartbrain