Jobs · Engineering · Washington

Software Engineer, Distributed Simulation

Anduril Industries · Seattle, WA · 3 wk ago
Engineering$166k–$220k/yrFull-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. We need to extract content from posting. We must not repeat job title. No Job ID. Remove boilerplate: cookie/navigation/legal/EEO/equal-opportunity/scam-warning, duplicated lines, application instructions. So we need to strip out the scam warning, data privacy, etc. We need to preserve all substantive information. Let's parse the posting: Intro paragraph about Anduril (mission). That's maybe part of About the role? Actually "About The Team" then "About The Role". The "About The Team" describes SIE platform. That could be part of About the role? The instruction: Use

for section headings (e.g. About the role, Responsibilities, Requirements, Qualifications, Skills, Benefits, Pay, Schedule). So we need headings exactly those strings? Probably case-insensitive but we should match exactly as given: "About the role", "Responsibilities", "Requirements", "Qualifications", "Skills", "Benefits", "Pay", "Schedule". We need to include only those sections that have real specific content. We have content: - About the role: The posting includes "About The Role" paragraph: "We are looking for a Software Engineer to work within major systems inside the SIE platform. This is a software engineering role with an infrastructure center of gravity: you will build services orchestrating compute and exposing capabilities to users as part of a coherent platform. You will work on problems that do not have a settled answer yet, in a product that is growing quickly in both scale and number of users. We expect you to work end-to-end: design, implement, ship, operate, and then talk to the people using it. Senior engineers on this team lead projects, mentor other engineers, and are trusted to make and defend architectural decisions." That's substantive. - Responsibilities: The "What You'll Do" list: bullet points. We need to put them in
  • . List: - Design and build the backend services that provision, orchestrate, and tear down distributed test and simulation environments on Kubernetes - Own significant subsystems of the platform end-to-end — from design through rollout, operation, and iteration with users - Scale the platform's compute layer as demand grows, including capacity management, performance, and efficient use of expensive resources - Improve the interfaces and abstractions through which users describe their environments, so they can express complex test topologies without needing to be Kubernetes experts - Build for the range of environments we deploy into, including cloud and on-premise, along with the release and configuration tooling that makes those deployments repeatable - Improve reliability and performance of a system whose workloads are heavy and short-lived, including instrumentation, monitoring, and root cause analysis when something breaks - Raise the engineering bar through design and code review, technical mentorship, and clear technical writing - Work directly with internal engineering teams, business lines, and external customers to understand where the platform falls short, and turn that into shipped improvements That's responsibilities. - Requirements: The posting has "Required Qualifications". That likely maps to Requirements section. Also "Preferred Qualifications" maybe Qualifications? Actually they have both Required and Preferred. The instruction: Use headings Requirements, Qualifications, Skills, Benefits, Pay, Schedule. We need to decide mapping. We have Required Qualifications list: - 3-6 years of professional software engineering experience - Computer Science degree or equivalent industry experience - Strong production experience in a language such as Go, Rust, C++, Java, or Python - Experience building and operating distributed systems or infrastructure platforms in production, including ownership of the operational side (deployment, monitoring, debugging, on-call) - Hands-on Kubernetes experience with a deep understanding of its internals and components, such as as controllers, operators, and custom resources - Experience with infrastructure as code and modern build and deployment tooling (e.g. Terraform, Helm, CI/CD systems) - Demonstrated ability to own an ambiguous, cross-cutting project end-to-end and drive it to production - Strong written and verbal communication — you can write a design document that a skeptical reader can evaluate - Eligible to obtain and maintain an active U.S. Secret security clearance That's requirements. Preferred Qualifications list: - You have a bias for action and taking ownership. - You have a track record of fixing a problem when you see one, including problems that are not formally yours. - Experience building a platform or developer tooling product with real users — internal or external — and iterating based on their feedback - Experience with KubeVirt, qemu, virtualization or hypervisor technologies - Experience managing Kubernetes clusters of hundreds of nodes, including capacity management and autoscaling - Experience with simulation, modeling, robotics testing, or hardware-in-the-loop systems - Experience with cloud infrastructure across more than one provider (AWS, Azure), and with on-premise deployment - Experience or interest working in monorepos with modern build systems like Bazel, Buck, Nix, etc. - Experience designing and implementing APIs using gRPC/protobuf or similar technologies - Knowledge of performance improvement techniques, metrics and alerting - Experience with low-level frameworks, Linux and databases - Active U.S. Secret security clearance These could go under Qualifications or Skills. The instruction includes both Qualifications and Skills headings. We need to decide what to put where. Typically Qualifications = required qualifications, Skills = preferred or technical skills. But we have both required and preferred. We could put Required Qualifications under Requirements, and Preferred Qualifications under Qualifications (or Skills). However we also have a Skills heading; maybe we should put technical skills there (like languages, tools). But we already have many technical items in required. Could split: Requirements = required qualifications (experience, education, clearance). Qualifications = preferred qualifications (additional experience). Skills = maybe technical skills like languages, Kubernetes, etc. But we have overlapping. We need to avoid thin sections. Perhaps combine Required and Preferred into Requirements and Qualifications respectively, and omit Skills if no distinct content. But we have technical skills like languages, Kubernetes, etc. Those are in required. Could put them under Skills. Let's think: The instruction says "Use

    for section headings (e.g. About the role, Responsibilities, Requirements, Qualifications, Skills, Benefits, Pay, Schedule)." It's just examples; we can include any of those headings if we have content. We should aim for a few substantive sections. We have: - About the role (we have content) - Responsibilities (we have content) - Requirements (we have required qualifications) - Qualifications (we have preferred qualifications) - Skills (maybe we could list specific technical skills: Go, Rust, C++, Java, Python; Kubernetes; Terraform, Helm, CI/CD; gRPC/protobuf; etc.) But many are already in required/preferred. Could still create a Skills section summarizing technical skills. - Benefits: we have benefits description: "Highly competitive equity grants are included in the majority of full time offers; and are considered part of Anduril's total compensation package. Additionally, Anduril offers top-tier benefits for full-time employees, including: At Anduril, we invest in our people. Our comprehensive, competitive benefits package (available at little to no cost to employees) ensures you’re supported in health, recovery, and whatever comes next. For more information, Explore Our Benefits." That's vague; not specific benefits like health insurance, 401k, etc. It's generic. The instruction says: never emit a heading followed by filler/placeholder text (e.g. "commensurate with experience", "not specified", "N/A", "varies", "TBD") and never create Pay/Schedule/Benefits sections unless the posting actually states them. The benefits section is vague but does state that they offer top-tier benefits, health, recovery, etc. It's somewhat generic but still states they offer benefits. Is that enough? It says "At Anduril, we invest in our people. Our comprehensive, competitive benefits package (available at little to no cost to employees) ensures you’re supported in health, recovery, and whatever comes next." That's still vague but mentions health, recovery. Might be considered substantive enough? However it's not specific like "medical, dental, vision, 401k". The instruction says avoid filler/placeholder text. This is somewhat generic but still says they offer benefits. I'd lean to include Benefits section with that content. - Pay: we have US Salary Range $166,000—$220,000 USD. Also note: "The salary range for this role is an estimate based on a wide range of compensation factors, inclusive of base salary only. Actual salary offer may vary based on (but not limited to) work experience, education and/or training, critical skills, and/or business considerations." That's specific enough. So we should include Pay section with that info. - Schedule: not mentioned. No info about schedule (full-time, remote, etc). So we should not include Schedule. Now we need to strip boilerplate: The scam warning, data privacy, etc. Also remove duplicated lines. Also remove "Explore Our Benefits" link? That's maybe part of benefits but it's a call to action; we could keep the sentence but maybe remove the link? The instruction: remove application instructions. "Explore Our Benefits" is not application instruction but maybe a link; we could keep the sentence but drop the link? Safer to keep the sentence but remove the link text? The instruction: remove duplicated lines, cookie/navigation/legal/EEO/equal-opportunity/scam-warning boilerplate, duplicated lines, and application instructions. So we should remove the scam warning paragraphs and data privacy paragraph. Also remove "Explore Our Benefits." maybe it's okay as it's part of benefits description. But it's a call to action; might be considered application instruction? Not exactly. I'd keep it but maybe remove the link. However we cannot include markdown; we just output plain text. So we can keep the sentence "For more information, Explore Our Benefits." It's fine. Now we need to output HTML fragment only, no /. Use

    for each section heading. Use
    • for any list of duties/requirements/benefits, and

      for prose. We need to decide which content goes into which section as lists. - About the role: prose (maybe a couple paragraphs). We'll put in

      . - Responsibilities: list of duties ->

      • . - Requirements: list of required qualifications ->
        • . - Qualifications: list of preferred qualifications ->
          • . - Skills: maybe list of technical skills (languages, tools). Could be a
            • . But we might avoid duplication. However we could still include a Skills section summarizing technical skills: "Go, Rust, C++, Java, Python; Kubernetes; Terraform, Helm, CI/CD; gRPC/protobuf; etc." But we already have those in required/preferred. Might be thin. Better to omit Skills if no distinct content beyond what's already covered. The instruction: prefer a few substantive sections over many thin ones. So we could omit Skills. - Benefits: we have prose about benefits; maybe we can put in

              . Could also list specific benefits? Not given. We'll put prose. - Pay: we have salary range and note; we can put in

              . Now we need to ensure we don't include any boilerplate like "Eligible to obtain and maintain an active U.S. Secret security clearance" is part of Required Qualifications; we keep it. Now we need to remove duplicated lines: I see no duplicates besides maybe the sentence about salary range appears twice? Actually appears: "US Salary Range $166,000—$220,000 USD Benefits The salary range for this role is an estimate based on a wide range of compensation factors, inclusive of base salary only. Actual salary offer may vary based on (but not limited to) work experience, education

Similar jobs

Simulation Software Engineer

Toyon Research CorporationGoleta, CA· 2 mo ago
Information Technology$110k–$180k/yrapply on recruiting.paylocity.com