Senior Principal Software Engineer

Vlab Works Pty Ltd — Australia · Posted ~2 hours ago

Lead Full-time

Skills

C/C++ software architecture simulation technologies multi-core systems performance optimization multi-core computing simulation systems

🔓 Log in to save this job, tailor your resume & track your apply process — 7 days free, no card needed.

Log in to add to target list

Summary ✨ AI‑Generated

A principal engineering role focused on developing high-performance simulation infrastructure, scalable software systems, and advanced multi-core technologies.

Highlights

Lead advanced software development efforts involving high-performance computing and complex simulation technologies.

Description

We are seeking a strong technical R&D contributor to join the Xcelium team, which develops Cadence’s industry-leading logic simulator. Our team builds advanced multi-core technologies within Xcelium, including Distributed Simulation, Multi-Core Checkers, and Xcelium multi-core technology for gate-level verification. This role will focus primarily on Xcelium Distributed Simulation and Multi-Core Checker technologies, delivering solutions for top-priority customers and generalizing them into scalable, production-quality capabilities for broader customer adoption. The successful candidate will report directly to the Sr. Software Architect and work on core simulator infrastructure and multi-core simulation technologies, with a strong emphasis on performance, correctness, and predictability. Xcelium Distributed Simulation Development • Design, implement, and maintain Xcelium Distributed Simulation capabilities that enable a single simulation to be distributed across multiple processes running on different machines while communicating and behaving as one coherent simulation. • Improve usability and optimize performance for distributed simulation by simplifying configuration, setup, and diagnostics, and by implementing targeted optimizations for top-priority customer scenarios. Multi-Core Technologies • Contribute to the development and integration of Multi-Core Checkers, a technology that speeds up simulation by offloading checker modules to different cores while preserving simulation correctness. • Participate in enhancements to Xcelium multi-core technology, including critical bug fixes, performance optimizations, and usability improvements. • Contribute to Xcelium multi-core RTL technology for extending the existing technology to accelerate RTL designs. Customer-Driven R&D and Productization • Translate requirements from top-priority customers into robust, scalable technical solutions that address real-world simulation challenges and are suitable for a wide range of Xcelium users and design environments. • Collaborate closely with product engineering, field application engineers, customer-facing teams, and senior R&D stakeholders to analyze issues, define solutions, and drive successful adoption. Performance, Scalability & Usability • Analyze performance bottlenecks in distributed and multi-core simulation flows and implement optimizations that improve runtime, scalability, and resource utilization. • Improve user experience through clear error reporting, practical defaults, automation opportunities, and documentation-friendly workflows. Quality, Debuggability & Production Readiness • Develop high-quality code with attention to correctness, maintainability, diagnostics, regression coverage, and long-term product support. • Investigate complex functional, performance, and customer-reported issues across distributed simulation, Multi-Core Checkers, and related Xcelium multi-core technologies. • Work with product validation teams to define meaningful test coverage and regression strategies. Cross-Functional Collaboration • Partner with local and global R&D teams to align architecture, implementation, and delivery plans across Xcelium multi-core technologies. • Participate in technical reviews, design discussions, debugging sessions, and customer-driven planning activities. Technical Ownership • Take ownership of significant feature areas from investigation and design through implementation, validation, delivery, and follow-up support. • Contribute to technical documentation, internal knowledge sharing, and best practices for distributed simulation, Multi-Core Checkers, and Xcelium multi-core development. • Stay current with advanced verification workloads, large-scale SoC simulation requirements, and emerging needs in high-performance simulation technology. Task Management & Agile Execution • Coordinate team-level task management through Jira boards by organizing work, maintaining priorities, tracking progress, and ensuring alignment with project and release objectives. • Drive sprint execution by facilitating planning, prioritization, and progress reviews, while helping identify risks, remove blockers, and improve team predictability and delivery efficiency. Requirements: • Bachelor’s degree in computer science or a related technical discipline. • 5+ years of hands-on software development experience in complex C/C++ systems, preferably in EDA, simulation, compilers, runtime systems, or high-performance computing. • Strong understanding of multi-threaded, multi-process, or distributed software architectures, including synchronization, communication, debugging, and performance analysis. • Experience developing performance-sensitive infrastructure where scalability, correctness, reliability, and usability are critical. • Good knowledge of Linux development environments, debugging tools, source control, build systems, and regression-driven development practices. • Familiarity with SystemVerilog, Verilog, UVM, logic simulation, or semiconductor verification flows is highly desirable. • Experience with EDA simulation technologies, distributed or multi-threaded systems, and inter-process communication is a strong advantage. • Strong analytical and debugging skills, with the ability to investigate complex technical issues across large codebases and customer environments. • Excellent communication skills in English, with the ability to collaborate effectively with global R&D, product engineering, field, and customer-facing teams. • Self-motivated, detail-oriented, and comfortable taking ownership of challenging technical problems from concept to production deployment.