Principal Software Engineer
6th November 2020
This job has now expired please search on the home page to find live IT Jobs.
Principal 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 senior member of the Open Source Software Group you will have the opportunity to build upon your existing background, knowledge and expertise and lead development of Solutions catering to different segments such as Mobile/Server/IoT/Automotive, which become reference designs for futuristic devices in the market.
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!
Your day to day role will involve leading technical development of enterprise and IoT based edge reference solutions for future Arm devices
Plan and deliver based on roadmap requirements, along with Project and Technology Managers
Stakeholder engagement with various groups within Arm
Provide technical advice and direction to both Arm's, and Arm Partners' platform implementation projects
Mentoring of team members
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.
Proven experience in embedded software development on various platforms, including software models, pre-silicon emulation and development boards
Expertise in low level systems 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
Your 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
Knowledge of hypervisors (e.g. KVM), container runtimes, userspace networking using DPDK
Server software experience, including RAS, Secure Boot, BMC management
Experience with standard firmware implementations: e.g. UEFI, U-Boot or LinuxBoot
Development experience with Interconnects like PCIe, CCIX, CMN
Experience of software profiling, instrumentation, and optimization
Good understanding of test methodologies, CI and test automation
Knowledge of scripting languages such as Python or Shell scripting
We are an Equal Opportunity Employer and do not discriminate against any employee or applicant for employment because of race, color, sex, age, national origin, religion, sexual orientation, gender identity, status as a veteran, and basis of disability or any other federal, state or local protected class.
Arm is an equal opportunity employer, committed to providing an environment of mutual respect where equal opportunities are available to all applicants and colleagues. We are a diverse organization of dedicated and innovative individuals, and don't discriminate on the basis of any characteristic.