Software Engineer – Kernel (FreeBSD, Linux)
Job ID #: 18489
Job Category: Software Engineering
Employment Type: Experienced Professionals
Division: Central Engineering – OSS
Department: Central Engineering OSS – Engineering
Primary Country: UK
Primary Location: Cambridge
Job Description
Kernel Developer to work at Arm’s Headquarters in Cambridge.
Do you want to work with a dynamic, collaborative, highly motivated and influential team that contributes to the upstream development of FreeBSD and Linux Kernel?
We are seeking a forward-thinking, can-do minded, software engineer to work in our Open Source Software (OSS) group. This group is responsible for developing and improving the open sources software eco-system around Arm’s next generation of applications processors. This frequently means working with processors and other hardware technology not yet available to the public.
Job Purpose and Accountabilities
In this role, you will be a member of the Kernel team who specialises in arm64 architecture ports in the Open Source Software (OSS) group within Arm.
Day to day activities will include:
- Working with upstream communities to improve and ensure the health of the FreeBSD project, and acting as a liaison between these communities and Arm
- Analysing and subsequently improving performance of FreeBSD Kernel on arm64 platforms
- Day to day activities will include: development and testing, debugging on different platforms (from software models, through FPGA systems, all the way to development boards and shipping products)
- We want you to be able to conduct code review – both for internal code and upstream,
- Your activities will include upstreaming and maintenance
- You will participate in enabling new arm64 architecture features, system IP and bug fixes for the FreeBSD Kernel
Education & Qualifications:
Established experience or a Bachelor’s (or above) degree in a STEM subject.
Essential Skills
- You have a passion for Open Source software development
- Experience of upstream BSD or Linux kernel development or developing commercial products based on those kernels
- Broad knowledge of developing and debugging operating systems
- You will have excellent C skills; some assembly skills are desirable
- You are familiar with upstreaming and codeline maintenance; some knowledge of Git or other source control tools
- Problem solving and debugging skills are areas in which you have proficiency
- You are more than aware of the vagaries of System Architecture (pipelines, caches, MMUs, Interrupt Controllers, timers)
- You will exhibit an understanding of how to rigorously test software using various techniques
- Knowledge of at least one CPU architecture
- Your strong interpersonal skills are vital for success; we are looking for excellent written and spoken English; capable of writing documentation and mentoring junior engineers
- We expect a professional, enthusiastic and flexible approach to work with a flair for creative lateral thinking and problem solving with a commitment to extend the breadth and depth of your knowledge
Desirable Skills
- Experience as a FreeBSD committer
- We value familiarity with open-source project development cycles and contribution processes
- We are seeking an understanding of Arm architecture and tools
- We need knowledge of software design techniques and maintaining compatibility, and we value previous experience in large, multi-site software development project
- Experience of software optimisation, instrumentation, Multi-core
- Strong familiarity with testing methodology and automated testing systems alongside hands-on experience in developing with embedded platforms and/or real-time operating systems
- We seek experience with scripting languages, e.g. Bash, Python, Perl, etc.
Apply for job
To view the job application please visit careers.peopleclick.com.
Podcast EP267: The Broad Impact Weebit Nano’s ReRAM is having with Coby Hanoch