Key Responsibilities
- Develop and maintain functional models of SoC subsystems for full-system virtual platforms used by firmware, driver, runtime, and application teams
- Design models for usability and performance, enabling software engineers to run real workloads efficiently
- Enhance virtual platform infrastructure, including QEMU integration, simulation performance, build/release tooling, and documentation
- Collaborate with software teams to debug platform issues and optimize model fidelity for productivity
- Drive simulation performance improvements to handle increasingly complex workloads at scale
- Contribute to architectural decisions by selecting appropriate abstraction levels for subsystems
Requirements
- 2+ years of experience building functional models, virtual platforms, or system-level simulations for hardware (SoCs, ASICs, GPUs, CPUs)
- Proficiency in C++ or SystemC, with Python for tooling
- Strong understanding of SoC, CPU, GPU, and/or ASIC architecture and micro-architecture
- Experience with QEMU integration and transaction-level modeling (TLM)
- Familiarity with Modern C++ (20+) and test frameworks like PyTest or GoogleTest