Modernization Engineer
Washington, DC
Software Engineering /
Backend /
Hybrid
Spear AI is seeking an experienced Software Engineer to lead the design, development, and modernization of the combat systems for US Nuclear Submarines. This role combines cutting-edge technology innovation with mission-critical engineering to bring new operational capabilities while ensuring seamless integration with existing systems.
The ideal candidate has worked in large legacy systems and has a passion for modernizing code. They enjoy working in small teams in disconnected environments. They MUST have an affinity for working with new/improved technologies and not be resistant to change.
Candidates with a GitHub (or other open-source) profile stand out because we can check their work for:
- Attention to detail
- Code quality
- Experimentation with new technologies
The candidate must be willing to obtain a US government Secret security clearance. Once a Secret clearance has been obtained, the candidate has the option of requesting a Top Secret clearance with access to Sensitive Compartmented Information (SCI). For information on obtaining a Secret security clearance please see this link. Preference will be given for candidates already possessing a Secret security clearance. While some activities for this job will be performed on site, we expect most of the work to be performed at a home office that can meet heightened security requirements.
Programming (Essential)
- Proficiency in low-level languages like C/C++ (Rust and Zig is an _awesome_ plus)
- Proficiency in high-level languages like Python / mypy (TypeScript is a plus)
- Data structures and algorithms
- Design patterns
- Functional programming
- Object-oriented programming
- Complexity analysis (Big O notation)
- Memory safety and thread safety
- Expert at debugging (race conditions, deadlocks, etc.)
Testing (Essential)
- Code quality
- Type checking
- Linting and formatting (Clang, Ruff, etc.)
- Assertions
- Unit and property-based testing
- Code coverage
- Integration testing
- End-to-end testing
- Profiling (metrics, tracing, etc.)
- Benchmarking
- Load and stress testing
Engineering (Essential)
- Version control (Monorepos)
- Documentation (README, comments, Architecture Decision Records)
- CI/CD (GitHub Actions, GitLab CI, etc.)
- Experience reviewing pull requests (providing and receiving feedback)
- Package management (Cargo, PyPI) - Semantic versioning
- Build systems (CMake, Meson, etc.)
- Artifact management (Cargo, PyPI, NPM)
- Containerization (Docker / Docker Compose)
- Cloud providers (AWS - Preferred, Bonus for Azure and GCP)
Large Language Model (Preferred)
- Experience hosting LLM inference servers
- Familiar with major LLM frameworks (LangChain, LlamaIndex, etc.)
- Experience with Retrieval Augmented Generation (RAG)
- Knowledge of vector databases and similarity search
- Text embedding models and techniques
- Prompt engineering and chain-of-thought reasoning
- Token optimization and context window management
- Model quantization and optimization
System Level (Preferred)
- Linux
- Process management and scheduling
- Memory management (virtual memory, paging)
- File systems and I/O
- Network stack and sockets
- Compiler optimizations
- Static/dynamic libraries
- Dynamic linking and loading
- System calls and ABI stability
- CPU cache optimization
We look forward to having you join our growing team as we bring commercial technology to the hardest problems within the Department of Defense!