ARM-posted 3 days ago
$156,500 - $211,700/Yr
Full-time • Senior
Hybrid • Waltham, MA
Professional, Scientific, and Technical Services
Craft a resume that recruiters will want to see with Teal's resume Matching Mode

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!

  • Benchmarking infrastructure - integrate and evolve an infrastructure for measuring, logging and visualizing / reporting of performance metrics to allow engineers to get deeper visibility of performance
  • Connect with software engineers across Arm to understand their requirements and performance challenges and work with them to log and visualize data.
  • Help define and drive guidelines around performance
  • Design and implement complex performance investigations that drill down into a particular area
  • Recommend, prototype or implement performance improvements to the software
  • Write tooling and plugins in to make it easy for the team of software developers to understand or improve performance
  • Proficiency and passion for C++ performance optimization.
  • Experience with scripting languages such as Python, Javascript, etc.
  • Strong interpersonal skills and excellent written and spoken English
  • Experience of the full software development lifecycle in a commercial or open source environment
  • Experience writing benchmarking applications and reporting infrastructure.
  • Experience with low-level or bare-metal software, firmware or device-driver development is an advantage.
  • Experience with CI/CD tools like Jenkins, Docker, AWS
  • Experience working on complex software projects in collaboration with a large multi-site team.
  • Working in a highly stimulating environment with opportunities to share ideas and learn from top engineers.
  • Competitive and equitable salary based on skills and experience.
  • Total reward package details shared during recruitment.
© 2024 Teal Labs, Inc
Privacy PolicyTerms of Service