Arm’s Software Engineering group is responsible for creating and improving the software eco-system around Arm's next generation of applications processors. We help our partners build creative Arm-powered products for various segments: Mobile, Server, IoT connected devices, Augmented & Virtual Reality offerings, Autonomous Driving Solutions, etc. In this process, we work on a range of development platforms: software-models, FPGAs, emulator, silicon. You will join a team of passionate Software Engineers who all want to mark their stamp on the future of ARM-powered computing, wherever it may lead.
Job Overview:
As a member of the Software Group, you will have the opportunity to build upon your existing background, knowledge, and expertise and contribute to Open Source projects, e.g., EDK II, Linux Kernel, Trusted Firmware, SCP firmware, etc., providing reference implementations and optimizations to key software system components. This contribution helps drive the development of world-class System Software for architected hardware and software platforms catering to the Server Segment and becomes reference designs for futuristic ARM-based servers. We seek individuals with exposure and knowledge of every level of the System software stack, ranging from BareMetal firmware, bootloaders, Kernel, and Distros. Passionate about innovative technologies? - We want to hear from you!
Responsibilities:
* Contribution to the design and development of Reference systems and Platform software for Arm application processors and MCUs.
* Supporting key partners, upstreaming, and maintaining open source software components.
* Be part of an extended development team and you can expect to be working face-to-face with some of the greatest household names in our industry.
* Helping to develop, optimize, and deliver the software needed to support Arm's ground-breaking IP.
* Helping Arm grow its role in new embedded and enterprise market segments.
* Prepare test specifications and test plans based on design documents of software and hardware modules.
* Develop unit test modules/scripts for validating the software/hardware functionalities.
Required Skills and Experience:
* Experience in firmware or Linux kernel development, command over concepts such as bootloaders and device drivers.
* Experience in developing complex software stacks written preferably in C.
* Expertise in debugging and optimizing complex software systems.
* Knowledge of any SCM, preferably Git.
* Strong interpersonal and communication skills that are essential for success; we are looking for excellent written and spoken English.
* Professional, enthusiastic, and flexible approach to work with a flair for creative lateral thinking and problem-solving.
“Nice To Have” Skills and Experience:
* Experience working in the open-source community. We value understanding of open-source project development cycles and contribution processes.
* Familiarity with ARM-A or ARM-M architectures.
* Familiarity with open source projects such as TF-A and EDK II.
* Good understanding of ARM-v8-A and ARM-v8-M architectures, SMMU, or IO-MMUs.
* Familiarity with technologies such as RAS, hypervisors, CXL, power management, and security.
* Familiarity with industry standards such as ACPI and UEFI.
* Familiarity with open-source test tools.
* An awareness of the value of CI and automated test systems.
* Experience with customer interactions, diagnosing and resolving reported issues.
In Return:
Our UK offices are amazing places to collaborate. We also have some scope to adapt the job role and title for the right person - if you are interested but unsure whether you tick all the boxes, we still would love you to reach out! We are keen to welcome versatile people into Arm!
#J-18808-Ljbffr