Responsibilities:- Active involvement in the software design 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.
- 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 :- 6+ Years work experience + University degree (or equivalent experience), ideally in a numerate subject.
- 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.
- Expertise in application and low-level systems, with a strong understanding of system architecture (preferably ARM), OS fundamentals, bootloaders, and device drivers. Proficiency in Linux/Windows operating systems and driver development is preferred.
- Strong interpersonal skills; excellent written and spoken English.
“Nice To Have” Skills and Experience :- Familiarity with open-source project development cycles and contribution processes.
- Experience of software profiling, instrumentation, and optimization.
- Verification and validation of firmware on both pre-silicon and post-silicon platforms.
- A knowledge of how to test software using various techniques alongside an awareness of the value of CI and automated test systems.
- Familiarity and flexibility in the use of various software development lifecycle methods including Agile.
In Return:You will have the opportunity to learn about the latest Arm architecture features, working closely with highly skilled engineering teams on ground-breaking technology. You will be empowered to continually identify and roll out improvements to our ways of working.