Software Engineer - Principal
Core
Design, develop, and optimize high-performance C/C++ software for simulation debug and visualization workflows, handling very large simulation datasets.
Role type
Principal Software Engineer (Simulation R&D)
Builds
Core debug engines, data models, indexing structures, visualization backends, and scalable algorithms for multi-million-signal simulations.
Domain
Electronic Design Automation (EDA) / Chip and System Design
Required skills
C/C++, Data Structures, Algorithms, Qt, Compiler Concepts, Parallel Computing, UNIX/Linux Systems, High-Performance System Design
Preferred skills
Digital Electronics, SystemVerilog, Verilog, VHDL, Simulation Technologies, Formal-based Verification
Technologies
C, C++, Qt, UNIX, LINUX
Responsibilities
Design and optimize high-performance C/C++ software for simulation debug and visualization; Build and enhance core debug engines including data models and visualization backends; Develop scalable data structures and algorithms for large simulation datasets; Improve performance, memory efficiency, and scalability for long-running simulations; Collaborate with senior engineers to solve complex, open-ended problems.
Seniority
Principal, hands-on IC
