Principal Physics Programmer, C++ (Modeling & Simulation)
ExternalPrepare for this interview
EliteAI-generated questions, company research, and talking points tailored to this role
About the role
Help redefine how the DoD makes multi-billion-dollar force-design decisions. We're looking for a Principal Physics Programmer to bring the performance standards of commercial game development to our next-generation wargaming platform. You'll architect and build the core C++ simulation runtime that executes physics, behavior, and mission models developed by engineers and domain experts across the organization. Your work will span entity-component systems, data-oriented architecture, simulation scheduling, concurrency, deterministic execution, memory management, model integration, and engine-wide performance. The strongest candidates will come from commercial game development, game-engine development, or another performance-constrained real-time environment where frame time, memory, latency, stability, and hardware limitations are non-negotiable. You may have built a custom physics engine, owned core systems within a proprietary engine, or developed low-level physics and runtime infrastructure for a major game platform. Defense experience is not required. We care more about whether you have shipped real-time C++ systems, optimized them under hard performance budgets, and made foundational architectural decisions within a complex engine codebase.
Responsibilities
- Architect and implement the core C++ runtime behind a large-scale, interactive wargaming platform.
- Own the structure, performance, and long-term health of a substantial engine codebase.
- Design and evolve an entity-component-system architecture for representing large numbers of heterogeneous simulation entities.
- Build data-oriented component storage, entity lifecycle management, system queries, execution graphs, and dependency-aware scheduling.
- Define the engine interfaces through which physics, AI, sensor, weapon, behavior, and environmental models are registered and executed.
- Create stable extension points that allow model developers to add capabilities without modifying or destabilizing the engine core.
- Design simulation loops, fixed and variable time stepping, event processing, system ordering, state transitions, and deterministic replay.
- Develop multithreaded and task-based execution systems that safely parallelize simulation workloads.
- Optimize memory layout, allocation, cache locality, component access, serialization, and data movement.
- Profile and improve CPU utilization, memory use, latency, throughput, and simulation rate against explicit performance budgets.
- Build spatial indexing, broad-phase query, collision-candidate, visibility, and proximity-query infrastructure.
- Integrate externally developed physics and mathematical models into a consistent, performant runtime.
- Develop checkpointing, snapshotting, state replication, save-and-restore, and reproducible replay systems.
- Establish clear architecture for networked and distributed simulation, including ownership, synchronization, prediction, and state transfer.
- Build tooling that allows model developers to inspect entities, debug system execution, profile model cost, and understand simulation state.
- Identify and eliminate architectural bottlenecks as simulation scale and model complexity increase.
- Lead engine design reviews, mentor other programmers, and raise the standard for C++ architecture and performance engineering.
- Remain deeply hands-on in implementation, profiling, debugging, and code review.
- Why Code Metal?
- Bring game-engine rigor to a new domain: Apply the architecture and optimization practices of commercial games to mission-critical simulation.
- Own the foundation: Define the runtime on which every physics, behavior, and mission model executes.
- Work under real constraints: Build simulations that perform exceptionally well on modest hardware, not only on HPC clusters.
- Solve engine-level problems: Work across ECS design, job systems, memory architecture, determinism, physics integration, and distributed execution.
- Ship meaningful systems: Build technology that helps decision-makers evaluate force-design choices before resources and lives are committed in the real world.
Requirements
- Required Qualifications:
- Eight or more years of professional C++ development, or equivalent experience, building performance-critical production software.
- Significant experience in commercial game development, game-engine development, or a similarly performance-constrained real-time environment.
- Experience shipping at least one commercial game, engine, plat
Benefits
Additional Information
About Code Metal Code Metal is redefining code translation for mission-critical industries, helping defense partners move more quickly and reliably from algorithm to silicon. Our platform accelerates deployment of DSP, RF, communications, and embedded signal processing algorithms onto heterogeneous compute targets, including GPUs, FPGAs, ASICs, and edge SoCs. We also support automotive, aerospace, and semiconductor partners deploying complex algorithms onto constrained hardware with speed and rigor.
Your Match
How well this role fits your profile.
Company Intel
What employees say
Worked at Code Metal? Share your experience