Lead Embedded Software Engineer; Remote
Cape Town, 7561, South Africa
Listed on 2026-10-19
-
Software Development
Embedded Software Engineer, Embedded Systems/ Firmware/ IoT, Software Engineer, C++ Developer
About the Role
Our client, an innovative technology company at the forefront of IoT solutions, is seeking a highly experienced Lead Embedded Software Engineer to join their fully remote team. This is a critical role responsible for architecting, developing, and leading the implementation of embedded software for cutting-edge hardware products. The ideal candidate will possess a deep understanding of real-time operating systems (RTOS), low-level hardware interaction, and firmware development best practices.
As a remote-first organization, our client emphasizes collaboration, autonomy, and effective communication across distributed teams. The Lead Embedded Software Engineer will guide a team of talented engineers, drive technical strategy, and ensure the delivery of robust, scalable, and high-performance embedded systems. We are looking for a candidate with exceptional problem-solving skills, a passion for innovation, and a proven ability to mentor and inspire technical teams.
This position offers the flexibility to work from anywhere, coupled with the opportunity to shape the future of embedded technology within a forward-thinking company committed to excellence and continuous improvement.
- Architect, design, and implement embedded software solutions for various hardware platforms.
- Lead and mentor a team of embedded software engineers, providing technical guidance and oversight.
- Develop and maintain firmware, drivers, and real-time operating systems (RTOS).
- Collaborate closely with hardware engineers, product managers, and QA teams throughout the product development lifecycle.
- Optimize embedded software for performance, memory usage, and power efficiency.
- Develop and execute comprehensive unit and integration tests for embedded software components.
- Debug complex hardware and software issues, identifying root causes and implementing effective solutions.
- Define and enforce coding standards, development processes, and best practices for the embedded team.
- Evaluate and integrate third-party software components and libraries.
- Contribute to strategic technology decisions and roadmap planning for embedded systems.
- Bachelor's or Master's degree in Computer Science, Electrical Engineering, or a related field.
- 8+ years of professional experience in embedded software development.
- Proven experience leading embedded software engineering teams.
- Strong proficiency in C and C++ for embedded systems development.
- In-depth knowledge of real-time operating systems (RTOS), such as FreeRTOS, Zephyr, or VxWorks.
- Experience with hardware debugging tools (e.g., JTAG, logic analyzers, oscilloscopes).
- Familiarity with communication protocols (e.g., SPI, I2C, UART, CAN, Ethernet, USB).
- Experience with version control systems (e.g., Git).
- Understanding of embedded Linux and device drivers is a plus.
- Excellent problem-solving, analytical, and debugging skills.
- Strong communication and collaboration skills, essential for remote work.
- Demonstrated ability to work independently and manage time effectively in a remote setting.
- Highly competitive salary and equity options.
- Comprehensive health, dental, and vision benefits.
- Generous paid time off and flexible working arrangements.
- Home office setup allowance.
- Professional development budget for courses, conferences, and certifications.
- Opportunity to work on exciting and impactful projects with a talented, global team.
(If this job is in fact in your jurisdiction, then you may be using a Proxy or VPN to access this site, and to progress further, you should change your connectivity to another mobile device or PC).