Embedded Developer (Device)
Core
Develop and debug software for battery-powered security and automation devices (sensors, cameras) using ARM Cortex-M microcontrollers.
Role type
Embedded Developer (Device)
Builds
Battery-powered IoT security devices (sensors, cameras) for residential and commercial protection
Domain
Consumer Electronics / IoT / Security Systems
Deliverable
production ML models | product features
Required skills
Embedded C, C++, ARM Cortex-M (NVIC, clock tree, IRQs, HAL API), RTOS (FreeRTOS), Low-power optimization, Sub-GHz RF protocols, Bootloader & OTA updates, Hardware debugging (JTAG, logic analyzer), Unit testing
Preferred skills
ARM Cortex-A, ISP/Image Signal Processing, Python/Shell scripting
Technologies
STM32, C, C++, FreeRTOS, GCC/Clang, Make/CMake, Git, ST-Link/JLink, VS Code, Sub-GHz RF
Responsibilities
Develop and debug software for battery-powered embedded devices; Port existing software to new platforms; Optimize software for power consumption and manage MCU low-power modes; Develop device business logic (bare metal + RTOS) for proprietary sub-GHz networks; Support communication stacks and protocols for sub-GHz devices; Collaborate with hardware engineers for device bring-up; Work with bootloader and OTA firmware updates; Analyze and debug systems using logic analyzers, oscilloscopes, and JTAG; Develop embedded software and cross-compile in Linux environment; Write unit tests and perform code reviews
Seniority
Mid-level, hands-on IC
