We are looking for a skilled Embedded / Firmware Engineer to join our engineering team. In this role, you will be responsible for developing, testing, and maintaining embedded software and firmware for our hardware products. The ideal candidate has a strong background in low-level programming, microcontroller systems, and real-time operating systems (RTOS).
Key Responsibilities:
* Design, develop, and debug embedded firmware for microcontrollers and embedded systems
* Collaborate with hardware engineers to integrate firmware with hardware components
* Write clean, efficient, and well-documented code in C/C++ or Assembly
* Develop and execute unit and system-level tests for firmware validation
* Optimize code for performance, memory usage, and power efficiency
* Maintain and improve existing firmware codebases
* Work with cross-functional teams on system architecture and product development
* Troubleshoot issues and support product testing, QA, and field deployment
Required Qualifications:
* Bachelor's or Master's degree in Electrical Engineering, Computer Engineering, or related field
* 2–5 years of experience in embedded systems development
* Strong proficiency in C/C++ and embedded programming
* Experience with microcontrollers (e.g., STM32, ARM Cortex-M, AVR, PIC)
* Familiarity with RTOS (e.g., FreeRTOS, ThreadX) and/or bare-metal systems
* Understanding of digital electronics, hardware interfaces (UART, SPI, I2C, GPIO, ADC, PWM, etc.)
* Experience with version control tools (e.g., Git)
* Ability to read schematics and use hardware debugging tools (oscilloscopes, logic analyzers, etc.)
Job Types: Full-time, Fixed term contract
Education:
* Bachelor's (preferred)
Experience:
* Embedded / Firmware Engineer: 2 years (preferred)
Language:
* English (preferred)
Work authorisation:
* United Kingdom (preferred)