We are looking for a Senior Software Engineer to help a team of 140 developers optimize and improve performance in a large, complex C++ codebase. Activities in your role might include: developing, supporting and operating benchmarking infrastructure; building custom tools to help developers measure and understand various aspects of performance; designing & running performance investigations; and analyzing complex performance data. Your work will set developers up to facilitate performance improvement of the Fast Models simulator. Fast Models is used for multiple sectors including HPC, cloud, automotive, and mobile. It plays a critical role in the SoC design process, both as an independent implementation that enables pre-silicon validation against FPGAs and RTL emulators, and as a simulator for developing software for a new system so that the software stack is ready to go on day one of silicon availability. Simulating innovative, complex designs is very computationally demanding, so improving performance here will make a meaningful difference to these design programmes. Ideally, you are someone who enjoys finding performance wins in software, and helping others with this; and you are willing to challenge the status quo, share your ideas and learn from others in order to improve performance and performance tooling. You'll have the opportunity to grow your own optimization expertise by learning from Arm's authorities in the area. Also, we hope you'll help steer the wider team to seek the best ways of accomplishing improvements. This role will often involve collaborating with developers across several sites. So, if you love improving software performance, you are caring, self-starting, and keen to innovate, we would like to hear from you!