Embedded Software Engineer
Published
Experienced hires
Embedded Software Engineer
Send your CV tohr@craner.hk
Job summary
Develop embedded firmware and device drivers on MCU/embedded Linux platforms (e.g. STM32); debug peripherals (UART, I2C, SPI, CAN, Ethernet) and implement MQTT/Modbus protocols; optimise stability, power and real-time performance; support smart construction and edge devices from prototype to mass production.
Responsibilities
- Develop embedded firmware, write low-level drivers and business logic code on platforms such as STM32 and Linux, and complete unit self-testing.
- Debug peripherals including UART, I2C, SPI, CAN and Ethernet interfaces, interfacing with hardware modules such as sensors, actuators and cameras.
- Implement communication protocols such as MQTT and Modbus; complete data integration and command exchange between edge devices and backend services.
- Optimise system stability, power consumption and real-time performance; identify and resolve bugs in hardware–software integration.
- Write technical documentation and interface specifications; work with the QA team on functional verification; follow through prototype and mass-production maintenance.
- Collaborate with the hardware, algorithm and backend teams to implement embedded AI perception, data acquisition and related functions.
Requirements
- Bachelor's degree or above in Electronics, Automation, Computer Science, Embedded Systems or a related discipline; 2+ years of embedded development experience.
- Proficient in C development; familiar with STM32 development; skilled in driver development for common peripherals such as I2C, SPI, CAN and UART.
- Knowledge of embedded Linux development; experience with cross-compilation, device trees and application-layer development is an advantage.
- Proficient in industrial communication protocols such as Modbus and MQTT; experience in IoT device development.
- Able to read hardware schematics; capable of hardware–software integration and troubleshooting; experienced with oscilloscopes and logic analysers.
- Good Git version control practices; able to write development documentation independently; strong teamwork.
