Show more
The Open-Source Software (OSS) team is responsible for developing and improving the software ecosystem around Arm's next generation of applications processors. This frequently means working with processors and other hardware technology not yet available to the public. We work on a range of development platforms, software-models, FPGAs and early silicon, sometimes many months before the processors are used in real products.
You will have the opportunity to build upon your existing background, knowledge and expertise and contribute to exploration of how architecture, hardware and software come together to maximise performance in these critical workloads of storage/database/"Big Data" for data centre, and drive performance improvements for both current and future CPUs. Application and system analysis, technological research, experimental studies, and performance analysis are examples of typical activities. We are looking for people who have experience with and expertise of multiple layers of the software stack used in data centres, including the kernel, shared libraries and algorithms, distributed components, and solutions.
-
Collaborating with internal/external collaborators to understand performance related requirements on Arm servers.
-
Working with Arm internal teams and external partners to characterize typical workloads and find opportunities for software optimization.
-
Performing investigations with IP design team that are sought at workload reduction to benchmark the efficiency of new IP features in a full system context.
-
Developing tools to enable better application inspection and profiling analysis.
-
Working with open source communities to upstream patches and maintain code.
-
Collaborating with other architects/engineers to influence Arm technology.
-
Whilst a degree course that covers software development will be looked at favorably; a successful candidate should have proven experience in computer architecture related performance analysis and software optimizations.
-
Proficiency in C/C++/Assembly, experience in other programming languages, e.g. Java, Go, Python, etc is a good plus.
-
Good understanding of modern CPU architecture. Familiar with concepts such as execution order, pipeline, cache, MMU and NUMA, and how these hardware facts impact high-level software performance.
-
Proficiency in debugging and optimizing sophisticated software systems. Familiar with Linux performance analysis tools and system level performance tuning.
-
Clear and effective communication skills. Good interpersonal and relationship building skills.
-
Able to work in complex environments under pressure with teamwork spirit, collaborate with colleagues in other groups and sites, effective time-management and prioritization skills.
-
Experience with PCIe, CXL, and kernel bypass.
-
Familiarity of AArch64 architecture.
-
Experience with analyzing and dissecting raw performance data to produce accessible, accurate summaries that can be used to guide future optimisations.
-
Experience with working with open-source community. We value familiarity with open-source project development cycles and contribution processes.
-
Understanding of I/O and networking and their impact on server-side application performance.
-
Familiar with testing methodology and test automation. An awareness about the value of CI and automated test system.
#LI-LB1
At Arm, we want our people to Do Great Things. If you need support or an accommodation to Be Your Brilliant Self during the recruitment process, please email accommodations@arm.com. To note, by sending us the requested information, you consent to its use by Arm to arrange for appropriate accommodations. All accommodation requests will be treated with confidentiality, and information concerning these requests will only be disclosed as necessary to provide the accommodation. Although this is not an exhaustive list, examples of support include breaks between interviews, having documents read aloud or office accessibility. Please email us about anything we can do to accommodate you during the recruitment process.
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.
Arm’s hybrid approach to working is centred around flexibility, where we split our time between the office and other locations to get our work done. Within that framework, we empower groups and teams to determine their own particular hybrid working pattern, depending on the work and the team’s needs. Details of what this means for each role will be shared upon application. In some cases, the flexibility we can offer is limited by local legal, regulatory, tax, or other considerations, and where this is the case, we will collaborate with you to find the best solution. Please talk to us to find out more about what this could look like for you.