Design Engineer (Test Development - Firmware)

Permanent Personnel Services Pte Ltd| Date Posted: 10-Jun-2019
EA Licence No: 00C5285|EA Personal Registration No: R1102605
Save Job
Job Nature:
Permanent, Contract
Position Level:
Entry Level, Experienced
Diploma, Bachelor's / Honours, Masters / PhD

Job Description

Design Engineer (Test Development – Firmware) 


Responsible for the analysis of requirements, architecture definition, design, development and debug of embedded firmware for microcontroller-based test solution used in manufacturing test system.

Drive development projects in all phases from design specification to release.

Developing high quality source code targeting the embedded system.

Interface with low level microcontroller components (I2C, SPI, USB, UART, CANBUS).

Debug and fix hardware/software issues in embedded system.

Performing effective analysis of functional issues or performance profiling with the firmware and hardware in test environments or target host systems.

Support project initiatives collaborating with the rest of the design team ensuring that development milestones and deadlines are met.

Define and implement high performance software by leveraging a strong understanding of embedded hardware design.

Analyzing and enhancing efficiency, stability and scalability of system resources.

Actively participate on, and at times leads, cross-functional teams to develop new hardware modules as well as address design issues or maintenance of existing hardware modules.

Works on complex issues where analysis of situations or data requires an in-depth analysis of variable factors. Exercises judgment in selecting methods, techniques and evaluation criteria for obtaining results.

Evaluate, test and review designs to determine if program will perform according to requirements and specifications.


Interacting with teams :

Able to provide feedback on peer designs in an open and collaborative design review forum.

Be a contributor in developing an environment of continuous improvement across all hardware modules and development groups.

Coordinate with project team to create and release hardware requirements, design specification and design descriptions for assigned designs applicable standards and procedures.

Responsible for recording and sharing technical knowledge gained with colleagues.

Review hardware documentation for accuracy including documentation intended for customer use.

Able to work effectively within different cross-functional teams within the company.

Able to communicate and co-work with customers on test specification and test system design.

Attend weekly project conference call with customer and cross-functional team from the organization.


Traveling and on-site support :

Able to do frequent business travel within Asia during project pilot build.



Bachelor Degree/Msc in Electronics Engineering or other relevant discipline or equivalent combination of education and experience.

3-5 years of working experience on test engineering, test development, or equivalent working experience in a manufacturing  environment.

Prior design engineering experience with analog and digital hardware.

Programming experience in C (C++ is a plus) for embedded systems, including development of algorithms, manipulation of data structures, and implementing highly optimized code.

Experience with embedded resource-constrained environments.

Experience writing software tools for hardware validation.

Experience architecting firmware, hardware and software interfaces (Arm Cortex or equivalent embedded microcontroller).

Strong understanding of the communication transport protocol like I2C, SPI, UART and USB.

Good technical and analytical skill with ability to perform electronic system debug effectively.

Experience driving technology integration and adoption.


Additional experience that will constitute a plus:

Experience working with real-time operating systems

Familiarity with DSP architecture and programming

Knowledge of Forth, Lua, python programming

Knowledge of Software version control (GIT)

Software Image processing

Linux programming environment

Understanding Bluetooth Protocol stack

Knowledge Android, iOS programming

Ability to work both individually and as part of a team.

Effective communication skills with ability to communicate clearly to cross-functional team within company or external customer/vendors.



Company Overview
Permanent Personnel Services Pte Ltd