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.
* Experience: Minimum 3 years in a similar role.
* 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.
* Fluent English (written and verbal).
Desirable Skills & Competencies
* Proficiency in code optimization (memory footprint and execution time).
* Experience using laboratory equipment such as oscilloscopes and power supplies.
* 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).
#J-18808-Ljbffr