Job Description: As a Firmware Software Engineer, you will harness computer science and mathematical analysis principles to develop, test, and evaluate the software and systems that empower our state-of-the-art products. This role is pivotal in designing and enhancing the software for diverse applications across various industries.
Responsibilities:
- Develop robust code in C and C++ for embedded environments, ensuring compatibility across multiple processors and platforms.
- Enhance firmware for Graphics and Display pipelines to meet specific product use cases.
- Work collaboratively with internal teams and external vendors to customize firmware, device drivers, and applications to meet project specifications.
- Troubleshoot and devise solutions for issues across the software stack, including hardware functionalities.
- Design and maintain a comprehensive suite of tests, from unit to automated CI tests.
Skills and Experience:
- A minimum of 6 years of industry experience in firmware development for embedded systems.
- Strong proficiency in C and C++, with extensive experience in developing and testing production-level firmware.
- Experience with Real-Time Operating Systems (RTOS) and developing multi-threaded applications.
- In-depth knowledge of the full software development lifecycle, including CI/CD tools and test automation scripting.
- Familiarity with AR/VR technologies and Graphics and Display systems is advantageous.
- Exceptional problem-solving skills, with the ability to work independently and manage complex projects.
- Strong communication skills and ability to work effectively within a team environment.
Educational Requirements:
- Bachelor’s degree in Computer Science, Software Engineering, or a related field.