1,680 Senior C Developer jobs in South Africa
Embedded Systems Programmer
Posted 24 days ago
Job Viewed
Job Description
- Develop and test software for IFM and Deep Sea controllers.
- Integrate CAN bus engine data into control logic and HMI displays.
- Design and implement HMI dashboards for operators and maintenance teams.
- Diagnose and troubleshoot controller and communication issues both in the workshop and in the field.
- Collaborate with engineering teams on control logic and safety interlocks.
- Document code, wiring diagrams, and integration procedures.
- Support commissioning and field trials.
- Technical Skills:
- Strong expertise with IFM and Deep Sea controllers.
- CAN bus communication (J1939, CANopen).
- HMI development.
- C/C++ and Embedded C programming.
- Real-time systems.
- Soft Skills: Leadership, problem-solving, and mentoring abilities.
Embedded Systems Engineer
Posted today
Job Viewed
Job Description
Balancell Energy (PTY) Ltd, is seeking a talented and motivated Mid-Level Embedded Software Engineer to join our growing team in Cape Town. In this in-person role, you will play a crucial part in the design, development, and testing of embedded firmware for our innovative products.
If you have a passion for embedded systems, a strong background in C, and a desire to
contribute to the full software development lifecycle, we encourage you to apply
Firmware Development
: Design, develop, and test robust and efficient embedded firmware in C for new and existing products.
Hardware Interaction:
Interface directly with various hardware components,
microcontrollers, and develop low-level drivers.
Testing and Debugging:
Thoroughly debug and troubleshoot complex embedded
systems, identifying root causes and implementing effective
solutions. Familiarity with debugging tools.
Team Collaboration
:Collaborate effectively with cross-functional teams, including
hardware engineers, quality assurance, and product
management, throughout the development process.
Product Lifecycle :
Participate actively in the full software development lifecycle,
from requirements gathering and design to implementation,
testing, and deployment.
Technology Expertise:
Work extensively with RTOSs, especially FreeRTOS, various
microcontrollers(Arm Cortex-M and ESP32), and implement
communication protocols (e.g., I2C, SPI, UART, CAN).
Software Architecture:
Contribute to the design and implementation of software
architectures for embedded systems, ensuring scalability and maintainability
Minimum Requirements (non-negotiables)
- Bachelor's/Honors degree in Electrical Engineering and/or Computer Engineering, Computer Science, or a related field.
- 3-5 years of professional experience in embedded software development
- Strong problem-solving skills and a keen attention to detail.
- Excellent communication and interpersonal skills.
Embedded Systems Engineer
Posted today
Job Viewed
Job Description
Job Title:
Embedded Systems Engineer
Department:
R&D – Embedded Systems
Location:
Johannesburg, South Africa
Employment Type:
Full-Time (On-Site)
Reports To:
Head of Embedded Systems / R&D Manager
About Us
We are a cutting-edge technology company specializing in smart asset tracking, IoT, and
security solutions for logistics and supply chain management. We design and develop
intelligent, rugged, and efficient tracking devices and systems used across Europe, America, Africa and beyond.
We are on a mission to deliver reliable, innovative solutions that make logistics smarter,
safer, and more efficient.
Position Overview
We are seeking a highly motivated and skilled Embedded Systems Engineer with a strong
foundation in both hardware design and firmware/embedded software development. You
will be responsible for the full embedded product lifecycle—from circuit design, prototyping, and PCB development to real-time embedded firmware implementation on STM32 or similar microcontrollers.
This role is pivotal in bringing our smart tracking and IoT devices to life.
Key Responsibilities
Hardware Development
• Design and simulate electronic circuits for embedded systems (analog/digital, power,
and RF interfaces)
• Schematic capture and PCB layout using tools like Altium Designer, KiCad, or
equivalent
• Select appropriate components based on design, cost, and availability
• Work with manufacturing partners and internal teams to assemble and test prototype
boards
• Validate hardware functionality with lab equipment (oscilloscopes, multimeters, logic
analyzers)
Firmware / Embedded Software Development
• Develop, maintain, and optimize embedded software in C/C++
• Build applications on RTOS (Real-Time Operating Systems) platforms such as
FreeRTOS, Zephyr, or custom schedulers
• Implement low-level drivers (UART, SPI, I2C, ADC, CAN, BLE, GSM/LTE)
• Integrate sensor, GPS, and communication modules
• Write robust, maintainable, and documented code following MISRA-C, embedded
coding standards, and internal best practices
• Conduct thorough unit testing, debugging, and firmware validation
Product Development & Testing
• Work closely with QA to create test procedures and participate in DFM (Design for
Manufacturing) and DFT (Design for Test)
• Collaborate cross-functionally with Software, UX/UI, and Mechanical teams during
product development lifecycle
• Create and maintain technical documentation: schematics, BOMs, firmware revision
history, test plans
Minimum Requirements
Technical Skills
•
3+ years experience in embedded systems design and development
• Strong proficiency in C and C++
• Hands-on experience with STM32 or other ARM Cortex-M microcontrollers
• Experience with RTOS-based development
• Familiarity with circuit simulation, soldering, and debugging hardware
• Comfortable with embedded debugging tools: JTAG, SWD, GDB, logic analyzers
• Experience in PCB layout tools (Altium, KiCad, etc.)
• Experience with Bluetooth LE, GSM, and GPS
Knowledge & Standards
•
Strong understanding of embedded system constraints (timing, memory, power)
• Knowledge of design standards and safety in firmware (watchdog, fail-safes,
versioning)
• Familiar with firmware version control (Git), documentation practices, and ticketing
systems (Azure DevOps preferred)
• Understanding of communication protocols: UART, SPI, I2C, CAN, BLE, GSM,
GNSS
Preferred Qualifications
• BSC/BEng/BTech Electronics/Computer Engineering.
• 3+ year's experience in similar role
Head of Embedded Systems
Posted today
Job Viewed
Job Description
Company
: Cutting-edge Global Sports Technology and Data
Role
: Head of Embedded Systems
Location
:
Cape Town (Hybrid)
Introduction:
Our client is redefining what's possible in live sports performance analytics. They build ultra-low-latency tracking systems using
Ultra-Wideband (UWB)
and
motion sensing
to capture every movement of players and balls in real time.
You'll work at the intersection of
embedded systems, wireless networking, and sports innovation,
from bare-metal firmware to cloud infrastructure. Their engineering culture thrives on curiosity, experimentation, and cross-disciplinary collaboration.
If you're a hands-on technical leader who thrives on building precision real-time systems that perform flawlessly in the chaos of live sport, this is your arena.
The Role:
As
Head of Embedded Systems
, you will own the technical vision and execution of our client's embedded software platform. You'll lead the architecture and development of firmware for UWB tracking devices and motion-sensor wearables, ensuring ultra-reliable, low-latency communication and sub-millisecond synchronisation across dense wireless networks.
You will guide a team of embedded engineers through the full development lifecycle — from concept and architecture through to production, deployment, and live testing in stadium environments. This is a
deeply technical leadership role
that requires both strategic direction and hands-on technical excellence.
Technical Leadership:
- Own and evolve the architecture, design, and implementation of our client's embedded firmware stack.
- Define technical strategy across the embedded ecosystem: bootloaders, drivers, RTOS task structures, communication protocols, and test frameworks.
- Establish and enforce robust development processes, including CI/CD pipelines, automated testing, and documentation.
- Set and monitor software quality metrics, ensuring performance, reliability, and maintainability.
Team & Project Leadership:
- Lead, mentor, and grow a world-class embedded engineering team.
- Collaborate with hardware, backend, and product teams to deliver end-to-end system performance and scalability.
- Oversee planning, prioritisation, and delivery using Agile/Lean methods.
- Contribute to hiring, roadmap planning, and long-term technology strategy in collaboration with senior management.
Hands-On Development:
- Design and develop firmware in
C/C++
for
bare-metal
and
RTOS environments
(e.g. Zephyr, FreeRTOS). - Implement and optimise low-level drivers, data acquisition pipelines, and communication stacks (SPI, I2C, UART, USB, BLE, UWB).
- Conduct hardware bring-up, field testing, and debugging using oscilloscopes, logic analysers, and RF tools.
- Support manufacturing, calibration, and production test workflows.
Required Skills & Experience:
- BSc/MSc in Electronics Engineering, Computer Engineering, or Computer Science.
- 10–15 years in embedded systems development
, including 5+ years in leadership of technical teams or embedded engineering functions. - Deep expertise with ARM Cortex-M (STM32) microcontrollers.
- Mastery of Embedded C/C++, RTOS (Zephyr, FreeRTOS), and bare-metal real-time systems.
- Strong understanding of build systems (Makefiles, GCC, CMake), toolchains, and version control (Git).
- Proficiency with memory interfaces (EEPROM, SD, Flash) and communication peripherals (SPI, I2C, UART, USB).
- Competence in Python for scripting, testing, and data analysis.
- Experience developing wireless communication systems — ideally UWB, BLE, or Wi-Fi.
Nice to Have:
- Experience with sensor fusion and IMU data processing.
- Understanding of RF systems, antenna design, and signal integrity.
- Familiarity with Linux, networking (TCP/IP), and bootloaders.
- Experience with CI/test frameworks or hardware-in-the-loop testing.
- Exposure to cloud-connected IoT architectures and data streaming systems.
Personal Attributes:
- Strategic thinker with strong hands-on engineering instincts.
- Passionate about sports, technology, and building high-performance systems.
- Strong communicator and mentor.
- Comfortable in a fast-paced startup environment with high autonomy.
- Committed to reliability, precision, and performance in every detail.
Reporting To:
- VP of Engineering
Working Closely With:
- CTO, Hardware Engineers, Backend Developers, Data Science, and Product Teams
Perks and Benefits:
- Hybrid work flexibility
Junior embedded systems engineer
Posted today
Job Viewed
Job Description
Company Description
MHE Electronics (Pty) Ltd has been designing, manufacturing, and supplying high-quality electronic products for over 25 years. The company offers a range of proprietary products in addition to manufacturing customized products exclusively for clients. MHE Electronics prides itself on delivering innovative and tailored electronic solutions to meet client specifications.
Role Description
We are seeking a motivated
Junior Embedded Engineer
to join our team and contribute to the development of embedded systems. You will work on designing, developing, and testing embedded solutions, collaborating with a talented team to bring innovative products to life. This is an excellent opportunity for a driven individual with a passion for embedded systems and a desire to grow their skills in a fast-paced environment.
Key Responsibilities
- Develop and test embedded software using
C
for microcontrollers and embedded platforms. - Assist in
schematic design
and
PCB layout
. - Conduct
prototype testing
, debugging, and validation to ensure system performance and reliability. - Collaborate with cross-functional teams to integrate hardware and software components.
- Document design processes, test results, and system specifications.
- Contribute to code reviews, design discussions, and continuous improvement of development processes.
Required Qualifications
- Bachelor's degree in Electronic Engineering, Computer Engineering, or a related field.
- 1-2 years of experience in
embedded systems development
, including: - Proficiency in
C programming
for embedded applications. - Hands-on experience with
schematic design
and
PCB design
(e.g., using tools like Eagle). - Familiarity with
prototype testing
and debugging tools (e.g., oscilloscopes, logic analysers). - Basic understanding of microcontroller architectures (e.g., ARM, STM32).
- Strong problem-solving skills and attention to detail.
- Ability to work independently and in a team-oriented environment.
Preferred Qualifications (Bonus)
- Experience with
C# development
for desktop or test applications. - Familiarity with communication protocols (e.g., I2C, SPI, UART, or CAN).
- Knowledge of real-time operating systems (RTOS) or bare-metal programming.
- Exposure to version control systems (e.g., Git) and agile development practices.
- Basic experience with firmware security and low-power design techniques.
Developer
Posted 2 days ago
Job Viewed
Job Description
Skills:
- Unix/Linux Expertise Essential :
- familiarity with Linux environments (Red Hat, Ubuntu, and Rocky Linux)
- Skilled in Bash scripting for automation and maintenance
- Comfortable working with Python for scripting and back-end tasks
- Exposure to Perl is advantageous but not mandatory
- Relational Database Knowledge Essential :
- Informix IDS (highly preferred)
- Familiarity with MySQL environments
- Programming Experience:
- Solid experience coding in at least one mainstream language
- Exposure to JavaScript is a plus
Requirements:
- 3+ years of experience in a similar Unix/Linux development role
- Comfortable working in an on-site environment (North Riding, Johannesburg)
- Able to work independently and problem-solve with minimal supervision
Apply now!
Developer
Posted today
Job Viewed
Job Description
An exciting opportunity has opened for a talented and proactive
Developer
to join a dynamic international team based in Málaga, Spain. This role is ideal for a skilled professional with a strong background in Python, PySpark, and AWS who is ready to take their career abroad. You'll work on innovative data solutions that support key business functions, with a focus on cloud architecture, data processing, and infrastructure deployment.
If you're passionate about technology, thrive in collaborative environments, and are ready for a new challenge in sunny Spain – this is your opportunity to make an impact in a forward-thinking company.
Key Responsibilities
- Design, build, and maintain scalable data pipelines using PySpark and AWS services.
- Develop and deploy cloud infrastructure using services such as AWS Glue, EMR, Lambda, Athena, S3, VPC, and EC2.
- Collaborate with cross-functional teams to support data-driven decision-making.
- Use GitHub for version control and project collaboration.
- Contribute to the continuous improvement of processes and infrastructure automation.
- Participate in Agile development practices and daily team collaboration sessions.
Requirements
Qualifications and Experience
Required:
- Minimum 2–3 years of experience in a similar Data Engineering or Cloud Development role.
- Proficiency in Python and PySpark.
- Experience with key AWS services: Glue, EMR, Lambda, Athena, S3, VPC, EC2.
- Familiarity with GitHub for source control.
- Strong English communication skills – minimum B2 level, with high oral comprehension.
- A collaborative, proactive, and adaptable mindset.
- Commitment to high-quality work and continuous improvement.
Advantageous:
- Experience with QlikSense or other data visualisation tools.
- Understanding of CI/CD pipelines for AWS infrastructure deployment.
- Knowledge of Java and SQL.
Other Requirements:
- Willingness and ability to relocate to Málaga, Spain.
- Access to a reliable laptop and internet connection during the transition phase.
Be The First To Know
About the latest Senior c developer Jobs in South Africa !
Developer
Posted today
Job Viewed
Job Description
Job Description
Hello Java Developer,
Welcome to the home of the #changeables. We design for the shapeshifters and deliver products and services that make us incredibly proud with people that make it happen.
As a Java Developer, you will be in a team where experts come together and ignite effective change. We call these #changeables our nav-igators – people who want to use tech to help others nav-igate their lives and business. As nav-igators, we are made up of unique talents, diverse minds, adaptability and live up to the promise of staying curious.
Are you someone who can:
- Advise on the design, creation, testing and documentation of new and enhanced applications and systems in accordance with agreed framework of programming standards.
- Write well designed and efficient code for medium to large applications.
- Work in small independent teams
As a #Changeable you will have access to:
- Opportunities to network and collaborate.
- Work that is challenging
- Opportunities to innovate.
- Flexible working environment
- Deep focus on health and wellbeing
- Coaches and mentors to help with your professional development.
- A very Generous leave policy to cater for your individual needs.
- Preferential employee banking rates that include Vehicle and Home loans. For more details see attachment
We can be a match if you are:
- Curious & courageous - you're driven by always wanting to know more and learn more and you're brave enough to
- Obsessed with mastery - you know what it takes to become good at what you do and are constantly pushing yourself to do it
- A team player - you believe in the power of teams so you're always part of one, building and leveraging your networks.
- Emotionally intelligent - you have a high EQ that enables you to truly connect with people, no matter how technical or specialist your role is.
You'll be an ideal candidate if you:
- Are you very proficient in Java and Java EE. Knowledge of other programming languages is advantageous.
- Are experienced in System Design & Development methodologies.
- Are proficient in Atlassian (i.e., JiRA) software suite (to your advantage)
- Have a BSC Computer Sciences, BSC Informatics or related degree.
Tech Stack:
- MySQL
- Hibernate and Springboot
- Jenkins
- Docker
- Java 8/11
- CI/CD
- Mavern and Gradle
- GIT
Job Details
Take note that applications will not be accepted on the below date and onwards, kindly submit applications ahead of the closing date indicated below.
19/09/25
All appointments will be made in line with FirstRand Group's Employment Equity plan. The Bank supports the recruitment and advancement of individuals with disabilities. In order for us to fulfill this purpose, candidates can disclose their disability information on a voluntary basis. The Bank will keep this information confidential unless we are required by law to disclose this information to other parties.
Developer
Posted today
Job Viewed
Job Description
Job Description
To provide IT expertise and advice in the design, creation, testing and documentation of new and enhanced applications and systems in accordance with agreed framework of programming standards.
To produce logical and technical specifications from functional specifications and to write the code for medium to large applications.
Hello Future Java Developer
Welcome to FNB, the home of the #changeables. We design for the shapeshifters and deliver products and services that make us incredibly proud of people that make it happen. As part of our talent team at FNB Commercial, you will be surrounded by unique talents, diverse minds, and an adaptable environment that lives up to the promise of staying curious. Now's the time to imagine your potential in a team where experts come together and ignite effective change.
Are You Someone Who Can
- Increase operational efficiency and suggest solutions to enhance cost effectiveness.
- Deliver exceptional service that exceeds customers' expectations through proactive,
- Cultivate and manage objective working relationships with a variety of stakeholders, including end-users, SME's, project managers and senior staff members by providing input to business requirements and being able to present and sell concepts to clients.
- Produce program specifications and implement system enhancements by addressing specific business needs and resolving queries.
- Code, compile, test and implement applications in compliance with the Systems.
- Development Life Cycle (SDLC). Support development environments.
- Responsible for coding standards and peer reviews.
- Comply, understand, and implement all steps within IT development and meet governance in terms of legislative and audit requirements during programming execution
- Assess, identify, and mitigate potential risks within the IT programming environment by complying with technology business policy and process requirements (SDLC and change / release management process definition) to ensue operational performance.
- Produce technical specifications and architecture that is in accordance to agreed standards.
- Design, code, test, and debug to obtain a robust solution with supporting documentation.
- Minimize system downtime through pro-active identification of potential issues and ensure. Minimization of recurring problems by managing defects and performing code reviews.
- Monitor systems post change and pro-actively do performance analysis to ensure there is no system failure due to capacity
- Maintain maximum system availability by ensuring that incidents are recorded for future.
- Manage own development to increase own competencies and develop technical and business skill
- Proactively engage with business units and colleagues to understand underlying needs and opportunities and identify Information Technology (IT) innovative solutions in a timely manner.
- Supervises the work of other developers. Provides technical assistance to fellow developers and other Information Technology (IT) team members.
You Will Have Access To
- Opportunities to network and collaborate.
- Work that is challenging
- Opportunities to be innovative.
- Resources to help you with your professional development.
We Can Be a Match If You Are
- Curious & courageous - you're driven by always wanting to know more and learn more and you're brave enough to
- Obsessed with mastery - you know what it takes to become good at what you do and are constantly pushing yourself to do it
- A team player - you believe in the power of teams so you're always part of one, building and leveraging your networks.
- Think outside the box – have the ability to not be limited by your surroundings, problem solving is one of the key features that drive you.
You'll be an ideal candidate if you meet the following requirements:
- BSc Eng, BSc Informatics degree or any other related qualification
- 3+ years' solid experience in Java 8 or latest version
- SOAP and Restful Services
- JPA framework like Hibernate
- Docker and container orchestration tools like Kubernetes
- Gitlab, Spring boot, Microservices, Maven, CI/CD, NLP, Atlassian tools, Jira, Confluence, etc.
- SQL and Relational database experience
- Agile Development Methodology
FNB
*Job Details
Take note that applications will not be accepted on the below date and onwards, kindly submit applications ahead of the closing date indicated below. *
26/10/25
All appointments will be made in line with FirstRand Group's Employment Equity plan. The Bank supports the recruitment and advancement of individuals with disabilities. In order for us to fulfill this purpose, candidates can disclose their disability information on a voluntary basis. The Bank will keep this information confidential unless we are required by law to disclose this information to other parties.
Developer
Posted today
Job Viewed
Job Description
The successful candidate will be responsible for the development and management of our internal systems as well as the development of new components and systems which include analysis, programming, testing, debugging, deployment and technical support. The candidate must have knowledge of multi-tier applications and a strong understanding of TFS. Skills in gathering requirements and working within a team are essential. The role requires a proactive problem solver who can deliver high-quality, maintainable software that meets evolving business needs.
This is a Hybrid position with our Offices based in Lonehill, Johannesburg. Salary is market-related but can be discussed.
You may send your CV through to
Requirements
- Experience with popular front-end frameworks/libraries like React, Angular, or
- Responsive design and accessibility knowledge
- UI/UX principles for building user-friendly interfaces
- Strong skills in server-side languages such as , Python, Java, C#, Ruby, or PHP as well as back-end frameworks like , Django, or ASP.NET
- Delphi knowledge is advantageous.
- Building RESTful APIs
- Knowledge of SQL databases (MySQL, PostgreSQL)
- Ability to design data models and perform CRUD (Create, Read, Update, Delete) operations
- Version Control and CI/CD Pipelines: Proficiency in version control systems like TFS (Team Foundation Server) and CI/CD pipelines for collaboration and deployment.
- Understanding of web security fundamentals including authentication, authorisation, encryption and prevention.
- Testing and debugging skills, including unit, integration, and end-to-end testing
- Collaboration, communication, and Agile development methodologies
- Skills such as AI integration and machine learning basics are advantageous
- Knowledge of the Medical Administration Field would be advantageous