Perforce is looking for a Principal Software Engineer to build robust, scalable, and high-performance solutions for the TotalView high-performance parallel debugger, focusing on core engineering tasks including compiler and debugger-related development, while contributing to UI development.
Requirements
- Design and develop new and advanced features in C++ on a variety of cross-platform Linux/UNIX/Mac OS X platforms.
- 7+ years of C++ experience, including development using STL and C++ templates.
- Experience in parallel/multi-process computing environments, especially HPC environments.
- Knowledge of MPI and OpenMP parallel programming models, as well as compiler design and implementation.
- Familiarity with ELF/DWARF object file formats and symbol tables.
- Experience developing multi-threaded programs and working in different UNIX/Linux environments.
- Experience developing user interfaces for desktop-based applications using Qt.
Responsibilities
- Design and develop new and advanced features in C++ on a variety of cross-platform Linux/UNIX/Mac OS X platforms.
- Work on compiler and debugger-related tasks, including designing efficient workflows and algorithms for massively parallel environments.
- Contribute to UI development using Qt and C++ to create efficient and user-friendly interfaces as needed.
- Aid in efficient debugging, dynamic analysis, data collection, data reduction, and scalability for advanced parallel applications.
- Design and develop efficient workflows and algorithms to work in massively parallel environments to aid in efficient debugging, dynamic analysis, data collection, data reduction, and scalability for today’s advanced parallel applications.
Other
- 10+ years of industry-level experience with a proven track record of successful development.
- Demonstrated test-driven development and the ability to work and plan independently while sharing knowledge with others.
- Strong problem-solving and analytical skills, with the ability to quickly understand and address complex technical challenges.
- Excellent communication and collaboration skills, with the ability to effectively work within a cross-functional team
- Agile/scrum development experience