2027 Applied Science Internship - Automated Reasoning - United States, PhD Student Science Recruiting, Automated Reasoning
for each section heading.
Use - for any list of duties/requirements/benefits.
Use
for prose.
We must not repeat job title as heading.
We must not include Job ID etc.
We must not include sections with filler like "commensurate with experience". Not present.
We need to ensure we only include sections with real content.
Let's extract content.
From description:
Paragraphs:
"Description This role sits within Amazon's Automated Reasoning and Formal Verification research horizon. Shape the Future of Cloud Computing. Are you a graduate student passionate about Automated Reasoning and its real-world applications? Join our team of innovators and embark on a journey to revolutionize cloud computing through innovative automated reasoning techniques. Our tools are called billions of times daily, powering the backbone of Amazon's products and services. We are changing the way computer systems are developed and operated, raising the bar for security, durability, availability, and quality. Applied Scientists in Automated Reasoning develop and apply formal methods, automated reasoning techniques, and neurosymbolic approaches to ensure the security, reliability, and correctness of Amazon and AWS services and customer applications. Application areas span cloud infrastructure verification, cryptographic assurance, AI safety, and formal guarantees for generative AI systems. Methods range from interactive theorem proving and constraint solving to neuro-inspired proof search. As an Applied Science Intern, you will have the opportunity to work alongside our scientists and contribute to projects. From distributed proof search and SAT/SMT solvers to program analysis, synthesis, and verification, you will tackle complex challenges at the intersection of theory and practice. Amazon has positions available for Automated Reasoning Applied Science Internships in, but not limited to, Arlington, VA; Boston, MA; New York, NY; Portland, OR; Santa Clara, CA; Seattle, WA; Austin, TX; Cambridge, UK."
That's about the role.
Next: "Key job responsibilities We are particularly interested in candidates with expertise in: Theorem Proving, Boolean Satisfiability Solvers, Bounded Model Checking, Deductive Verification, Programming/Scripting Languages, Abstract Interpretation, Automated Reasoning, Static/Program Analysis, Program Synthesis. Contribute to the design and implementation of algorithms and formal methods for automated reasoning, including constraint solving, model checking, static analysis, theorem proving, and program synthesis, within a guided research framework. Explore and apply generative AI and machine learning techniques to enhance automated reasoning, including learning-based heuristics for search, neural approaches to symbolic reasoning, and methods for verifying the correctness of AI-generated code. Contribute to automated reasoning techniques for generative AI and agentic coding systems, including methods that apply formal guarantees to large language model outputs. Contribute to the scientific community through publications at peer-reviewed conferences and journals. Leverage AI-powered tools where applicable to accelerate research, experimentation, and prototyping. Critically review and validate outputs from AI tools and automated systems. The ideal intern must have the ability to communicate research findings clearly to diverse audiences."
That's responsibilities.
Next: "Basic Qualifications Are enrolled in a PhD Can relocate to where the internship is based Work 40 hours/week minimum and commit to 12 week internship minimum Experience programming in Python, and where applicable, C++, Haskell, or Lean Experience in one or more of the following: mathematical logic, formal verification, satisfiability solving (SAT/SMT), mechanical theorem proving, model checking, or program analysis Demonstrated science depth in a specific research area, evidenced through publications, thesis work, or equivalent contributions"
That's basic qualifications.
Next: "Preferred Qualifications Experience implementing algorithms using formal methods toolkits (e.g. Lean, Dafny, Isabelle, Rocq, Z3, SAT/SMT solvers, or domain-specific verification frameworks) Experience applying formal methods or automated reasoning to real-world software, security, or systems problems Experience programming in OCaml, Haskell, Rust, Scala, or a related functional or systems language Experience with AI-assisted development tools to accelerate research, coding, or evaluation"
That's preferred qualifications.
We could treat Basic Qualifications as Requirements, Preferred Qualifications as Qualifications, and maybe Skills as the list of expertise (Theorem Proving, etc.) but that appears in responsibilities section. Could also have a Skills section for the expertise list.
But we need to avoid duplication. The instruction: "Prefer a few substantive sections over many thin ones." So we might combine.
We need sections: About the role, Responsibilities, Requirements, Qualifications, Skills, Benefits, Pay, Schedule.
We have content for:
- About the role: the first paragraph(s) describing role.
- Responsibilities: bullet list of responsibilities (the bullet points after "Key job responsibilities").
- Requirements: basic qualifications (list).
- Qualifications: preferred qualifications (list).
- Skills: maybe the expertise list (Theorem Proving, etc.) could be considered skills. But we already have expertise list in responsibilities. Could move that to Skills.
- Benefits: mention of EAP, Mental Health Support, Medical Advice Line, 401(k) matching.
- Pay: Starting pay: "Seattle, WA, USA - 135,660.00 USD Annually". Also maybe location list? But pay is specific.
- Schedule: "Work 40 hours/week minimum and commit to 12 week internship minimum". Also maybe location list? But schedule is about hours and duration.
We need to ensure we don't repeat info.
Let's extract bullet lists.
Responsibilities bullet points:
- Contribute to the design and implementation of algorithms and formal methods for automated reasoning, including constraint solving, model checking, static analysis, theorem proving, and program synthesis, within a guided research framework.
- Explore and apply generative AI and machine learning techniques to enhance automated reasoning, including learning-based heuristics for search, neural approaches to symbolic reasoning, and methods for verifying the correctness of AI-generated code.
- Contribute to automated reasoning techniques for generative AI and agentic coding systems, including methods that apply formal guarantees to large language model outputs.
- Contribute to the scientific community through publications at peer-reviewed conferences and journals.
- Leverage AI-powered tools where applicable to accelerate research, experimentation, and prototyping.
- Critically review and validate outputs from AI tools and automated systems.
- The ideal intern must have the ability to communicate research findings clearly to diverse audiences.
Also earlier: "We are particularly interested in candidates with expertise in: Theorem Proving, Boolean Satisfiability Solvers, Bounded Model Checking, Deductive Verification, Programming/Scripting Languages, Abstract Interpretation, Automated Reasoning, Static/Program Analysis, Program Synthesis." That could be skills.
Now Basic Qualifications bullet list:
- Are enrolled in a PhD
- Can relocate to where the internship is based
- Work 40 hours/week minimum and commit to 12 week internship minimum
- Experience programming in Python, and where applicable, C++, Haskell, or Lean
- Experience in one or more of the following: mathematical logic, formal verification, satisfiability solving (SAT/SMT), mechanical theorem proving, model checking, or program analysis
- Demonstrated science depth in a specific research area, evidenced through publications, thesis work, or equivalent contributions
Preferred Qualifications bullet list:
- Experience implementing algorithms using formal methods toolkits (e.g. Lean, Dafny, Isabelle, Rocq, Z3, SAT/SMT solvers, or domain-specific verification frameworks)
- Experience applying formal methods or automated reasoning to real-world software, security, or systems problems
- Experience programming in OCaml, Haskell, Rust, Scala, or a related functional or systems language
- Experience with AI-assisted development tools to accelerate research, coding, or evaluation
Benefits: "Starting Day 1 of employment, Amazon offers EAP, Mental Health Support, Medical Advice Line, 401(k) matching." Also maybe mention of benefits link but we can just list those.
Pay: "Seattle, WA, USA - 135,660.00 USD Annually". Also maybe note that it's starting pay.
Schedule: Already captured in basic qualifications: Work 40 hours/week minimum and commit to 12 week internship minimum. Could also include location list? But schedule is about hours and duration.
We need to avoid duplication: The schedule bullet appears also in basic qualifications; we should not duplicate. We'll put schedule in its own section, maybe just that sentence.
We need to ensure we don't include boilerplate like EEO, accommodation, etc.
Now produce HTML.
Structure:
About the role
... (prose)
Responsibilities
- ...
...
Requirements
- ...
...
Qualifications
- ...
...
Skills
- Theorem Proving
- Boolean Satisfiability Solvers
- Bounded Model Checking
- Deductive Verification
- Programming/Scripting Languages
- Abstract Interpretation
- Automated Reasoning
- Static/Program Analysis
- Program Synthesis
Benefits
- Employee Assistance Program (EAP)
- Mental Health Support
- Medical Advice Line
- 401(k) matching
Pay
Seattle, WA, USA - 135,660.00 USD Annually
Schedule
Work 40 hours/week minimum and commit to 12 week internship minimum
We need to ensure we didn't miss any substantive info: The list of locations for internships: Arlington, VA; Boston, MA; New York, NY; Portland, OR; Santa Clara, CA; Seattle, WA; Austin, TX; Cambridge, UK. That is substantive info about where positions are available. Should we include that? It could be part of About the role or maybe a separate section like Locations, but not in prescribed headings. Could fold into About the role as prose. The About the role currently includes that sentence: "Amazon has positions available for Automated Reasoning Applied Science Internships in, but not limited to, Arlington, VA; Boston, MA; New York, NY; Portland, OR; Santa Clara, CA; Seattle, WA; Austin, TX; Cambridge, UK." We should keep that in About the role.
Also we need to include the bit about "As an Applied Science Intern, you will have the opportunity to work alongside our scientists and contribute to projects. From distributed proof search and SAT/SMT solvers to program analysis, synthesis, and verification, you will tackle complex challenges at the intersection of theory and practice." That's part of About the role.
Also the bit about "Our tools are called billions of times daily, powering the backbone of Amazon's products and services." etc.
Thus About the role should include all that prose.
Let's craft About the role paragraph(s). Could be multiple
for prose. We must not repeat job title as heading. We must not include Job ID etc. We must not include sections with filler like "commensurate with experience". Not present. We need to ensure we only include sections with real content. Let's extract content. From description: Paragraphs: "Description This role sits within Amazon's Automated Reasoning and Formal Verification research horizon. Shape the Future of Cloud Computing. Are you a graduate student passionate about Automated Reasoning and its real-world applications? Join our team of innovators and embark on a journey to revolutionize cloud computing through innovative automated reasoning techniques. Our tools are called billions of times daily, powering the backbone of Amazon's products and services. We are changing the way computer systems are developed and operated, raising the bar for security, durability, availability, and quality. Applied Scientists in Automated Reasoning develop and apply formal methods, automated reasoning techniques, and neurosymbolic approaches to ensure the security, reliability, and correctness of Amazon and AWS services and customer applications. Application areas span cloud infrastructure verification, cryptographic assurance, AI safety, and formal guarantees for generative AI systems. Methods range from interactive theorem proving and constraint solving to neuro-inspired proof search. As an Applied Science Intern, you will have the opportunity to work alongside our scientists and contribute to projects. From distributed proof search and SAT/SMT solvers to program analysis, synthesis, and verification, you will tackle complex challenges at the intersection of theory and practice. Amazon has positions available for Automated Reasoning Applied Science Internships in, but not limited to, Arlington, VA; Boston, MA; New York, NY; Portland, OR; Santa Clara, CA; Seattle, WA; Austin, TX; Cambridge, UK." That's about the role. Next: "Key job responsibilities We are particularly interested in candidates with expertise in: Theorem Proving, Boolean Satisfiability Solvers, Bounded Model Checking, Deductive Verification, Programming/Scripting Languages, Abstract Interpretation, Automated Reasoning, Static/Program Analysis, Program Synthesis. Contribute to the design and implementation of algorithms and formal methods for automated reasoning, including constraint solving, model checking, static analysis, theorem proving, and program synthesis, within a guided research framework. Explore and apply generative AI and machine learning techniques to enhance automated reasoning, including learning-based heuristics for search, neural approaches to symbolic reasoning, and methods for verifying the correctness of AI-generated code. Contribute to automated reasoning techniques for generative AI and agentic coding systems, including methods that apply formal guarantees to large language model outputs. Contribute to the scientific community through publications at peer-reviewed conferences and journals. Leverage AI-powered tools where applicable to accelerate research, experimentation, and prototyping. Critically review and validate outputs from AI tools and automated systems. The ideal intern must have the ability to communicate research findings clearly to diverse audiences." That's responsibilities. Next: "Basic Qualifications Are enrolled in a PhD Can relocate to where the internship is based Work 40 hours/week minimum and commit to 12 week internship minimum Experience programming in Python, and where applicable, C++, Haskell, or Lean Experience in one or more of the following: mathematical logic, formal verification, satisfiability solving (SAT/SMT), mechanical theorem proving, model checking, or program analysis Demonstrated science depth in a specific research area, evidenced through publications, thesis work, or equivalent contributions" That's basic qualifications. Next: "Preferred Qualifications Experience implementing algorithms using formal methods toolkits (e.g. Lean, Dafny, Isabelle, Rocq, Z3, SAT/SMT solvers, or domain-specific verification frameworks) Experience applying formal methods or automated reasoning to real-world software, security, or systems problems Experience programming in OCaml, Haskell, Rust, Scala, or a related functional or systems language Experience with AI-assisted development tools to accelerate research, coding, or evaluation" That's preferred qualifications. We could treat Basic Qualifications as Requirements, Preferred Qualifications as Qualifications, and maybe Skills as the list of expertise (Theorem Proving, etc.) but that appears in responsibilities section. Could also have a Skills section for the expertise list. But we need to avoid duplication. The instruction: "Prefer a few substantive sections over many thin ones." So we might combine. We need sections: About the role, Responsibilities, Requirements, Qualifications, Skills, Benefits, Pay, Schedule. We have content for: - About the role: the first paragraph(s) describing role. - Responsibilities: bullet list of responsibilities (the bullet points after "Key job responsibilities"). - Requirements: basic qualifications (list). - Qualifications: preferred qualifications (list). - Skills: maybe the expertise list (Theorem Proving, etc.) could be considered skills. But we already have expertise list in responsibilities. Could move that to Skills. - Benefits: mention of EAP, Mental Health Support, Medical Advice Line, 401(k) matching. - Pay: Starting pay: "Seattle, WA, USA - 135,660.00 USD Annually". Also maybe location list? But pay is specific. - Schedule: "Work 40 hours/week minimum and commit to 12 week internship minimum". Also maybe location list? But schedule is about hours and duration. We need to ensure we don't repeat info. Let's extract bullet lists. Responsibilities bullet points: - Contribute to the design and implementation of algorithms and formal methods for automated reasoning, including constraint solving, model checking, static analysis, theorem proving, and program synthesis, within a guided research framework. - Explore and apply generative AI and machine learning techniques to enhance automated reasoning, including learning-based heuristics for search, neural approaches to symbolic reasoning, and methods for verifying the correctness of AI-generated code. - Contribute to automated reasoning techniques for generative AI and agentic coding systems, including methods that apply formal guarantees to large language model outputs. - Contribute to the scientific community through publications at peer-reviewed conferences and journals. - Leverage AI-powered tools where applicable to accelerate research, experimentation, and prototyping. - Critically review and validate outputs from AI tools and automated systems. - The ideal intern must have the ability to communicate research findings clearly to diverse audiences. Also earlier: "We are particularly interested in candidates with expertise in: Theorem Proving, Boolean Satisfiability Solvers, Bounded Model Checking, Deductive Verification, Programming/Scripting Languages, Abstract Interpretation, Automated Reasoning, Static/Program Analysis, Program Synthesis." That could be skills. Now Basic Qualifications bullet list: - Are enrolled in a PhD - Can relocate to where the internship is based - Work 40 hours/week minimum and commit to 12 week internship minimum - Experience programming in Python, and where applicable, C++, Haskell, or Lean - Experience in one or more of the following: mathematical logic, formal verification, satisfiability solving (SAT/SMT), mechanical theorem proving, model checking, or program analysis - Demonstrated science depth in a specific research area, evidenced through publications, thesis work, or equivalent contributions Preferred Qualifications bullet list: - Experience implementing algorithms using formal methods toolkits (e.g. Lean, Dafny, Isabelle, Rocq, Z3, SAT/SMT solvers, or domain-specific verification frameworks) - Experience applying formal methods or automated reasoning to real-world software, security, or systems problems - Experience programming in OCaml, Haskell, Rust, Scala, or a related functional or systems language - Experience with AI-assisted development tools to accelerate research, coding, or evaluation Benefits: "Starting Day 1 of employment, Amazon offers EAP, Mental Health Support, Medical Advice Line, 401(k) matching." Also maybe mention of benefits link but we can just list those. Pay: "Seattle, WA, USA - 135,660.00 USD Annually". Also maybe note that it's starting pay. Schedule: Already captured in basic qualifications: Work 40 hours/week minimum and commit to 12 week internship minimum. Could also include location list? But schedule is about hours and duration. We need to avoid duplication: The schedule bullet appears also in basic qualifications; we should not duplicate. We'll put schedule in its own section, maybe just that sentence. We need to ensure we don't include boilerplate like EEO, accommodation, etc. Now produce HTML. Structure:
About the role
... (prose)
Responsibilities
- ... ...
Requirements
- ... ...
Qualifications
- ... ...
Skills
- Theorem Proving
- Boolean Satisfiability Solvers
- Bounded Model Checking
- Deductive Verification
- Programming/Scripting Languages
- Abstract Interpretation
- Automated Reasoning
- Static/Program Analysis
- Program Synthesis
Benefits
- Employee Assistance Program (EAP)
- Mental Health Support
- Medical Advice Line
- 401(k) matching
Pay
Seattle, WA, USA - 135,660.00 USD Annually
Schedule
Work 40 hours/week minimum and commit to 12 week internship minimum
We need to ensure we didn't miss any substantive info: The list of locations for internships: Arlington, VA; Boston, MA; New York, NY; Portland, OR; Santa Clara, CA; Seattle, WA; Austin, TX; Cambridge, UK. That is substantive info about where positions are available. Should we include that? It could be part of About the role or maybe a separate section like Locations, but not in prescribed headings. Could fold into About the role as prose. The About the role currently includes that sentence: "Amazon has positions available for Automated Reasoning Applied Science Internships in, but not limited to, Arlington, VA; Boston, MA; New York, NY; Portland, OR; Santa Clara, CA; Seattle, WA; Austin, TX; Cambridge, UK." We should keep that in About the role. Also we need to include the bit about "As an Applied Science Intern, you will have the opportunity to work alongside our scientists and contribute to projects. From distributed proof search and SAT/SMT solvers to program analysis, synthesis, and verification, you will tackle complex challenges at the intersection of theory and practice." That's part of About the role. Also the bit about "Our tools are called billions of times daily, powering the backbone of Amazon's products and services." etc. Thus About the role should include all that prose. Let's craft About the role paragraph(s). Could be multiple