Please note this is for our partner Matriarch Matriarch is hiring an Embedded Firmware / Hardware Engineer to own the firmware and electronics of our IoT metering devices that are designed to capture measurements from a range of sensors and telemetry in the field. Devices include meters and data loggers, specifically for energy and water management. Our devices feed the measurement engine that drives decision support, revenue recovery, asset management and real-time tracking. We depend on a robust measurement pipeline to administer a top-tier service, and it starts on the hardware level. Duties and responsibilities Design, build and maintain C/C++ firmware for our IoT devices, from peripheral drivers to network payloads Write drivers for new meters and IoT radio modules (cellular, Sigfox, LoRaWAN, BLE) from datasheets and protocol specifications Investigate and fix field faults, keeping memory, timing and power within budget on constrained parts Run releases: versioning, release notes and staged rollout to the fleet Design schematics and PCBs in Altium for interface, power and radio boardsBring up and validate new boards, and support production test and certification Document designs, review code and boards, and work with the platform and operations teams Help turn device-level data into information the business can understand, working with the people who monitor sites and investigate faults Comply with company policies on quality, safety and data protection (POPIA) What you need BSc / BEng / BTech in Electrical, Electronic or Computer Engineering, or equivalent experience At least 3 to 5 years of hands-on embedded development, with at least one product shipped to the field Strong embedded C and working C++ on ARM Cortex-M, AVR or similar, including bare-metal state machines, interrupts and watchdogs Peripheral drivers (UART, I2C, SPI, GPIO, ADC) and serial protocols, ideally Modbus RTU over RS-485 Integration of at least one IoT network: cellular LTE-M / NB-IoT, Sigfox, LoRaWAN or BLE Schematic capture and PCB layout in Altium Designer, and board debugging with oscilloscope and logic analyser Git, Python for tooling, and clear written and spoken English Ownership and clear communication. You can work through a problem, ask questions and see a change through to the fleet Competency requirements Embedded C / C++ on constrained microcontrollers Peripheral drivers and serial protocols Debugging across firmware and hardware IoT wireless connectivity (cellular, Sigfox, LoRaWAN, BLE) Bare-metal scheduling, RTOS and low-power design Metering protocols (IEC 62056-21, OBIS, KMP) Schematic and PCB design in Altium Board bring-up, test and certification Problem-solving and attention to detail Ownership and independence Communication and collaboration Nice to have IoT networks: more than one network, and over-the-air updates for a deployed fleet Smart metering: DLMS/COSEM, OBIS, or energy and solar PV experience RTOS: FreeRTOS, Zephyr and host-side unit testing Compliance: RF awareness, ICASA / EMC and production test fixtures Tooling: Jira, Confluence and AI-assisted development tools You do not need the whole list. We are interested in how you build, how you approach unfamiliar problems and what you would like to learn