Senior Software Engineer
Embedded C/C++ development.
Highly optimised ARM coding, achieving coding standard compliant, highly efficient code with the smallest possible memory footprint.
Develop base infrastructure code to SOP (Production) delivery standards
Embedded Linux and Multi-core development experience
RTOS, memory management and HW bring-up an advantage
Electronics hardware knowledge an advantage.
Take full responsibility for the implementation and the quality of software and algorithm components.
Experience working with bare metal and RTOS software development using C/C++.
Communication interfaces such as CAN, Ethernet, SPI, I2C, UARTs and USB.
Version Control e.g. SVN, Mercurial or GIT.
Desirable
Low power, low latency IoT techniques.
Experience configuring Linux systems for unattended remote operations.Sensor Fusion techniques.
Analytical Software e.g. MATLAB, Simulink for processing time series data.
Knowledge of wireless communication protocols, such as Zigbee, Bluetooth, BLE, WiFi.
Knowledge of image processing.
Experience deploying complex algorithms in embedded devices, possibly including DSP & Machine Learning / AI algorithms.
Electronic hardware design, reading schematics, device datasheets.