CPU Hardware Verification Software Engineer
ArmJob Title
CPU Hardware Verification Software Engineer
Role Summary
Join the Raven Random Test Generator team in Arm’s Austin Design Center to develop, maintain, and deploy Raven - a C++ dynamic random test generator used by CPU verification teams. The role combines software engineering and CPU verification knowledge to implement verification functionality and collaborate with internal and external verification engineers and architects.
Experience Level
Mid-level. The posting expects professional software development experience but does not state a specific number of years.
Responsibilities
Primary responsibilities focus on developing Raven and supporting its users and QA.
- Develop, document, test, and deploy Raven verification software written in C++.
- Design and implement new Raven functionality to verify architectural and microarchitectural features.
- Create Raven test templates to exercise and stress CPU designs.
- Investigate, debug, and resolve issues reported by users and internal QA.
- Work directly with CPU verification engineers to understand verification challenges and develop solutions.
- Use AI responsibly to accelerate engineering work while ensuring code correctness, maintainability, and conformity with design architecture.
Requirements
Must-have technical skills and abilities.
- Professional software development experience in C++.
- Experience with Python or other scripting languages.
- Strong software engineering skills: object-oriented design, data structures, and algorithms.
- Assembly-language programming experience and a strong understanding of computer architecture fundamentals (caches, TLBs, pipelines).
- Strong written and verbal communication skills.
Education Requirements
Bachelor's degree in Computer Science, Computer Engineering, Electrical Engineering, or a related field is required. A Master’s degree in those fields is listed as preferred.
Preferred Qualifications
Nice-to-have experience and knowledge.
- Professional experience with microprocessor architecture, CPU verification, or random test generation.
- Advanced CPU microarchitecture knowledge (e.g., out-of-order execution, register renaming, instruction scheduling).
- Familiarity with Arm architectures and assembly languages.
- Experience with CPU design or verification environments and with Verilog HDL and hardware simulation tools.
- Experience collaborating across organizational and geographic boundaries.
About the Company
Company: Arm
Headquarters: Cambridge, United Kingdom
ARM is a global leader in semiconductor and software design, driving innovation in computing technology. The company specializes in designing processors and systems that provide the essential building blocks for electronic devices. ARM's architecture is widely used in smartphones, servers, and IoT devices, and its collaborative culture fosters bold thinking, diversity, and high-impact benefits for its talented workforce.
