C++ Software Engineer (Senior, Staff, or Lead)
Job Description
Ghost Robotics is seeking a Senior, Staff, or Lead C++ Software Engineer to design, implement, and maintain robust robotics software while contributing to tooling, build systems, and CI infrastructure across the development environment. This on-site role is based in Brooklyn, NY.
Responsibilities
- Develop and sustain high-quality C++ software for robotics platforms
- Utilize modern C++ standards (C++17/20) and established design patterns to create clean, efficient code
- Contribute to system architecture with emphasis on performance, safety, and long-term maintainability
- Establish and maintain Linux-based development environments
- Configure and manage GitLab CI/CD pipelines for build, test, and deployment processes
- Enhance build tooling and dependency management, including CMake
- Write unit and integration tests and support automated testing workflows
- Collaborate with robotics, controls, and hardware engineering teams
- Participate in code reviews and drive improvements in overall code quality
Requirements
- Strong proficiency in modern C++ (C++17 or newer) with demonstrated production shipping experience; formal degrees are not mandatory if you have relevant industry background
- Practical mastery of modern C++ concepts: RAII, smart pointers, move semantics, templates and generic programming, concurrency primitives, thread safety, and clean API/library design
- Solid understanding of software design principles and patterns
- Experience working in Linux development environments
- Hands-on experience with Git and collaborative workflows
- Experience setting up or maintaining CI pipelines, with GitLab CI preferred
- Familiarity with build systems such as CMake
- Strong debugging skills and meticulous attention to detail
Technologies
- C++ (C++17/20)
- Linux
- Git
- GitLab CI/CD
- CMake
- ROS, ROS 2
- Docker
- Embedded Linux
- Python
Benefits
- 401(k)
- 401(k) matching
- AD&D insurance
- Dental insurance
- Disability insurance
- Flexible spending account
- Health insurance
- Life insurance
- Paid time off
- Parental leave
- Prescription drug insurance
- Relocation assistance
- Visa sponsorship
- Vision insurance
Senior C++ Software Engineer
- Typically 5+ years of relevant experience, or 3+ years after a PhD
- Owns a defined technical area and delivers end-to-end work independently
- Mentors less-experienced engineers
- Proven track record of shipping production C++ in real systems
Staff C++ Software Engineer
- Typically 8+ years of relevant experience
- Drives technical direction and architecture across the team’s scope
- Sets engineering standards and amplifies the output of others
- Influence extends beyond own deliverables to multiple teams or a codebase
Lead C++ Software Engineer
- Typically 10+ years of relevant experience, including people leadership
- Combines staff-level technical scope with direct reports, hiring, performance, and planning
- Demonstrated ability to grow engineers and lead a healthy, productive team
Location
Brooklyn, NY (onsite)
Travel
None required, though opportunities for field exposure may exist for engineers seeking it
Compensation
Salary range USD 135,000 - 185,000 per year, accompanied by full benefits and a competitive equity incentive package. Flexible time off policy emphasizes output and impact.
Additional Information
Clear standard background checks are required pre-hire, post-hire, and periodically during employment. Permanent U.S. residency is required.
Work Location
In person