Seeking an Experienced Embedded Software Engineer
We are looking for a passionate and enthusiastic Embedded Software Engineer for our client.
Responsibilities
- Design and implement software of embedded devices and systems from requirements to production and commercial deployment
- Design, develop, code, test, and debug system software
- Analyze and enhance efficiency, stability, and scalability of system resources
- Participate and/or lead code design review sessions
- Participate in design and reliability testing of new products
- Integrate and validate new product designs
- Support software QA and optimize I/O performance
- Provide post‑production support
- Interface with hardware design and development
- Assess third‑party and open‑source software
- Maintain design through the product life cycle
- Create testing procedures in preparation for product certification and volume production
- Liaise with external technology partners
- Provide technical support of products and systems to sales, manufacturing, suppliers, technology partners, customers, etc.
Person Specification
- Ability to work under pressure and meet deadlines
- Excellent problem‑solving and troubleshooting skills
- Willingness to learn
- Integrity
- Ability to work in a team or independently
Desired Experience & Qualifications
- S4 Diploma in Electronic Engineering, OR BSc in Electronic Engineering OR BSc in Computer Science
- 4 years' experience in software engineering
- Experience in hands‑on development and troubleshooting on embedded targets
- Firmware Development with a proven background in embedded C or C derived languages for 8, 16, and 32‑bit embedded environments
- Proven experience in embedded systems design with pre‑emptive, multitasking real‑time operating systems
- Familiarity with software configuration management tools, defect tracking tools, and peer review
- Strong understanding and experience with I2C, SPI, I2S, UART, Flash RAMs, LCD, SD cards
- Experience with hotplug drivers, TCP, HTTPS, and video formats like MJPEG, H
- Experience with Linux, Android, or RTOS
- Multi‑core, interrupt‑driven complex system experience
- Experience with ARM microprocessors
- Extensive experience with software engineering processes and tools
- Experience developing software for embedded or mobile applications with limited computing resources
- Experience and comfort with lab tools such as debuggers, logic analyzers, and oscilloscopes
- Strong documentation and writing skills
- Experience programming on STMicroelectronics micro and/or Mediatek would be an advantage
- Adequate knowledge of reading schematics and data sheets for components
Please apply if you fit the above criteria.