Responsibilities
- Designing program architecture based on project requirements and hardware specifications.
- Develop software code, embedded programs, and system protocols.
- Conducting tests on the embedded software systems to ensure proper integration
- Troubleshooting embedded systems and diagnosing errors, malfunctions, or inefficiencies.
- Generating diagnostic reports, technical manuals, and software development documentation.
- Support software QA and optimise performance
- Provide post production support when necessary
- Maintaining embedded software systems and performing maintenance as needed.
- Assess third party and open source software
Experience
- The ideal candidate has 5 years of experience as a Senior Embedded System Engineer
- Experience working in a startup environment is a plus
- Proficiency in C and C# or C++ programming languages.
- Proficiency in Python is a plus.
- Experience with OS platforms such as Linux, Windows.
- Excellent knowledge of OS coding techniques, IP protocols, interfaces and hardware subsystems
- Proven experience in embedded systems design with multitasking real-time operating systems
- Familiarity with hardware protocols including USB, UART, I2C, and SPI.
- Strong organizational and project management skills.
- Excellent diagnostic skills.
- Strong analytical and problem-solving abilities.
- The ability to keep abreast with the latest advancements in technology and techniques.