Embedded Developer: ARM Bare Metal
Listed on 2026-02-11
-
Software Development
Embedded Software Engineer, Software Engineer
Embedded Developer: ARM Bare Metal Applications
Location:
Johannesburg
Hours:
Sedna Business Hours | Hybrid (3 days per week in office)
Travel:
Occasional travel to USA, CT office
Salary:
Market Related
Benefits:
Contribution to medical aid
Work Eligibility:
South African | Permanent Resident
At Sedna, we’re building the future with robotics. Our work is integrating robotics and automation into industries like construction and mining. If you’re passionate about cutting‑edge technology, solving complex problems, and building systems that push the limits of what is possible in robotics and automation, Sedna is where your skills can make a global impact.
We are a US based company with strong South African roots. Our business started in Joburg in 2005 and later moved to the USA. We are now building out our engineering office’s in Cape Town (Century City) and Joburg (Greenstone Hill) to support our US operations and customers.
Job Overview
The Embedded Developer: ARM Bare Metal Applications will develop and maintain software on embedded platforms used in products and services provided by Sedna.
Key Responsibilities
- We are seeking an experienced embedded programmer to develop and maintain firmware for bare metal applications on ARM processors.
- The role involves low‑level programming, hardware‑software integration, debugging, and testing in resource‑constrained environments.
- The ideal candidate will have a strong foundation in electrical engineering principles and hands‑on experience with embedded systems, ensuring reliable and efficient code for real‑time applications.
Qualifications & Experience
Required:
- Bachelor’s degree (BSc/BTech) in Electrical Engineering, Electronics Engineering, Computer Engineering, or a related field Preference for Electrical Engineering C/C++ programming for Linux
- Proficiency in C programming for embedded systems
- Experience with Git version control for collaborative development
- Familiarity with development environments such as Keil, STM
32
Cube, or VSCode for embedded software - Ability to read and interpret electrical schematics
- Basic electrical fault‑finding and troubleshooting skills
- Knowledge of serial communication protocols, including UART, SPI, I2C, USB, and CAN bus
- Experience in software testing, including unit testing, integration testing, and debugging
- Proficiency in code review processes to ensure code quality and maintainability
- Familiarity with ARM processor architecture (e.g., memory mapping, interrupts, and peripherals)
- Proficiency with debugging tools such as JTAG/SWD debuggers, oscilloscopes, logic analyzers, or multimeters
Beneficial:
- Rustlang
- Knowledge of embedded Linux
- Experience with low‑power design techniques, optimization for performance and memory usage in bare metal environments
- Familiarity with build systems like Make, CMake, or Cargo
- Knowledge of security practices in embedded systems, such as secure boot or cryptographic implementations
- Prior work on bare metal projects involving sensors, actuators, or IoT devices
- Able to work independently
- Problem solving and critical thinking
- Time management
- Adaptability and self‑motivation
- Proactive and collaborative approach to teamwork
How to Apply
Submit your CV, transcripts (if applicable), availability and a short note to . Please include examples of relevant projects or code repositories in your application.
#J-18808-LjbffrTo Search, View & Apply for jobs on this site that accept applications from your location or country, tap here to make a Search: