Are you passionate about modern C++, CPU architecture, and development of quality software? Do you enjoy solving sophisticated problems, working in a collaborative environment, and challenging different ideas to drive innovation? If so, we want you on our team!
Job Overview:
Arm crafts and validates the new technologies across various markets, including embedded systems, automotive, networking, and high-performance computing. Our team builds and maintains accurate and performant C++ models of future CPUs as they are being designed. These models enable developers to work with Arm’s latest technologies years before the actual hardware exists. Our partners rely on our models to support their future successes across many markets, including automotive, medical, storage and networking.
We are looking for a skilled and proactive engineer to contribute to the development and testing of our CPU Fast Models. As part of our team, you will be encouraged to start contributing quickly with support from the team, applying your expertise in modern C++ patterns (up to C++17), testing frameworks, and process awareness. We value engineers who are adaptable, proactive, and capable of working autonomously while encouraging a strong team spirit.
Responsibilities:
We seek a passionate engineer to partake in our workflow and improve it to elevate efficiency, taking our processes to the next level by:
- Contributing to our C++ models development cycle.
- Developing and implementing robust tests, applying modern testing principles (e.g., GMock/GTest, Robot Framework).
- Collaborating with other specialists to integrate models into internal workflows and external tools.
- Demonstrating a strong problem-solving approach, overcoming obstacles autonomously or through effective collaboration.
- Investigating and resolving issues autonomously, documenting findings and solutions.
- Maintaining a high standard of documentation (Doxygen preferred).
- Working with CI/CD tools (e.g., Jenkins, Artifactory) to automate and streamline workflows.
- Articulating technical insights effectively in discussions to drive continuous improvement and innovation.
Required Skills and Experience :
- Strong modern C++ (C++17) skills, with a deep understanding of design patterns and effective techniques.
- Familiarity with software testing and test frameworks to support and improve testing and quality on an ongoing basis.
- Proficiency in debugging C++ programs and analyzing performance issues.
- Familiarity with hardware specifications and how they translate into software models.
- Excellent communication skills and the willingness to engage in professional technical discussions.
“Nice To Have” Skills and Experience :
- Hands-on experience with developing software models.
- Familiarity with computer architecture concepts and Arm Fast Models.
- Experience in cross-platform development for Linux and Windows.
- Leadership experience or the ability to mentor and support other engineers.
- Ability to work independently, finding solutions autonomously or shifting focus efficiently when blocked.
- Strong software development process awareness.
- Strong documentation skills (Doxygen preferred).
In Return:
We value diversity in Arm - we will fit around your life to enable you contribute to our success.
We have flexible working hours for all and a progressive leave policy which can accommodate the unexpected.
Our offices are outstanding places to collaborate, but now we've mastered working from home, that will remain an option for part of the week.
We are currently hiring multiple software engineers into this group and have some scope to adapt the role and job title to the right person.
#LI-DDG1
Accommodations at Arm
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.
Hybrid Working at Arm
Arm’s approach to hybrid working is designed to create a working environment that supports both high performance and personal wellbeing. We believe in bringing people together face to face to enable us to work at pace, whilst recognizing the value of flexibility. Within that framework, we empower groups/teams to determine their own hybrid working patterns, 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.
Equal Opportunities at Arm
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 race, color, religion, sex, sexual orientation, gender identity, national origin, disability, or status as a protected veteran.