Jobgether
Physics Programmer, C++ (Modeling & Simulation)
engineeringfull-timeIndia
SALARY
Not listed
WORK TYPE
remote
JOB TYPE
full-time
INDUSTRY
general
✦ AutoApply Sick of applying? We apply to roles like this for you, up to 20 a month.
Learn more
About the role
Accountabilities
- Architect and implement the core C++ runtime supporting a large-scale, interactive modeling and simulation platform.
- Own the structure, performance, maintainability, and long-term evolution of a substantial engine codebase.
- Design and evolve entity-component-system architecture, including component storage, entity lifecycle management, system queries, execution graphs, and dependency-aware scheduling.
- Define engine interfaces for integrating physics, AI, sensor, weapon, behavior, and environmental models.
- Build stable extension points that enable model developers to add capabilities without destabilizing the engine core.
- Design simulation loops, time-stepping approaches, event processing, system ordering, state transitions, deterministic execution, and replay capabilities.
- 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 consumption, latency, throughput, and simulation rate against defined performance budgets.
- Build infrastructure for spatial indexing, collision candidates, visibility, proximity queries, and other large-scale spatial operations.
- Integrate externally developed physics and mathematical models into a consistent, reliable, and performant runtime.
- Develop checkpointing, snapshotting, state replication, save-and-restore, and reproducible replay functionality.
- Establish architecture for networked and distributed simulation, including ownership, synchronization, prediction, and state transfer.
- Build developer tooling that enables model developers to inspect entities, debug execution, profile model costs, and understand simulation state.
- Identify and eliminate architectural bottlenecks as simulation scale and model complexity grow.
- Lead engine design reviews, mentor other programmers, conduct code reviews, and raise engineering standards for C++ architecture and performance.
- Remain deeply involved in implementation, profiling, debugging, and technical problem-solving.
- Extensive professional C++ development experience, or equivalent experience building performance-critical production software.
- Significant experience in commercial game development, game-engine development, or another performance-constrained real-time environment.
- Experience shipping at least one commercial game, engine, platform, or interactive real-time product.
- Demonstrated ownership of foundational engine systems rather than primarily gameplay features, scripting, tooling, or application-level integrations.
- Experience building or substantially extending a physics engine, game engine, simulation runtime, entity-component system, job system, or comparable core technology.
- Expert knowledge of modern C++, including object lifetimes, ownership, templates, concurrency, synchronization, profiling, and low-level debugging.
- Strong understanding of data-oriented design, memory layout, cache behavior, allocation strategies, and performance-sensitive data structures.
- Experience designing or extending an entity-component system or similar composition-based runtime architecture.
- Experience with engine loops, execution graphs, task systems, event systems, dependency management, or runtime scheduling.
- Demonstrated ability to optimize systems against strict CPU, memory, latency, frame-time, or tick-time budgets.
- Experience using professional profiling and debugging tools to diagnose 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 designing APIs, plugin systems, SDKs, or extension frameworks used by other programmers.
- Experience maintaining and improving large C++ codebases while continuing to deliver production capabilities.
- Experience leading major technical initiatives while remaining an active individual contributor.
- Active Secret clearance or eligibility to obtain one.
- For Senior-level positions, typically 5+ years of relevant experience; Staff-level positions generally require 7+ years, while Principal-level positions generally require 10+ years.
- Senior candidates should be able to drive system-level design, collaborate on broader architecture, solve complex technical issues, and mentor teammates.
- Staff candidates should be capable of owning cross-cutting architecture, leading complex technical initiatives, managing technical risk, and serving as a primary technical reviewer.
- Principal candidates should demonstrate department-level architectural influence, strategic technical leadership, and the ability to shape long-term engineering direction.
- Experience with SIMD, GPU compute, custom allocators, job systems, lock-free structures, or platform-specific optimization is strongly preferred.
- Experience supporting very large worlds or simulations with significant numbers of active entities is a plus.
- Familiarity with engine serialization, snapshotting, replay, world partitioning, or streaming is desirable.
- Experience with aerospace, robotics, autonomy, or defense simulation standards and platforms is beneficial.
- Experience developing models related to sensors, weapons, electronic warfare, communications, logistics, or command and control is advantageous.
- Active U.S. security clearance, including Secret, Top Secret, or SCI/SAP, is strongly preferred.
- Compensation designed to be highly competitive and positioned toward the upper end of the relevant salary range, based on experience, skills, proficiency, and location.
- Health care coverage with 100% premium coverage for medical, dental, and vision plans.
- 401(k) plan with a 5% employer match.
- Uncapped vacation time, along with paid sick leave and public holidays.
- Flexible hybrid or fully remote work arrangements.
- Relocation assistance for qualifying employees.
- Opportunity to work on technically challenging, high-performance simulation and C++ engineering problems.
- Significant opportunities for technical ownership, architectural influence, mentorship, and career growth.
Requirements
Benefits
✦ Sick of applying to 40 jobs a month?
I rewrite your resume for ATS by hand first. Once you sign off on it, AutoApply applies to up to 20 roles like this a month, cover letter in your own voice each time. From $14.99/mo, cancel anytime.
Get AutoApply