Logo
Perforce Software

Principal Software Engineer I

Perforce Software, Burlington, Massachusetts, us, 01805

Save Job

Join to apply for the

Principal Software Engineer I

role at

Perforce Software .

Perforce is a community of collaborative experts, problem solvers, and possibility seekers who believe work should be both challenging and fun. We are proud to inspire creativity, foster belonging, support collaboration, and encourage wellness. At Perforce, you’ll work with and learn from some of the best and brightest in business. You’ll be surrounded by a global team spanning more than 80 countries and including over 75% of the Fortune 100.

Base pay range $146,200.00/yr - $175,000.00/yr

Position Summary We’re currently searching for a Principal Software Engineer to join the Team. The Principal Software Engineer will have extensive experience in software engineering with the ability to build robust, scalable, and high‑performance solutions that meet the evolving needs of the business. They will design, modify, and develop software for the TotalView high‑performance parallel debugger. The role focuses on core engineering tasks, including compiler and debugger‑related development, while contributing to UI development as needed.

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.

Assist with efficient debugging, dynamic analysis, data collection, data reduction, and scalability for advanced parallel applications.

Requirements

Familiarity with software debuggers and how they work.

Ideally, part of a team building the latest HPC debugging and performance tools for demanding massively parallel environments.

10+ years of industry‑level experience with a proven track record of successful development.

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.

Familiarity with client/server architecture, including request/response protocols, session management, and data serialization techniques.

Experience developing user interfaces for desktop‑based applications using Qt.

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.

Knowledge of common C++ design patterns and the ability to use them when necessary.

Agile/scrum development experience.

Experience with Jenkins or other CI systems.

Nice to Have

Python development experience.

NVIDIA GPU development experience.

AMD GPU development experience.

Benefits Additionally, this position is eligible for benefits including, but not limited to, medical, dental, vision, retirement benefits, life insurance, wellness programs, total time off, and other employee perks that may be offered by Perforce from time to time. The actual offer will depend on a number of factors including, but not limited to, a candidate’s education, skills, qualifications, depth of experience and other relevant business considerations. Perforce reserves the right to amend or modify employee perks and benefits at any time.

EOE & Belonging Statements We may use artificial intelligence (AI) tools to support parts of the hiring process, such as reviewing applications, analyzing resumes, or assessing responses. These tools assist our recruitment team but do not replace human judgment. Final hiring decisions are ultimately made by humans. If you would like more information about how your data is processed, please contact us.

SENIORITY level: Not Applicable

EMPLOYMENT TYPE: Full‑time

JOB FUNCTION: Engineering and Information Technology

INDUSTRIES: Transportation, Logistics, Supply Chain and Storage

#J-18808-Ljbffr