Enable job alerts via email!

Embedded Software Engineer

Frostbyte

Cape Town

On-site

ZAR 600 000 - 800 000

Full time

Today
Be an early applicant

Generate a tailored resume in minutes

Land an interview and earn more. Learn more

Job summary

A technology company in Cape Town is seeking an experienced embedded software developer to develop, test, and optimise software for embedded systems. This role requires proficiency in C / C++, experience with real-time operating systems, and collaboration with hardware engineers. Join a dynamic team focused on innovative solutions and enjoy a competitive remuneration package.

Benefits

Attractive remuneration
Comprehensive benefits package
Collaborative work environment

Qualifications

  • Bachelor's degree in Computer Science, Electrical Engineering, or a related field.
  • 3-6 years of experience as an embedded software developer with solid knowledge of embedded systems architecture.
  • Proficiency in programming languages such as C / C++.

Responsibilities

  • Design and develop embedded software for various hardware platforms.
  • Collaborate with hardware engineers to ensure seamless integration of software and hardware.
  • Optimise software performance including memory usage and processing speed.

Skills

C / C++ programming
Embedded systems design
Debugging and testing
Real-Time Operating Systems (RTOS)
Collaboration

Education

Bachelor's degree in Computer Science or Electrical Engineering
3-6 years of experience in embedded software development

Tools

Embedded Linux
Debugging tools
Version control systems (e.g., Git)
Job description
Job Overview

We're seeking an experienced embedded software developer to join our team at FrostByte.

You will develop, test, and optimise software for embedded systems, working closely with hardware engineers to ensure the smooth operation of devices and systems.

This position requires a deep understanding of embedded systems architecture, programming languages like C / C++, and hands‑on experience with real‑time operating systems (RTOS).

If you're passionate about embedded systems and enjoy solving complex technical challenges, we invite you to join our fast‑paced, growth‑oriented environment.

We offer attractive remuneration, a comprehensive benefits package, and a collaborative work environment.

Key Responsibilities
  • Designing and developing embedded software for various hardware platforms, including microcontrollers and processors.
  • Writing efficient, reliable, and optimised code in C / C++ and other programming languages for embedded systems to ensure system functionality and reliability.
  • Collaborating with hardware engineers to ensure seamless integration of software and hardware components.
  • Developing software that meets performance, reliability, and scalability standards.
  • Optimising software performance, including memory usage, processing speed, and energy efficiency.
  • Participating in system architecture design and contributing to technical decision‑making.
  • Working with real‑time operating systems (RTOS) and embedded Linux environments.
  • Developing and maintaining technical documentation for software development and testing.
  • Documenting software design, coding practices, and maintenance procedures.
  • Ensuring the software meets industry standards, safety regulations, and project specifications.
Key Tasks
  • Analyse project requirements and translate them into embedded software design specifications.
  • Write efficient, reusable embedded code that interfaces with hardware components such as sensors, actuators, and communication modules.
  • Test and debug software using simulation tools, hardware emulators, and on‑target testing methods in simulated environments before deployment to real‑world devices.
  • Collaborate with cross‑functional teams to define software requirements and validate product functionality.
  • Optimise embedded systems for performance, including code execution and power consumption.
  • Provide technical support and troubleshooting for software‑related issues during production, manufacturing, testing, and field operations.
  • Implement software updates and enhancements in existing embedded systems.
  • Prepare technical documentation, including design specs and code annotations.
  • Stay updated with industry trends, new technologies, and best practices in embedded software development.
Educational Requirements
  • Bachelor's degree in Computer Science, Electrical Engineering, or a related field.
  • 3-6 years of experience as an embedded software developer with solid knowledge of embedded systems architecture.
  • Proficiency in programming languages such as C / C++ or assembly language.
  • Familiarity with RTOS (Real‑Time Operating Systems), embedded Linux, and other embedded platforms.
  • Good understanding of debugging and testing embedded systems, including hardware‑in‑the‑loop (HIL) testing.
  • In‑depth understanding of microcontrollers, microprocessors, and hardware‑software interaction.
  • Proficiency in debugging tools, oscilloscopes, and logic analysers for hardware troubleshooting.
  • Familiarity with version control systems (e.g., Git) and development pipelines.
  • Understanding low‑level hardware architecture, software optimisation, memory management, and real‑time processing.
  • Strong problem‑solving skills and ability to work with hardware / software interfaces.
Get your free, confidential resume review.
or drag and drop a PDF, DOC, DOCX, ODT, or PAGES file up to 5MB.