Role Overview
We are seeking a Software Engineer to join our clients R&D team, responsible for developing embedded firmware for microprocessors and designing test programs for production testing. This role plays a key part in ensuring the quality, reliability, and performance of integrated circuits.
Key Responsibilities
- Develop and optimise embedded firmware for microprocessors.
- Design and implement continuous integration tests for firmware validation during ASIC prototyping.
- Participate in the specification and review of PCBs used in production testing.
- Contribute to the development of technology evaluation vehicles and software development kits (SDKs).
- Automate laboratory testing and measurements using MATLAB, TCL, Python, and other programming languages.
Requirements :
Education : MSc in Computer Science, Engineering, or a related field.Strong experience in embedded programming with C / C++ and Assembly.Understanding of Real-Time Operating Systems (RTOS) and time-sensitive software development.Basic electronic engineering knowledge, including PCB schematic analysis.Ability to work in bare-metal programming environments.Proficiency in code optimisation (memory footprint and execution time).Experience using laboratory equipment such as oscilloscopes and power supplies.Experience : Minimum 3 years in a similar role.Fluent English (written and verbal).Desirable Skills & Competencies :
Familiarity with version control systems and issue tracking software.Basic knowledge of lex & yacc (optional).Experience in developing low-level Linux drivers (optional).Understanding of Hardware Description Languages (Verilog or VHDL) (optional).