Simulation Engineer (Modeling & Simulation)
Job Description
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.
About the Role
Help redefine how the DoD makes multi-billion-dollar force-design decisions. In this role, you’ll turn operational questions into extensible mission- and campaign-level simulations for our next-generation wargaming platforms. You’ll develop simulation frameworks, platform and effects models, scenario infrastructure, and evaluation workflows that allow defense users to explore force-design choices before making consequential real-world decisions. This is a deeply hands-on software-engineering role: you’ll spend most of your time designing, writing, reviewing, and shipping production C++ and Python. We’re seeking an experienced engineer who can own important parts of a cloud-distributed simulation environment, work directly with government users, and lead through technical execution. WHAT YOU’LL DO: - Design and implement mission- and campaign-level simulation capabilities in modern C++ and Python.- Build and extend event-driven, discrete-event, agent-based, and constructive simulation frameworks.
- Own core framework functionality including event scheduling, simulation time, state transitions, platform abstractions, scenario execution, data collection, and deterministic replay.
- Develop models for platforms, sensors, weapons, communications, electronic warfare, jamming, command and control, logistics, and environmental effects.
- Extend AFSIM and comparable simulation environments through C++ plugins, framework services, SDK integrations, new platform types, and reusable model interfaces.
- Translate operational concepts, system specifications, and subject-matter expertise into maintainable software models with explicit assumptions and testable behavior.
- Modernize legacy campaign and mission-analysis tools and integrate them into a coherent simulation architecture.
- Build scenario-generation, Monte Carlo, sensitivity-analysis, campaign-execution, and evaluation workflows.
- Scale simulations across developer workstations, on-premises infrastructure, and cloud compute while preserving reproducibility and model provenance.
- Connect constructive simulations with distributed, operational, hardware-in-the-loop, or human-in-the-loop environments where appropriate.
- Establish verification and validation practices, reference scenarios, regression suites, and quantitative measures of model credibility.
- Work directly with government, Air Force, and broader DoD stakeholders to understand acquisition questions and deliver usable capabilities quickly.
- Collaborate with physics, backend, geospatial, AI, and product teams to integrate the simulation kernel into a larger interactive platform.
- Lead design and code reviews, mentor teammates, and improve architecture, documentation, testing, and release practices.
- Mission with impact: Build the models used to evaluate systems, explore operational concepts, and inform major force-design and acquisition decisions.
- Multidisciplinary engineering: Work across simulation, physics, software architecture, AI, geospatial systems, and defense operations.
- Velocity: Prototype quickly, iterate with users, and deliver meaningful capability in weeks rather than years.
- Ownership: Senior engineers own important systems from initial design through deployment and customer use.
- Strong production experience in modern C++, with proficiency in Python for tooling, orchestration, analysis, or automation.
- Hands-on experience developing or extending a simulation framework—not only configuring simulation tools or analyzing their output.
- Experience with event-driven, discrete-event, agent-based, constructive, or distributed simulation architectures.
- Demonstrated ability to represent complex real-world entities, interactions, rules, and edge cases as clear software abstractions.
- Experience building plugins, SDKs, reusable model interfaces, framework services, platform types, or similar extension mechanisms.
- Strong understanding of software architecture, data structures, algorithms, APIs, testing, debugging, and performance engineering.
- Experience making substantial changes within a large existing codebase while maintaining ongoing delivery.
- Experience with model verification, validation, calibration, or regression testing.
- Ability to turn ambiguous operational or technical requirements into executable engineering plans.
- Strong written and verbal communication skills, including the ability to document model assumptions, limitations, interfaces, and intended use.
- Bachelor’s degree or equivalent experience in computer science, engineering, applied mathematics, operations research, physics, or a related discipline.
- Active Secret clearance or eligibility to obtain one.
- Experience supporting Air Force, Space Force, joint, or broader DoD acquisition and mission-analysis programs.
- Experience developing models for sensors, weapons, electronic warfare, jamming, communications, logistics, or command and control.
- Experience translating or modernizing a large legacy modeling or campaign-analysis system into C++.
- Experience designing a simulation framework, event stack, plugin architecture, or campaign system from the ground up.
- Familiarity with HLA, DIS, OneSAF, JSAF, NGTS, STK, or other constructive and distributed simulation environments.
- Experience spanning both operational and constructive simulation.
- Active TS/SCI clearance.
How to Stand Out
- Highlight hands‑on experience with heterogeneous acceleration stacks (CUDA/OpenCL for GPUs, Vivado/Quartus for FPGAs, ASIC flow tools, and ARM/edge SoC toolchains). Include a brief case study in your résumé showing how you ported a DSP/RF algorithm from a high‑level model to a target hardware, quantifying speed‑up and resource usage.
- Build a mini‑simulation framework demo (e.g., a Python‑C++ hybrid that models a multi‑node wargame scenario and runs on both CPU and a GPU‑accelerated backend). Publish the code on a public repo, write a concise README that explains the architecture, performance results, and how you modularized the model for extensibility—this mirrors the “extensible mission‑level simulations” Code Metal seeks.
- Emphasize defense‑domain fluency: list any DoD, aerospace, or automotive projects, security clearances, and familiarity with MIL‑STD verification processes. In the interview, be prepared to walk through how you translate operational questions into quantifiable simulation metrics and ensure model fidelity under constrained hardware.
- Tailor your cover letter to Code Metal’s mission by referencing their code translation platform; describe a specific instance where you reduced algorithm‑to‑silicon time (e.g., “cut deployment time from 8 weeks to 2 weeks by automating RTL generation and CI‑driven regression tests”).
- When discussing compensation, research recent remote senior‑level salaries for model‑simulation engineers in the defense tech sector (typically $180‑$240 k total compensation). Frame your ask around the unique value you bring—hardware‑agnostic simulation pipelines, proven performance gains, and any clearance level—while being ready to negotiate equity or bonus tied to platform adoption milestones.
This is a remote position listed on WFA Digital, the platform for professionals who work from anywhere. Browse more remote jobs across all categories.