Senior Embedded Software Engineer to work in our Open Source Software Team at our Global Headquarters in Cambridge
The Open Source Software (OSS) team is responsible for developing and improving the software eco-system around Arm's next generation of applications processors.
As a member of the Open Source Software Group you will have the opportunity to build upon your existing background, knowledge and expertise and contribute to design and development of Solutions catering to different segments such as Mobile/Server/IoT/Automotive, which become reference designs for futuristic devices in the market. This role provides you an opportunity to be an active contributor in open source communities.
You will join a team of Software Developers who all share a passion for wanting to stamp their mark on the future of computing platforms
We seek individuals with exposure and knowledge of System software stack ranging from BareMetal firmware, bootloaders, Kernel and Distros.
If you are similarly passionate about cutting edge technologies, then we want to hear from you!
Responsibilities include
- Your day to day role will involve system software development, test, and debug on various platforms, including software models, pre-silicon emulation and development boards
- Developing and maintaining software stacks for Arm’s reference solutions for future Arm devices.
- We want you to be able to analyze industry specs, roadmap requirements, breakdown tasks and help execute the project plans
- Your activities will include upstreaming and maintenance
As an active member of an extended development team you can expect to be working face to face with some of the greatest household names in our industry
You would be helping to develop, optimize and deliver the software needed to support Arm's groundbreaking IP, as well as helping Arm grow its role in new embedded and enterprise market segments.
Essential Skills & Qualities
- University degree (or equivalent), ideally in a numerate subject, although other graduates would be considered if they have appropriate experience.
- Significant experience in embedded software development
- Hands-on experience in firmware development and a command over a range of related concepts such as bootloaders, device drivers, OS fundamentals preferably Linux, low level power management, developing secure system
- Excellent C skills! some assembly programming skills with proficiency with the GNU toolchain and/or LLVM and cross compiling
- Strong interpersonal skills are vital for success; we are looking for excellent written and spoken English. Do you have the capability to support key partners with their internal development programs?
- We expect a professional, enthusiastic, and flexible approach to work with a flair for creative lateral thinking and problem solving with a dedication to extend the breadth and depth of your knowledge
Desirable Skills & Qualities
- Experience with standard firmware implementations: e.g. UEFI, U-Boot or LinuxBoot
- Experience of software profiling, instrumentation, and optimization
- Good understanding of test methodologies, CI and test automation
- Understanding of open-source software development cycles and contribution processes
- Knowledge of computer system architecture (pipelines, caches, MMUs, Interrupt Controllers, timers)
- Knowledge of scripting languages such as Python or Shell scripting
#LI-SS1