Junior IT Software Developer
Introduction
An exciting opportunity is available for a Junior Embedded Software Developer to join an engineering environment focused on developing and maintaining firmware solutions for real-world power electronics products, including power inverters, batteries, and rectifiers.
The successful candidate will contribute to the design, development, testing, and maintenance of reliable low-level embedded software while working closely with hardware and application development teams.
Duties & Responsibilities
- Develop and maintain embedded firmware using C/C++.
- Build reliable and efficient low-level software that interfaces closely with hardware.
- Support integration between embedded systems and higher-level applications.
- Work with sensors, actuators, and device communication interfaces.
- Assist with troubleshooting, diagnostics, and resolving software-related issues.
- Participate in improving software maintainability across product variants.
- Collaborate with engineering teams to define and document device interfaces.
- Support software testing, integration, and system reliability improvements.
Experience & Qualification
- Bachelor’s Degree in Computer Engineering, Electronic Engineering, or Electrical Engineering.
- 2 years’ experience in Embedded Software Development (C/C++).
- Strong problem-solving and analytical skills.
- Ability to work independently while contributing effectively within a technical team.
- Strong communication skills and willingness to learn
Required Technical Skills
- Embedded C and C++ programming.
- Experience with Git.
- Basic SSH knowledge (remote access/authentication).
- Basic Docker usage for development and testing environments.
- Linux terminal fundamentals (shell usage, logs, processes, and file permissions).
- Networking fundamentals including IP addressing, ports, and troubleshooting.
- Understanding of API design fundamentals and device/service communication.
- Exposure to automated testing practices (unit and integration testing).
- Experience with end-to-end testing will be advantageous.
Advantageous Skills
- Experience with Node.js and/or Deno for tooling, test harnesses, and integration utilities.
- Python scripting experience for automation, testing, and support tools.
- Familiarity with communication protocols such as:
N.B: By responding to this advert, you consent to HEITHA processing your personal information for recruitment purposes and confirm that any personal information has been submitted voluntarily. Applicants will be requested to fill in and sign a POPI Act Consent Form.
To apply please send your detailed CV including tertiary qualifications certificates and membership certificate to marketing@heitha.co.za.
Only shortlisted candidates will be contacted. If you have not heard from us in 4 weeks, consider your application unsuccessful.