Skip to content
mimi

Firmware/Embedded Software Engineer

E and D Recruiters

Centurion · On-site Full-time Mid Level 1w ago

About the role

Reference

Pta003943-EP-3

Job Title

Embedded Software Engineer

Location

Centurion

Overview

Embedded Software Engineer vacancy in Centurion to be part of the R&D team. This mid-level role requires solid working experience and the ability to hit the ground running. Bachelor's or Master's degree in Electronic Engineering, Computer Engineering required with at least 5 years experience in embedded software development.

Requirements

  • Bachelor's or Master's degree in Electronic Engineering, Computer Engineering, or related discipline
  • 5+ years in embedded software development
  • Strong proficiency in C, particularly bare-metal embedded programming
  • Thorough understanding of microcontrollers, digital/analogue circuits, and low-level hardware interaction
  • Experience with real-time operating systems (RTOS) and concepts
  • Experience with hierarchical state machines
  • Proficient with 8-bit, 16-bit, and 32-bit microcontrollers
  • Experience with unit and system testing

Tools & Platforms

  • Embedded IDEs: STM32CubeIDE, MPLAB, or similar
  • Communication protocols: SPI, I²C, UART, CAN, USB, Ethernet
  • Debugging tools: oscilloscopes, logic analyzers, protocol analyzers
  • PCB design software: Altium Designer (to support hardware collaboration)
  • Version control: Git
  • Microsoft Office suite (Word, Excel, PowerPoint)

Responsibilities

  • Develop and optimize firmware for 8-bit, 16-bit, and 32-bit microcontrollers and embedded platforms (MIPS, ARM, STM32)
  • Implement and manage RTOS or bare-metal solutions
  • Design and maintain device drivers and middleware for communication interfaces (SPI, I²C, UART, CAN, USB, Ethernet)
  • Conduct integration testing and qualification of firmware with hardware systems
  • Collaborate closely with hardware engineers for seamless firmware-hardware integration
  • Write technical documentation including firmware specifications, test descriptions, interface definitions, user manuals, and integration guides
  • Contribute to process improvements through automation and coding standards

Application

Apply via www.edrecruiters.co.za or submit your CV to cv@edrecruiters.co.za (#3943)

ONLY SA CITIZENS

Requirements

  • Bachelor's or Master's degree in Electronic Engineering, Computer Engineering, or related discipline
  • 5+ years in embedded software development
  • Strong proficiency in C, particularly bare-metal embedded programming
  • Thorough understanding of microcontrollers, digital/analogue circuits, and low-level hardware interaction
  • Experience with real-time operating systems (RTOS) and concepts
  • Experience with hierarchical state machines
  • Proficient with 8-bit, 16-bit, and 32-bit microcontrollers
  • Experience with unit and system testing

Responsibilities

  • Develop and optimize firmware for 8-bit, 16-bit, and 32-bit microcontrollers and embedded platforms (MIPS, ARM, STM32)
  • Implement and manage RTOS or bare-metal solutions
  • Design and maintain device drivers and middleware for communication interfaces (SPI, I²C, UART, CAN, USB, Ethernet)
  • Conduct integration testing and qualification of firmware with hardware systems
  • Collaborate closely with hardware engineers for seamless firmware-hardware integration
  • Write technical documentation including firmware specifications, test descriptions, interface definitions, user manuals, and integration guides
  • Contribute to process improvements through automation and coding standards

Skills

Altium DesignerARMCCANDockerEmbedded IDEsEthernetGitI²CMIPSMPLABOSPCB designRTOSSPISTM32STM32CubeIDEUARTUSBVersion control

Don't send a generic resume

Paste this job description into Mimi and get a resume tailored to exactly what the hiring team is looking for.

Get started free