> Markdown version of [/jobs/ext/2933152-cpu-hardware-verification-software-engineer](https://www.wearedevelopers.com/jobs/ext/2933152-cpu-hardware-verification-software-engineer). Every page supports `.md` or `Accept: text/markdown`. Links point to the HTML versions so they work for humans too. Agent guide: [/agents.md](https://www.wearedevelopers.com/agents.md). --- # CPU Hardware Verification Software Engineer - **Company:** ARM - **Location:** Austin, TX, United States - **Salary:** $130,100.0 - $176,000.0 - **Contract:** Temporary contract - **Skills:** Artificial Intelligence, ARM Architecture, Assembly Language, C++ (Programming Language), Computer Programming, Computer Engineering, Data Structures, Software Debugging, Microprocessors, Python (Programming Language), CPU Design, Object-Oriented Software Development, Software Architecture, Software Tools, Software Engineering, Verilog, Scripting, Caching, Information Technology - **Published:** September 16, 2026 - **Apply:** https://www.jofdav.com/jobs/59725286-cpu-hardware-verification-software-engineer ## About the Role * Professional software development experience in C++, with experience in Python or other scripting languages. * Bachelor's degree in Computer Science, Computer Engineering, Electrical Engineering, or a related field. * Strong software engineering skills, including knowledge of modern object-oriented programming, data structures, and algorithms. * Experience with assembly-language programming and a strong understanding of computer architecture fundamentals, including concepts such as caches, TLBs, and processor pipelines. * Strong written and verbal communication skills., * Professional experience with microprocessor architecture, CPU verification, random test generation, or other complex software systems. * Master's degree in Computer Science, Computer Engineering, Electrical Engineering, or a related field. * Advanced CPU microarchitecture knowledge, including areas such as out-of-order execution, register renaming, and instruction scheduling. * Familiarity with Arm architectures and assembly languages. * Experience with CPU design or verification environments. * Experience collaborating across organizational and geographic boundaries. * Familiarity with Verilog HDL and hardware simulation environments. ## Description We are searching for a dedicated Verification/Software Engineer to join the Raven Random Test Generator team at the Arm Austin Design Center. As an engineer on our team, you will help develop and deploy Raven-a powerful dynamic random test generator written in C++ that has been used extensively by CPU design teams throughout the Arm ecosystem for more than a decade. You will collaborate closely with senior CPU verification engineers both inside and outside Arm to understand their verification challenges and develop new ways of achieving their verification goals. The Raven team is part of Arm's Architecture & Technology Group, which develops architectural specifications and technologies that enable Arm's partners to successfully develop processors conforming to the Arm architecture. In addition to supporting CPU verification teams, we collaborate early and frequently with Arm architects to help ensure that new architectural features can be verified effectively. Your day-to-day work will consist primarily of developing our C++ verification technology and working directly with Raven users and verification teams to solve complex verification problems. This work relies heavily on a strong understanding of computer architecture and the ability to read, understand, and apply new architectural specifications. If you are looking for a role that combines hardware and software skills, provides opportunities to work on challenging CPU verification problems, and allows you to make meaningful contributions to groundbreaking verification technologies and methodologies, we look forward to hearing from you. Responsibilities * Collaborate across the team to develop, document, test, and deploy Raven. * Design and implement innovative Raven functionality to enable verification of architectural and microarchitectural features. * Design and develop Raven test templates that exercise and stress architectural and microarchitectural features of Arm CPU designs. * Investigate, debug, and resolve issues reported by Raven users and internal QA. * Work directly with CPU verification engineers to understand verification challenges and develop effective solutions. * Use AI responsibly to accelerate engineering work, while leading the resulting changes. Engineers are expected to understand and be able to reason about the code they contribute, and to ensure that all changes are correct, maintainable, and consistent with the team's software architecture and design philosophy. ## About Arm Arm is the industry’s highest-performing and most power-efficient compute platform with unmatched scale that touches 100 percent of the connected global population. To meet the insatiable demand for compute, Arm is delivering advanced solutions that allow the world’s leading technology companies to unleash the unprecedented experiences and capabilities of AI. Together with the world’s largest computing ecosystem and 22 million software developers, we are building the future of AI on Arm. [Company profile](https://www.wearedevelopers.com/companies/3413-arm) ### More Jobs at Arm - [Senior Design Engineer](https://www.wearedevelopers.com/jobs/ext/3006227-senior-design-engineer) - [Staff Software Engineer - Post-Silicon Infrastructure](https://www.wearedevelopers.com/jobs/ext/2878258-staff-software-engineer-post-silicon-infrastructure) - [Staff SoC Integration and Performance Lead](https://www.wearedevelopers.com/jobs/ext/2879203-staff-soc-integration-and-performance-lead) - [Staff SOC Performance Architect](https://www.wearedevelopers.com/jobs/ext/2859316-staff-soc-performance-architect) - [Principal Software Engineer, AI Compute Platform](https://www.wearedevelopers.com/jobs/ext/2847710-principal-software-engineer-ai-compute-platform) ## Related Videos - [JavaScript? No. Java Scripts! - Scripting with Java](https://www.wearedevelopers.com/videos/2094-javascript-no-java-scripts-scripting-with-java) - [HTTP headers that make your website go faster](https://www.wearedevelopers.com/videos/1676-http-headers-that-make-your-website-go-faster) - [Unleashing the Full Potential of the Arm Architecture – Write Once, Deploy Anywhere](https://www.wearedevelopers.com/videos/940-unleashing-the-full-potential-of-the-arm-architecture-write-once-deploy-anywhere) - [Intermediate Bitcoin Script](https://www.wearedevelopers.com/videos/25-intermediate-bitcoin-script) - [Event based cache invalidation in GraphQL](https://www.wearedevelopers.com/videos/433-event-based-cache-invalidation-in-graphql) - [Passive ARM Assembly Skills for Debugging, Optimization (and Hacking)](https://www.wearedevelopers.com/videos/1083-passive-arm-assembly-skills-for-debugging-optimization-and-hacking) ## Related Articles - [Software Engineer Career: Things You Should Know](https://www.wearedevelopers.com/magazine/143-software-engineer-career-things-you-should-know) - [AI Eats the Verifiable First](https://www.wearedevelopers.com/magazine/765-ai-eats-the-verifiable-first) - [Is Software Engineering Hard?](https://www.wearedevelopers.com/magazine/448-is-software-engineering-hard) - [What Jobs Can You Get with a Software Engineering Degree?](https://www.wearedevelopers.com/magazine/398-what-jobs-can-you-get-with-a-software-engineering-degree) - [The 12 Best Jobs for Software Engineers](https://www.wearedevelopers.com/magazine/401-the-12-best-jobs-for-software-engineers) - [Best Countries for Software Engineers](https://www.wearedevelopers.com/magazine/267-best-countries-for-software-engineers)