Principal Python Engineer (Modeling & Simulation)
Code Metal · Boston, MA · 1 mo ago
HybridFull-time
We need to output HTML fragment with sections: About the role, Responsibilities, Requirements, Qualifications, Skills, Benefits, Pay, Schedule. Only include sections that have real specific content. Must not repeat job title. Must not include Job ID etc. Must remove boilerplate. Must preserve all substantive info.
We need to parse the posting.
First part: "About Code Metal ..." is company description, not needed? The instruction: "Our Modeling & Simulation team is building ..." then "In this role, you will help build..." then "Scope of ownership..." then "You'll develop..." then "You'll help design..." then "Strong command..." then "About The Role" heading appears. So we need to extract sections.
We have "About The Role" then bullet list of responsibilities (starting with "Design and implement backend services...").
Then "Required Qualifications:" list.
Then "Preferred Qualifications:" list.
Then "Principal Level Expectations" with sub-bullets: Years of Experience: 10+ etc.
Then "Benefits" list: Pay depends on experience..., Health care plan..., 401k..., Paid Time Off..., Flexible hybrid..., Relocation assistance..., Wage Transparency... (but wage transparency is not a benefit; it's a note). Also "Pay depends on experience, but we strive to be at the upper end of the salary range" is pay info.
We need sections: About the role (maybe a short paragraph summarizing role), Responsibilities (list), Requirements (maybe combine required qualifications?), Qualifications (maybe preferred?), Skills (maybe list of skills from required/preferred?), Benefits, Pay, Schedule.
We must not create sections with filler. So we need to see if we have content for each.
We have About the role: we can use the paragraph after "About The Role" maybe the first sentence? Actually "About The Role" is a heading then list of responsibilities. So we could treat that as About the role section with a brief paragraph: maybe the preceding paragraphs about the team and role? The instruction: "Use .
Requirements: maybe the "Required Qualifications:" list.
Qualifications: maybe the "Preferred Qualifications:" list.
Skills: Could combine required/preferred technical skills? But we might not have a separate skills section; we could omit if no specific skills list beyond qualifications. However we could extract skills like "Python, REST, GraphQL, gRPC, Docker, cloud services, machine learning tools, etc." But that's essentially from qualifications. Might be better to omit Skills section if not distinct.
Benefits: we have list.
Pay: we have "Pay depends on experience, but we strive to be at the upper end of the salary range". That's specific enough? It's not a range but a statement. It's pay info. We'll include.
Schedule: we have "Flexible hybrid or remote work arrangement". That's schedule info. Also maybe "Paid Time Off (uncapped vacation, plus sick and public holidays)" is benefit not schedule. So schedule section can include flexible hybrid/remote.
We must not include boilerplate like equal opportunity, US citizenship, etc.
We must not include "Wage Transparency - The salary range for this role is not a guarantee..." maybe that's part of pay but it's a disclaimer; we could include as part of pay section? It's still pay-related but it's a disclaimer. Might be okay to include but it's not substantive? It's still about pay. We'll include maybe as part of pay paragraph.
We must not repeat job title.
Now produce HTML fragment:
for section headings (e.g. About the role, Responsibilities, Requirements, Qualifications, Skills, Benefits, Pay, Schedule)." So we need to output those headings only if we have content. We have content for About the role: we could summarize the role description before the responsibilities list: "Our Modeling & Simulation team is building the next-generation wargaming and decision-support platform... In this role, you will help build the Python services, pipelines, and tooling that drive the core wargaming simulation." That's substantive. Responsibilities: the bullet list after "About The Role". We'll put each as
About the role
Our Modeling & Simulation team is building the next-generation wargaming and decision-support platform that helps the DoD make multi-billion-dollar force-design decisions before those decisions are made in the real world. In this role, you will help build the Python services, pipelines, and tooling that drive the core wargaming simulation.
Responsibilities
- Design and implement backend services and APIs that orchestrate mission- and campaign-level simulation runs, collect their outputs, and expose results to analysts and government stakeholders.
- Build scenario-generation, operational and mission planning workflows, and key services for Monte-Carlo based sensitivity-analysis for our wargaming and decision-support platform.
- Build distributed, cloud-scale infrastructure that scales simulations across developer workstations, on-premises infrastructure, and cloud compute while preserving reproducibility and model provenance.
- Build data ingestion, normalization, and analysis pipelines that turn raw simulation output into decision-ready insight for defense users.
- Build scalable APIs (REST, GraphQL, gRPC) and containerized services that connect the Python tooling layer to the core simulation runtime and downstream analysis tools.
- Gather requirements from government stakeholders, domain experts, and analysts, and distill them into clear software designs.
- Employ strong SDLC practices throughout — code review, testing, continuous integration, release management, and build systems.
Requirements
- Professional experience with collaborative, enterprise-level software development in Python, delivering products to a large customer base.
- Experience gathering requirements from stakeholders and distilling them into software designs.
- Experience building and delivering robust software using strong SDLC practices, including code review, testing, continuous integration, release management, and build systems.
- Familiarity with machine learning tools and frameworks.
- Expertise building scalable APIs (REST, GraphQL, gRPC).
- Hands-on experience with Docker and containerized application development.
- Eligible to obtain and maintain an active U.S. Top Secret security clearance.
Qualifications
- Familiarity with agentic AI frameworks and solutions.
- Familiarity with code analysis / static analysis.
- Experience working with cloud-based distributed systems (AWS, GCP, Azure).
- Active U.S. security clearance (Secret, Top Secret, or SCI/SAP).
- Direct experience developing AFSIM plugins, framework extensions, event infrastructure, or custom platform types.
- Familiarity with HLA, DIS, OneSAF, JSAF, NGTS, STK, or other constructive and distributed simulation environments.
- 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.
Benefits
- Health care plan with 100% premium coverage, including medical, dental, and vision
- 401k with 5% matching
- Paid Time Off (uncapped vacation, plus sick and public holidays)
- Flexible hybrid or remote work arrangement
- Relocation assistance for qualifying employees
Pay
Pay depends on experience, but we strive to be at the upper end of the salary range. Wage transparency note: the salary range is not a guarantee of compensation; final offer may vary based on proficiency, skills, experience, and location.
Schedule
Flexible hybrid or remote work arrangement.
We have duplicated flexible hybrid in benefits and schedule; maybe schedule should be just that. But we already have flexible hybrid in benefits; we could keep it only in benefits and schedule maybe just mention "Flexible hybrid or remote work arrangement". However duplication is okay but maybe better to avoid duplication. Since benefits already includes flexible hybrid, schedule could be omitted? But we have schedule info; we could keep schedule as "Flexible hybrid or remote work arrangement." It's okay to repeat but maybe not ideal. However instruction: do not emit filler; duplication not prohibited but could be considered redundant. I'd keep schedule separate but maybe rephrase: "Flexible hybrid or remote work arrangement." It's same as benefit; but it's schedule info. Could keep. We must ensure we didn't include any boilerplate like "We are an equal opportunity employer." etc. We removed. Check for any leftover boilerplate: "US Citizenship may be required for certain project assignments involving security clearance." That's a requirement? It's about citizenship; could be considered a requirement but it's boilerplate? It's a condition related to security clearance. Might be considered substantive? It's about eligibility. Could include under Requirements? But it's a line after benefits. It's not a list item; it's a sentence. Might be considered boilerplate but it's about citizenship requirement for security clearance. Might be kept as part of Requirements? However we already have eligibility for Top Secret clearance. The citizenship line is extra. Might be considered boilerplate but it's a specific condition. I'd omit to avoid boilerplate. Also "Pursuant to the San Francisco Fair Chance Ordinance..." is boilerplate; omit. Now ensure we didn't miss any substantive info: The paragraph about "Scope of ownership, architectural authority, and mentorship responsibility scale with level — see “Level Expectations by Track” below." That's a reference to level expectations; we have Principal Level Expectations section with details. We didn't include that as a separate section; we could incorporate into Requirements or Qualifications? But we have Principal Level Expectations with years of experience etc. That's substantive; we could treat as Requirements (years of experience) or Qualifications. We already have years of experience not listed elsewhere. We should include that. Perhaps add a bullet under Requirements: "10+ years of experience". Or we could create a separate section "Experience" but not in allowed headings. Could add to Requirements. Let's add to Requirements: "10+ years of experience". Also Principal Level Expectations includes sub-bullets: Engineering Craft & Code Quality, Architecture & Technical Knowledge, Delivery, Scoping & De-risking, Technical Leadership & Mentorship. Those are expectations for the role, could be considered part of Responsibilities or Qualifications? They are expectations; we could add as a subsection under Responsibilities? But they are not duties; they are expectations. Could be included under Requirements as "Expected to: ..." but maybe better to add a separate section "Expectations"? Not in allowed headings. Could incorporate into Responsibilities as additional bullet points? Might be okay to add under Responsibilities as expectations. However the instruction: "Prefer a few substantive sections over many thin ones." We already have many sections. Could we merge Principal Level Expectations into Requirements? It's about expectations, not qualifications. But we can add a bullet under Requirements: "Expected to set the quality and correctness bar across the department; provide architectural guidance; contribute to technical roadmap; mentor mid-level and senior staff." That captures. Let's add a bullet under Requirements summarizing those. Thus Requirements list will include: - Professional experience with collaborative, enterprise-level software development in Python, delivering products to a large customer base. - Experience gathering requirements from stakeholders and distilling them into software designs. - Experience building and delivering robust software using strong SDLC practices, including code review, testing, continuous integration, release management, and build systems. - Familiarity with machine learning tools and frameworks. - Expertise building scalable APIs (REST, GraphQL, gRPC). - Hands-on experience with Docker and containerized application development. - Eligible to obtain and maintain an active U.S. Top Secret security clearance. - 10+ years of