Remote Automotive Software Developer; Embedded Systems
Pietermaritzburg, 3200, South Africa
Listed on 2026-10-18
-
Software Development
C++ Developer, Embedded Systems/ Firmware/ IoT, Embedded Software Engineer, Software Engineer
About the Role
Our client, a pioneering force in automotive technology innovation, is seeking a highly skilled Remote Automotive Software Developer specializing in embedded systems to join their distributed engineering team. This role is based remotely, allowing top talent from anywhere in South Africa to contribute to developing cutting-edge software for automotive applications. You will be responsible for designing, developing, testing, and deploying embedded software solutions that power critical vehicle functions, infotainment systems, and advanced driver-assistance systems (ADAS).
This is a fully remote position, emphasizing asynchronous communication and self-motivation. The ideal candidate will possess a strong background in C/C++, real-time operating systems (RTOS), and a passion for automotive technology. You'll work with in a collaborative virtual environment, contributing to projects that are at the forefront of the automotive industry.
- Design, develop, and maintain high-quality embedded software for automotive ECUs using C/C++.
- Implement and optimize real-time operating systems (RTOS) and device drivers for embedded automotive platforms.
- Develop software for various automotive domains, including powertrain control, infotainment systems, body electronics, and ADAS.
- Write robust, efficient, and well-documented code adhering to automotive coding standards (e.g., MISRA C/C++).
- Perform unit testing, integration testing, and debugging of embedded software modules and systems.
- Collaborate with hardware engineers, system architects, and other software developers in a remote setting using agile methodologies.
- Analyze software requirements and translate them into technical design specifications.
- Participate in code reviews, providing constructive feedback to peers.
- Troubleshoot and resolve complex software defects and performance issues.
- Contribute to the continuous improvement of software development processes and tools.
- A Bachelor's or Master's degree in Computer Science, Software Engineering, Electrical Engineering, or a related discipline.
- A minimum of 5 years of professional experience in embedded software development, with a significant portion focused on the automotive industry.
- Proficiency in C and C++ programming languages.
- Strong experience with real-time operating systems (RTOS) such as QNX, FreeRTOS, or similar.
- Familiarity with automotive communication protocols like CAN, LIN, Automotive Ethernet, and diagnostic protocols (UDS, DoIP).
- Experience with software development tools and methodologies, including version control (Git), build systems (CMake), and CI/CD pipelines.
- Knowledge of hardware-software integration and debugging techniques on embedded platforms.
- Understanding of software safety standards (e.g., ISO 26262) is a plus.
- Excellent problem-solving skills and the ability to work independently and effectively in a remote team environment.
- Strong written and verbal communication skills.
This is a fully remote position offering the flexibility to work from anywhere. Our client provides a highly competitive salary package, performance bonuses, and opportunities for professional development through online training and certifications. You will be part of an innovative and collaborative global team, working on challenging and impactful automotive projects. Access to the latest software development tools and resources is provided.
While the role is remote, occasional travel for team meetings or critical project milestones may be required, but is not the norm. This role is ideal for experienced developers seeking autonomy and impact in the automotive software space, irrespective of their physical location near Pietermaritzburg.
(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).