Staff C++ Software Engineer

About the Role

We are hiring a Staff C++ Software Engineer to join our growing team developing NinjaOne’s automated endpoint management suite of software products, trusted by over 40,000 customers globally. This is a leadership level role. You will develop high-impact software products used daily by IT teams and MSPs (managed service providers) to monitor, manage, and secure endpoints at scale.

About the Team

Software Engineers own the full lifecycle of keeping endpoints up-to-date, from detecting available patches to safely applying them and rebooting. The work spans OS patches across multiple platforms (Windows Update, macOS software update, Linux package managers) and third-party application updates (3PP).

As a Lead Engineer on this team, you'll work on our C++ agent repo — the software that runs directly on customer devices with elevated system privileges to detect, install, and validate patches across Windows, macOS, and Linux. This means working close to the metal with system-level APIs, building resilient install and rollback logic, and reading and acting on policy owned by our mainline platform team. You'll be one of the most senior technical voices on the C++ side of Patching, helping shape architecture and mentoring other engineers as the team continues to grow.

Location - We are flexible on remote working from home, if you are located in the USA and reside in one of the following states - CA, CO, CT, FL, GA, *IL, KS, MA, MD, ME, NJ, NC, NY, OR, TN, TX, VA, and WA. We have physical offices in Austin, TX and Tampa, FL, if you prefer a hybrid option.

*Onsite interviews maybe required for this role

We hire the best software engineers, but experience in our stack can’t hurt: NinjaOne is built on Java, Kotlin, C++, Golang and Postgres, supporting millions of user endpoints and running as a scalable cloud service in AWS. Knowing large-scale datastore bottlenecks, asynchronous application design and client-server architecture will help you.

What You’ll be Doing

  • Reviewing Code - Review code for correctness, maintainability, and architectural health
  • Mentoring - Guide and grow senior and mid-level engineers on the team
  • Process Implementation and Improvement - Identify gaps, propose fixes, and drive them through to completion
  • Cross Team Collaboration - Align with mainline, catalog, and other patching squads on shared ownership and integration points
  • Ensuring Product / Business Level Needs Are Engineered Into the Product - Translate roadmap priorities and customer needs into sound technical design
  • Other duties as needed

About You

  • Bachelor’s Degree in Computer Science, Engineering, Information Technology, or related technical field
  • 10+ years of C++ development experience, Modern C++ (C++17 and above)
  • Experience in Cross-platform development (Windows/macOS/Linux – Win32 API, POSIX)
  • gRPC / Protocol Buffers
  • SQLite / Embedded database patterns
  • CMake
  • Proficiency working with Qt and Vcpkg a strong plus

About Us

NinjaOne unifies IT to simplify work for nearly 40,000 customers in 140+ countries. ​

The NinjaOne Unified IT Operations Platform delivers endpoint management, autonomous patching, backup, and remote access in a single console to improve efficiency, increase resilience, and reduce spend. By automating IT and managing all endpoints, organizations give employees a great technology experience at work. ​ NinjaOne is obsessed with customer success and has retained a 98% customer satisfaction score for more than 5 years.

What You’ll Love

We are a collaborative, kind, and curious community.

We honor your flexibility needs with full-time work that is hybrid remote.

We have you covered with our comprehensive benefits package, which includes medical, dental, and vision insurance.

We help you prepare for your financial future with our 401(k) plan.

We prioritize your work-life balance with our unlimited PTO.

We reward your work with opportunity for growth and advancement.

Additional Information

This position is NOT eligible for Visa sponsorship.

*Due to operational policies, NinjaOne is unable to hire for this role within the city limits of Chicago. We will consider all qualified candidates who reside outside of the city proper or are willing to self-relocate.

Starting pay for the successful applicant depends on a variety of job-related factors, including but not limited to location, market demands, experience, job-related knowledge, and skills. The benefits available for this position include medical, dental, vision, 401(k) plan, life insurance coverage and PTO. For roles based in California, Colorado, Maryland, New Jersey, or Washington the base salary hiring range for this position is $150,000 to $240,000 per year.

For roles based in New York, the base salary hiring range for this position is $150,000 to $240,000 per year.

All qualified applicants will receive consideration for employment without regard to race, color, religion, sex, sexual orientation, gender identity, national origin, age, disability, genetic information, marital status, veteran status, or any other status protected by applicable law. We are committed to providing an inclusive and diverse work environment.

#LI-JL1

#LI-Remote

Back to blog

Common Interview Questions And Answers

1. HOW DO YOU PLAN YOUR DAY?

This is what this question poses: When do you focus and start working seriously? What are the hours you work optimally? Are you a night owl? A morning bird? Remote teams can be made up of people working on different shifts and around the world, so you won't necessarily be stuck in the 9-5 schedule if it's not for you...

2. HOW DO YOU USE THE DIFFERENT COMMUNICATION TOOLS IN DIFFERENT SITUATIONS?

When you're working on a remote team, there's no way to chat in the hallway between meetings or catch up on the latest project during an office carpool. Therefore, virtual communication will be absolutely essential to get your work done...

3. WHAT IS "WORKING REMOTE" REALLY FOR YOU?

Many people want to work remotely because of the flexibility it allows. You can work anywhere and at any time of the day...

4. WHAT DO YOU NEED IN YOUR PHYSICAL WORKSPACE TO SUCCEED IN YOUR WORK?

With this question, companies are looking to see what equipment they may need to provide you with and to verify how aware you are of what remote working could mean for you physically and logistically...

5. HOW DO YOU PROCESS INFORMATION?

Several years ago, I was working in a team to plan a big event. My supervisor made us all work as a team before the big day. One of our activities has been to find out how each of us processes information...

6. HOW DO YOU MANAGE THE CALENDAR AND THE PROGRAM? WHICH APPLICATIONS / SYSTEM DO YOU USE?

Or you may receive even more specific questions, such as: What's on your calendar? Do you plan blocks of time to do certain types of work? Do you have an open calendar that everyone can see?...

7. HOW DO YOU ORGANIZE FILES, LINKS, AND TABS ON YOUR COMPUTER?

Just like your schedule, how you track files and other information is very important. After all, everything is digital!...

8. HOW TO PRIORITIZE WORK?

The day I watched Marie Forleo's film separating the important from the urgent, my life changed. Not all remote jobs start fast, but most of them are...

9. HOW DO YOU PREPARE FOR A MEETING AND PREPARE A MEETING? WHAT DO YOU SEE HAPPENING DURING THE MEETING?

Just as communication is essential when working remotely, so is organization. Because you won't have those opportunities in the elevator or a casual conversation in the lunchroom, you should take advantage of the little time you have in a video or phone conference...

10. HOW DO YOU USE TECHNOLOGY ON A DAILY BASIS, IN YOUR WORK AND FOR YOUR PLEASURE?

This is a great question because it shows your comfort level with technology, which is very important for a remote worker because you will be working with technology over time...