Active involvement in the software design and test of reference application processor firmware.
- Your day-to-day role will involve low level software development, test and debug on various platforms, including software models, development boards and shipping products.
- Creating software stacks for Arm’s reference platforms for future Arm devices.
- Development of test code
- Create automation solutions to streamline and minimize manual testing and development tasks.
- We want you to be able to analyse industry specs, roadmap requirements, breakdown tasks and help implement the project plans.
- Your activities will involve upstreaming and maintenance.
Required Skills and Experience:
- Minimum 4+ years of relevant experience.
- Excellent C/C++ programming skills with the ability to add significant new functionality, analyse and fix complex defects. Some knowledge of assembly and strong debugging skills are preferred.
- Demonstrated experience with software testing or software development.
- Expertise in application and low-level systems, with a solid understanding of system architecture (preferably ARM),
OS fundamentals, bootloaders, and device drivers. Proficiency in Linux/Windows operating systems and driver development is preferred.
- Good understanding of test methodologies, CI and test automation.
- Strong interpersonal skills; excellent written and spoken English.
“Nice To Have” Skills and Experience:
- Experience with Python programming and writing shell scripts.
- Basic understanding of the Linux kernel, system software and device drivers, and Android internals
- Familiarity with open-source project development cycles and contribution processes.
- Experience of software profiling, instrumentation, and optimization.
- Verification and validation of firmware.
- A knowledge of how to test software using various techniques alongside an awareness of the value of CI and automated test systems.
- Experience with Security Development Lifecycle (SDL) practices.
- Familiarity and flexibility in the use of various software development lifecycle methods including Agile.