Senior Software Engineer
The senior software engineer will design, develop, integrate, test, and deploy modern C++ products for defense and autonomy applications, while collaborating with customers and mentoring junior engineers. The role requires at least five years of software development experience and a bachelor's degree or related background.
About the job
Responsibilities
- Lead the design, development, and optimization of new tools and products from incubation through production.
- Identify ineffective processes and code to improve team performance.
- Integrate software from customers and other teams into products.
- Write, test, and debug efficient modern C++ code for complex software solutions with AI tooling.
- Work with product managers and customers to understand requirements and translate them into technical solutions.
- Train and mentor junior engineers.
- Build, test, and deploy production software.
- Travel between company offices and to customer sites as needed.
Requirements
- Bachelor's degree in computer science or a related engineering field.
- 5+ years of hands-on experience developing performant modern C++, or a strong willingness to learn C++.
- Strong procedural and object-oriented programming experience with clean-code principles and sound object-oriented design patterns.
- Experience developing in Docker and containerized development environments.
- Experience using Linux-based operating systems.
- Ability to hold UK Security Clearance; current or previous clearance is preferred.
Nice-to-haves
- 7+ years of experience developing software in modern C++ and Python.
- Experience with distributed systems, simulation technology, and autonomy.
- Experience with Bazel, Nix, or similar technologies.
- Experience deploying to and working with infrastructure technologies.
- Experience on projects related to national security for government agencies.
- References describing you as low-ego, highly motivated, thoughtfully opinionated, a strong communicator, and a curious listener.
Skills
C++, Python, Docker, Linux, Distributed Systems, Simulation, Autonomy, Bazel, Nix, Object-Oriented Programming
Similar jobs
Fullstack Engineering jobsBuilds end-to-end web applications for national-security and autonomy products, spanning interfaces, APIs, services, and data layers. The role requires 5+ years of production fullstack experience, strong React and TypeScript expertise, and comfort working across languages and containerized Linux environments.
Build customer-facing search experiences across frontend and backend systems, with emphasis on Vue, Python, Django, search infrastructure, and AI-powered features. The role requires 5+ years of software engineering experience and includes production ownership and on-call participation.
Build and scale full-stack AI features across Ruby on Rails and React, from experimentation through reliable production deployment. The role requires 6+ years of experience with high-traffic applications, production AI use cases, and strong experimentation and performance optimization skills.
Build and improve high-scale purchasing experiences using Ruby on Rails, React, and Next.js. The role requires 5+ years of full-stack engineering experience, strong frontend and backend proficiency, and comfort working autonomously on a distributed team.
Build and scale CMS Platform capabilities across Page Builder experiences and the backend systems for content modeling, rendering, publishing, permissions, and performance. Requires 5+ years of SaaS experience plus deep Ruby on Rails and strong React and TypeScript expertise.