
Principal Physics Programmer, C++ – Modeling & Simulation
Posted Jul 27

Posted Jul 27
This is a fully remote position, open to applicants in United States.
• Design and implement the foundational C++ runtime for a large-scale, interactive wargaming platform.
• Take responsibility for the structure, performance, and long-term viability of a significant engine codebase.
• Create and enhance an entity-component-system architecture to represent numerous diverse simulation entities.
• Develop data-oriented component storage, manage entity lifecycles, implement system queries, execution graphs, and dependency-aware scheduling.
• Establish the engine interfaces for registering and executing physics, AI, sensor, weapon, behavior, and environmental models.
• Create robust extension points that enable model developers to add functionalities without altering or destabilizing the core engine.
• Design simulation loops, fixed and variable time stepping, event processing, system ordering, state transitions, and deterministic replay.
• Create multithreaded and task-based execution systems to safely parallelize simulation workloads.
• Enhance memory layout, allocation, cache locality, component access, serialization, and data movement.
• Monitor and improve CPU usage, memory consumption, latency, throughput, and simulation rate in accordance with specific performance budgets.
• Construct spatial indexing, broad-phase query, collision-candidate, visibility, and proximity-query infrastructures.
• Integrate externally developed physics and mathematical models into a coherent and efficient runtime.
• Develop systems for checkpointing, snapshotting, state replication, save-and-restore, and reproducible replay.
• Create a clear architecture for networked and distributed simulation, addressing ownership, synchronization, prediction, and state transfer.
• Develop tools that enable model developers to inspect entities, debug system execution, profile model costs, and comprehend simulation states.
• Identify and resolve architectural bottlenecks as simulation scale and model complexity grow.
• Lead engine design reviews, mentor fellow programmers, and elevate standards for C++ architecture and performance engineering.
• Stay actively involved in implementation, profiling, debugging, and code review.
• A minimum of eight years of professional C++ development experience or equivalent, focusing on performance-critical production software.
• Extensive experience in commercial game development, game engine development, or similar performance-constrained real-time environments.
• Proven track record of shipping at least one commercial game, engine, platform, or interactive real-time product.
• Demonstrated ownership of foundational engine systems rather than just gameplay features, scripting, tools, or application-level integrations.
• Experience in building or significantly extending a physics engine, game engine, simulation runtime, ECS, job system, or similar core technology.
• Expert proficiency in modern C++, including object lifetimes, ownership, templates, concurrency, synchronization, profiling, and low-level debugging.
• Strong knowledge of data-oriented design, memory layout, cache behavior, allocation strategies, and performance-sensitive data structures.
• Experience in designing or enhancing an entity-component system or a comparable composition-based runtime architecture.
• Familiarity with engine loops, execution graphs, task systems, event systems, dependency management, or runtime scheduling.
• Proven capability to optimize against strict CPU, memory, latency, and frame- or tick-time budgets.
• Experience utilizing commercial profiling and debugging tools to troubleshoot CPU stalls, memory issues, thread contention, allocation problems, and cache inefficiencies.
• Working knowledge of real-time physics concepts such as coordinate systems, numerical integration, collision detection, spatial partitioning, constraints, and simulation stability.
• Experience in designing APIs, plugin systems, SDKs, or extension frameworks for use by other programmers.
• Proven experience maintaining and enhancing a large C++ codebase while delivering production capabilities.
• Experience leading significant technical initiatives while remaining an active individual contributor.
• Active Secret clearance or eligibility to obtain one.
• Strongly Preferred: Experience with SIMD, GPU compute, custom allocators, job systems, lock-free structures, or platform-specific optimizations.
• Experience supporting extensive worlds or simulations with numerous active entities.
• Experience with engine-level serialization, snapshotting, replay, world partitioning, or streaming.
• Familiarity with aerospace, robotics, autonomy, defense simulation, HLA, DIS, or AFSIM.
• Active TS/SCI clearance.
• Compensation is commensurate with experience, with a goal of being at the higher end of the salary range.
• Comprehensive health care plan with 100% premium coverage, including medical, dental, and vision.
• 401k plan with 5% matching contributions.
• Generous Paid Time Off (uncapped vacation, along with sick leave and public holidays).
• Flexible hybrid or remote work options.
• Relocation assistance for eligible employees.
Sigma Software Group
Plain Concepts
GitLab
Get handpicked remote jobs straight to your inbox weekly.