Embedded Systems Engineer

The Embedded Systems Engineer envisions, designs, implements, tests, and delivers embedded systems in a product development environment. He/She contributes to the definition of requirement, product, design specifications and collaborates with hardware team throughout the software development lifecycle. He defines innovative approaches to embedded systems development and integration of security aspects. He develops prototypes, creates software tools for test and automation, and evaluates latest technologies. He works with a team setting and is proficient in programming languages required by the organization. He is also knowledgeable of microprocessor and microcontroller based hardware components. The Embedded Systems Engineer is methodical in the development and integration of embedded systems, and also creative in exploring ways to enhance embedded system solutions further. He works effectively in a team, guides junior team members and is able to engage others when presenting his ideas to both internal and external stakeholders.

Skills and Competencies

Technical Skills & Competencies

Applications Development
Proficiency Level
"Plan the application development process, program applications and secure features, applying suitable debugging techniques to resolve complex errors "
4
Applications Integration
Proficiency Level
"Oversee end-to-end process of application integration, determining suitable middleware and testing procedures and resolving issues that arise"
4
Budgeting
Proficiency Level
"Prepare business unit’s operational budgets "
3
Business Environment Analysis
Proficiency Level
"Utilise research instruments, quantitative and qualitative data to gather information on the business environment, evaluate data to draw out meaningful inferences that impact the organization's market positioning and provide feedback to management"
3
Business Needs Analysis
Proficiency Level
"Elicit and analyze business requirements from key stakeholders and assess relevant solutions and their potential impact"
3

Generic Skills & Competencies

Computational Thinking
Proficiency Level
Develop and create computational models, tools and techniques to implement new solutions and apply to other problems.
Advanced
Lifelong Learning
Proficiency Level
Engage in collaborative learning by discussing one’s learning with others and soliciting feedback to continually improve oneself.
Intermediate
Problem Solving
Proficiency Level
Anticipate potential problems beyond the current scope and apply higher order problem solving tools and techniques to turn problems into opportunities.
Advanced
Teamwork
Proficiency Level
Facilitate work team activities, provide assistance and support needed by team members and promote ownership and commitment among team members to work goals to improve team performance.
Intermediate
Communication
Proficiency Level
"Articulate and discuss ideas and persuade others to achieve common outcomes "
Intermediate

Critical Work Functions and Key Tasks

Identify business and user requirements

• Determine user requirements based on business needs 
• Perform requirements analysis 
• Formulate specifications on delivery platforms for embedded systems 
• Develop understanding of hardware schematics and datasheets 
• Determine approaches that balance security, stability, and performance needs 
• Identify system-level traceability requirements and tools 
• Develop project documentation, business cases, proposals, and communication materials

Develop embedded systems software

• Lead the design of specific modules for development of software for embedded systems 
• Generate design specification and test cases and/or scripts 
• Define test frameworks and environments 
• Create software tools for tests and automation 
• Participate in hardware design and security architecture reviews 
• Evaluate software resilience against reverse engineering 
• Define best design practices for development and testing

Optimise embedded systems

• Analyse and enhance efficiency, stability and scalability of system and resources 
• Optimise codes for implementation in various platforms 
• Develop new processes and tools to speed up the testing process 
• Recommend ways to improve performance and robustness 
• Oversee the development of technical guides for internal and external users 
• Support software quality assurance to optimise I/O performance

Integrate software and hardware

• Test software and hardware interactions from prototype to manufacturing release 
• Validate the integration of software with hardware 
• Review codes and design to propose improvements 
• Diagnose and rectify technical problems in embedded software 
• Evaluate failed system scenarios 

More Information

Get yourself a new skill

In this Path

Coming soon...