Cyber Software Engineer
Mission Technologies, a division of HII · Annapolis Junction, MD · 1 mo ago
Engineering$130k–$180k/yrFull-time
We need to output HTML fragment with sections for headings where content exists. Use for section headings: About the role, Responsibilities, Requirements, Qualifications, Skills, Benefits, Pay, Schedule. Only include sections with real specific content.
We need to parse the posting.
First, remove boilerplate: Requisition Number, Required Travel, Employment Type, Anticipated Salary Range, Security Clearance, Level of Experience, etc. But we need to preserve substantive info: maybe salary range is substantive; we can include Pay section if salary range present. The posting includes "Anticipated Salary Range: $130,000.00 - $180,000.00". That's specific, so we should include Pay section.
Schedule? Not mentioned; no schedule info. So omit Schedule.
Benefits? Not mentioned explicitly; no benefits listed. So omit Benefits.
About the role: The posting includes description about Warfare Systems, Mission Technologies, etc. That's about the role/company. So we can have About the role section with paragraphs.
Responsibilities: There's "Essential Job Responsibilities" block with bullet-like sentences. We'll turn into
for section headings: About the role, Responsibilities, Requirements, Qualifications, Skills, Benefits, Pay, Schedule. Only include sections with real specific content.
We need to parse the posting.
First, remove boilerplate: Requisition Number, Required Travel, Employment Type, Anticipated Salary Range, Security Clearance, Level of Experience, etc. But we need to preserve substantive info: maybe salary range is substantive; we can include Pay section if salary range present. The posting includes "Anticipated Salary Range: $130,000.00 - $180,000.00". That's specific, so we should include Pay section.
Schedule? Not mentioned; no schedule info. So omit Schedule.
Benefits? Not mentioned explicitly; no benefits listed. So omit Benefits.
About the role: The posting includes description about Warfare Systems, Mission Technologies, etc. That's about the role/company. So we can have About the role section with paragraphs.
Responsibilities: There's "Essential Job Responsibilities" block with bullet-like sentences. We'll turn into - .
Requirements: There's "Minimum Qualifications" and "Preferred Requirements". Those could go under Requirements or Qualifications. The instruction: Use headings like Requirements, Qualifications, Skills. We need to decide where to put content. Minimum Qualifications and Preferred Requirements are qualifications. Could put under Qualifications. Skills could be separate if we have explicit skills list (C, Assembly, Python, Ghidra, etc). We have expertise with C, Assembly, Python, etc. That's skills. Could put under Skills.
We must not repeat job title as heading. The job title is Cyber Software Engineer (mentioned). Not to be used as heading.
We must preserve all substantive info, not invent or summarize away detail. So we need to include all details from Minimum Qualifications, Preferred Requirements, responsibilities, etc.
We need to avoid boilerplate like EEO, accommodation, etc. Remove those.
Also remove duplicated lines, navigation, cookie, legal, EEO, scam-warning, application instructions. The posting includes "Find the role that’s right for you. Apply today. We look forward to meeting you." That's application instruction; remove. Also "To learn more about Mission Technologies, click here for a short video: https://vimeo.com/732533072" - that's maybe not boilerplate but could be considered promotional; but it's not essential job info? Might be considered extra but not required. The instruction: remove cookie/navigation/legal/EEO/equal-opportunity/scam-warning boilerplate, duplicated lines, and application instructions. The video link is not exactly those; but it's promotional. Might be considered not essential; but we could keep as part of About the role? It's not about the role. Safer to remove it as it's not substantive job info. The instruction says preserve ALL substantive information; do NOT invent or summarize away detail. The video link is not substantive to the job; it's extra. I'd remove it.
Also "Do You Need Assistance?" accommodation info is boilerplate; remove.
Also "Together we are working to ensure a future where everyone can be free and thrive." That's fluff; maybe remove as not substantive.
Also "All qualified applicants will receive consideration..." that's EEO boilerplate; remove.
Now we need to structure.
Let's extract sections:
About the role: Paragraphs describing Warfare Systems, Mission Technologies, etc. Also the first paragraph: "This opportunity resides with Warfare Systems (WS), a business group within HII’s Mission Technologies division. Warfare Systems comprises cyber and mission IT; electronic warfare; and C5ISR systems. HII works within our nation’s intelligence and cyber operations communities to defend our interests in cyberspace and anticipate emerging threats. Our capabilities in cybersecurity, network architecture, reverse engineering, software and hardware development uniquely enable us to support sensitive missions for the U.S. military and federal agency partners."
Then "Meet HII’s Mission Technologies Division Our team of more than 7,000 professionals worldwide delivers all-domain expertise and advanced technologies in service of mission partners across the globe. Mission Technologies is leading the next evolution of national defense – the data evolution - by accelerating a breadth of national security solutions for government and commercial customers. Our capabilities range from C5ISR, AI and Big Data, cyber operations and synthetic training environments to fleet sustainment, environmental remediation and the largest family of unmanned underwater vehicles in every class."
We can combine into a couple paragraphs.
Responsibilities: The list under "Essential Job Responsibilities". Let's parse sentences:
- The Cyber Engineer will work closely with Project Managers, Technical Leads, and government operator teams to ensure that every implementation aligns with mission objectives.
- From writing and integrating new code to executing thorough unit tests and documenting every step with precision
- Design, develop, document, and test software for offensive cyber operations capabilities.
- Identify and exploit vulnerabilities in software, firmware, protocols, and hardware components.
- Design robust test procedures and implement automated test suites to rigorously evaluate new features during development cycles.
- Collaborate with Technical Writers to contribute to mission deliverables and author technical documentation that accurately reflects the implemented features and workflows.
- Utilize tools like Ghidra and custom Python scripts to analyze and interpret firmware components.
- This investigative work supports the development of integrated solutions tailored to evolving mission needs.
We need to turn each into
- . Some sentences are fragments; but we keep as is.
Minimum Qualifications: "5 years relevant experience with Bachelors in related field; 3 years relevant experience with Masters in related field; 0 years experience with PhD or Juris Doctorate in related field; or High School Diploma or equivalent and 9 years relevant experience.At least 3 years of experience in software engineering, or a related field Expertise with C, Assembly, and Python, particularly in low-level or embedded systems environmentsTS/SCI clearance required; must be willing to undergo a polygraph"
We need to preserve that exactly but format as list? Could be a paragraph. The instruction: Use
- for any list of duties/requirements/benefits. Minimum Qualifications is a list of alternatives; we could treat as
- . But it's semi-colon separated. Might be okay to put as
. However it's a list of qualifications; we could put under Qualifications heading as
- . Similarly Preferred Requirements: list.
Skills: Could extract expertise with C, Assembly, Python, Ghidra, custom Python scripts, designing automated unit and integration tests, drafting technical documentation.
But we already have those in qualifications. Might be redundant. Better to put qualifications under Requirements heading, and skills under Skills heading.
But we need to avoid duplication. The instruction says preserve ALL substantive information; do NOT invent or summarize away detail. If we split, we need to ensure we don't lose any info. We could put Minimum Qualifications and Preferred Requirements under Requirements heading as a combined list. Then Skills heading could list specific technical skills: C, Assembly, Python, Ghidra, custom scripting, automated unit/integration tests, technical documentation. However those are already mentioned in qualifications; but we can still include them as skills; not duplicating? Might be considered duplication but still preserving info. The instruction says do NOT invent or summarize away detail; duplication is not prohibited but might be considered redundant. Safer to keep qualifications under Requirements and maybe not have separate Skills unless there is explicit skills list separate from qualifications. The posting includes "Expertise with C, Assembly, and Python, particularly in low-level or embedded systems environments" under Minimum Qualifications. Also "Preferred Requirements" includes familiarity with Ghidra, custom scripting, proficient in designing and executing automated unit and integration tests, experience drafting technical documentation. So we could put those under Skills.
Thus we will have:
- About the role (paragraphs)
- Responsibilities (ul)
- Requirements (ul) maybe combine Minimum Qualifications and Preferred Requirements? Or separate: Requirements (Minimum Qualifications) and Qualifications (Preferred Requirements). But headings list includes Requirements, Qualifications, Skills. We could use Requirements for Minimum Qualifications, Qualifications for Preferred Requirements, Skills for technical skills. However that may split similar content.
Better: Use Requirements for Minimum Qualifications, Qualifications for Preferred Requirements, and Skills for explicit technical skills (C, Assembly, Python, Ghidra, etc). But then we would duplicate some content (C, Assembly, Python appears in Minimum Qualifications). But we could still include it under Skills as it's a skill. It's not invented; it's present. Duplication is okay but might be considered unnecessary. The instruction: "Prefer a few substantive sections over many thin ones." So we should avoid many thin sections. So maybe combine into two sections: About the role, Responsibilities, Qualifications (which includes both minimum and preferred), and Pay. That's three sections plus maybe Skills if needed.
But we need to follow heading list: we can use any of those headings; we don't have to use all. So we can use About the role, Responsibilities, Qualifications, Pay.
Thus:
About the role
... paragraphs ...
Responsibilities
- ... each responsibility ...
Qualifications
- ... Minimum Qualifications items ...
- ... Preferred Requirements items ...
Pay
$130,000.00 - $180,000.00 (anticipated salary range)
We need to ensure we preserve all substantive info: includes TS/SCI clearance required, polygraph, etc. Those are in Minimum Qualifications.
Let's extract Minimum Qualifications items precisely:
"5 years relevant experience with Bachelors in related field; 3 years relevant experience with Masters in related field; 0 years experience with PhD or Juris Doctorate in related field; or High School Diploma or equivalent and 9 years relevant experience."
"At least 3 years of experience in software engineering, or a related field"
"Expertise with C, Assembly, and Python, particularly in low-level or embedded systems environments"
"TS/SCI clearance required; must be willing to undergo a polygraph"
We need to keep each as separate list items? Could combine but better separate.
Preferred Requirements items:
"3 or more years of experience with offensive cyber operations capabilities"
"Familiarity with tools like Ghidra and custom scripting for firmware analysis"
"Proficient in designing and executing automated unit and integration tests"
"Experience drafting technical documentation independently or working with Technical Writers"
Now we need to ensure we didn't miss any substantive info: The paragraph about "Our capabilities in cybersecurity, network architecture, reverse engineering, software and hardware development uniquely enable us to support sensitive missions for the U.S. military and federal agency partners." That's in About the role.
Also "Our capabilities range from C5ISR, AI and Big Data, cyber operations and synthetic training environments to fleet sustainment, environmental remediation and the largest family of unmanned underwater vehicles in every class." That's also About the role.
Also "Mission Technologies is leading the next evolution of national defense – the data evolution - by accelerating a breadth of national security solutions for government and commercial customers." That's About.
Also "Our team of more than 7,000 professionals worldwide delivers all-domain expertise and advanced technologies in service of mission partners across the globe." That's About.
Also "This opportunity resides with Warfare Systems (WS), a business group within HII’s Mission Technologies division. Warfare Systems comprises cyber and mission IT; electronic warfare; and C5ISR systems. HII works within our nation’s intelligence and cyber operations communities to defend our interests in cyberspace and anticipate emerging threats." That's About.
Now responsibilities: we need to ensure we captured all sentences. Let's copy the responsibilities block exactly:
"Essential Job Responsibilities The Cyber Engineer will work closely with Project Managers, Technical Leads, and government operator teams to ensure that every implementation aligns with mission objectives. From writing and integrating new code to executing
- for any list of duties/requirements/benefits. Minimum Qualifications is a list of alternatives; we could treat as
- . But it's semi-colon separated. Might be okay to put as
. However it's a list of qualifications; we could put under Qualifications heading as
- . Similarly Preferred Requirements: list.
Skills: Could extract expertise with C, Assembly, Python, Ghidra, custom Python scripts, designing automated unit and integration tests, drafting technical documentation.
But we already have those in qualifications. Might be redundant. Better to put qualifications under Requirements heading, and skills under Skills heading.
But we need to avoid duplication. The instruction says preserve ALL substantive information; do NOT invent or summarize away detail. If we split, we need to ensure we don't lose any info. We could put Minimum Qualifications and Preferred Requirements under Requirements heading as a combined list. Then Skills heading could list specific technical skills: C, Assembly, Python, Ghidra, custom scripting, automated unit/integration tests, technical documentation. However those are already mentioned in qualifications; but we can still include them as skills; not duplicating? Might be considered duplication but still preserving info. The instruction says do NOT invent or summarize away detail; duplication is not prohibited but might be considered redundant. Safer to keep qualifications under Requirements and maybe not have separate Skills unless there is explicit skills list separate from qualifications. The posting includes "Expertise with C, Assembly, and Python, particularly in low-level or embedded systems environments" under Minimum Qualifications. Also "Preferred Requirements" includes familiarity with Ghidra, custom scripting, proficient in designing and executing automated unit and integration tests, experience drafting technical documentation. So we could put those under Skills.
Thus we will have:
- About the role (paragraphs)
- Responsibilities (ul)
- Requirements (ul) maybe combine Minimum Qualifications and Preferred Requirements? Or separate: Requirements (Minimum Qualifications) and Qualifications (Preferred Requirements). But headings list includes Requirements, Qualifications, Skills. We could use Requirements for Minimum Qualifications, Qualifications for Preferred Requirements, Skills for technical skills. However that may split similar content.
Better: Use Requirements for Minimum Qualifications, Qualifications for Preferred Requirements, and Skills for explicit technical skills (C, Assembly, Python, Ghidra, etc). But then we would duplicate some content (C, Assembly, Python appears in Minimum Qualifications). But we could still include it under Skills as it's a skill. It's not invented; it's present. Duplication is okay but might be considered unnecessary. The instruction: "Prefer a few substantive sections over many thin ones." So we should avoid many thin sections. So maybe combine into two sections: About the role, Responsibilities, Qualifications (which includes both minimum and preferred), and Pay. That's three sections plus maybe Skills if needed.
But we need to follow heading list: we can use any of those headings; we don't have to use all. So we can use About the role, Responsibilities, Qualifications, Pay.
Thus:
About the role
... paragraphs ...
Responsibilities
- ... each responsibility ...
Qualifications
- ... Minimum Qualifications items ...
- ... Preferred Requirements items ...
Pay
$130,000.00 - $180,000.00 (anticipated salary range)
We need to ensure we preserve all substantive info: includes TS/SCI clearance required, polygraph, etc. Those are in Minimum Qualifications. Let's extract Minimum Qualifications items precisely: "5 years relevant experience with Bachelors in related field; 3 years relevant experience with Masters in related field; 0 years experience with PhD or Juris Doctorate in related field; or High School Diploma or equivalent and 9 years relevant experience." "At least 3 years of experience in software engineering, or a related field" "Expertise with C, Assembly, and Python, particularly in low-level or embedded systems environments" "TS/SCI clearance required; must be willing to undergo a polygraph" We need to keep each as separate list items? Could combine but better separate. Preferred Requirements items: "3 or more years of experience with offensive cyber operations capabilities" "Familiarity with tools like Ghidra and custom scripting for firmware analysis" "Proficient in designing and executing automated unit and integration tests" "Experience drafting technical documentation independently or working with Technical Writers" Now we need to ensure we didn't miss any substantive info: The paragraph about "Our capabilities in cybersecurity, network architecture, reverse engineering, software and hardware development uniquely enable us to support sensitive missions for the U.S. military and federal agency partners." That's in About the role. Also "Our capabilities range from C5ISR, AI and Big Data, cyber operations and synthetic training environments to fleet sustainment, environmental remediation and the largest family of unmanned underwater vehicles in every class." That's also About the role. Also "Mission Technologies is leading the next evolution of national defense – the data evolution - by accelerating a breadth of national security solutions for government and commercial customers." That's About. Also "Our team of more than 7,000 professionals worldwide delivers all-domain expertise and advanced technologies in service of mission partners across the globe." That's About. Also "This opportunity resides with Warfare Systems (WS), a business group within HII’s Mission Technologies division. Warfare Systems comprises cyber and mission IT; electronic warfare; and C5ISR systems. HII works within our nation’s intelligence and cyber operations communities to defend our interests in cyberspace and anticipate emerging threats." That's About. Now responsibilities: we need to ensure we captured all sentences. Let's copy the responsibilities block exactly: "Essential Job Responsibilities The Cyber Engineer will work closely with Project Managers, Technical Leads, and government operator teams to ensure that every implementation aligns with mission objectives. From writing and integrating new code to executing
- . Similarly Preferred Requirements: list.
Skills: Could extract expertise with C, Assembly, Python, Ghidra, custom Python scripts, designing automated unit and integration tests, drafting technical documentation.
But we already have those in qualifications. Might be redundant. Better to put qualifications under Requirements heading, and skills under Skills heading.
But we need to avoid duplication. The instruction says preserve ALL substantive information; do NOT invent or summarize away detail. If we split, we need to ensure we don't lose any info. We could put Minimum Qualifications and Preferred Requirements under Requirements heading as a combined list. Then Skills heading could list specific technical skills: C, Assembly, Python, Ghidra, custom scripting, automated unit/integration tests, technical documentation. However those are already mentioned in qualifications; but we can still include them as skills; not duplicating? Might be considered duplication but still preserving info. The instruction says do NOT invent or summarize away detail; duplication is not prohibited but might be considered redundant. Safer to keep qualifications under Requirements and maybe not have separate Skills unless there is explicit skills list separate from qualifications. The posting includes "Expertise with C, Assembly, and Python, particularly in low-level or embedded systems environments" under Minimum Qualifications. Also "Preferred Requirements" includes familiarity with Ghidra, custom scripting, proficient in designing and executing automated unit and integration tests, experience drafting technical documentation. So we could put those under Skills.
Thus we will have:
- About the role (paragraphs)
- Responsibilities (ul)
- Requirements (ul) maybe combine Minimum Qualifications and Preferred Requirements? Or separate: Requirements (Minimum Qualifications) and Qualifications (Preferred Requirements). But headings list includes Requirements, Qualifications, Skills. We could use Requirements for Minimum Qualifications, Qualifications for Preferred Requirements, Skills for technical skills. However that may split similar content.
Better: Use Requirements for Minimum Qualifications, Qualifications for Preferred Requirements, and Skills for explicit technical skills (C, Assembly, Python, Ghidra, etc). But then we would duplicate some content (C, Assembly, Python appears in Minimum Qualifications). But we could still include it under Skills as it's a skill. It's not invented; it's present. Duplication is okay but might be considered unnecessary. The instruction: "Prefer a few substantive sections over many thin ones." So we should avoid many thin sections. So maybe combine into two sections: About the role, Responsibilities, Qualifications (which includes both minimum and preferred), and Pay. That's three sections plus maybe Skills if needed.
But we need to follow heading list: we can use any of those headings; we don't have to use all. So we can use About the role, Responsibilities, Qualifications, Pay.
Thus:
- . But it's semi-colon separated. Might be okay to put as