Research Engineer, Climate Modeling
Ai2 · Seattle, WA · 3 wk ago
Engineering$147k/yrFull-time
We need to output HTML fragment with sections: headings for sections like About the role, Responsibilities, Requirements, Qualifications, Skills, Benefits, Pay, Schedule. Only include sections that have real specific content. Must not repeat job title as heading. No Job ID etc. Remove boilerplate, navigation, legal, EEO, etc. Must preserve all substantive info.
We need to parse the posting.
Key content:
- Persons in these roles are expected to work from our offices in Seattle. On-site requirements vary based on position and team. If you have questions about on-site work arrangements for this role, please ask your recruiter. (This is about location/on-site; could be part of "About the role" or maybe "Schedule"? Not exactly schedule. Could be "Work Location". But we only have allowed headings: About the role, Responsibilities, Requirements, Qualifications, Skills, Benefits, Pay, Schedule. So we can put location info under About the role.
- Our base salary range is $146,880 - $220,320 and in addition we have generous bonus plans to provide a competitive compensation package. => Pay section.
- Who You Are: ... description of role: Research Engineer for a new three-year project to develop an AI-powered physics-informed hybrid climate model... etc. This is about the role/responsibilities? Could be "About the role" or "Responsibilities". The "Who You Are" seems like description of the role and what they seek. Could be "About the role". Then later "Your Next Challenge:" details responsibilities. So we can split: About the role: brief description of role and mission. Responsibilities: list of tasks (Your Next Challenge bullet points). Requirements: "What You’ll Need:" list. Qualifications: maybe "It's A Bonus If You:" could be considered Qualifications or Skills? Could treat as "Qualifications" for required, and "Skills" for bonus? But we have both Requirements and Qualifications headings allowed. The instructions: use headings for section headings (e.g. About the role, Responsibilities, Requirements, Qualifications, Skills, Benefits, Pay, Schedule). So we can have both Requirements and Qualifications. Typically Requirements are mandatory, Qualifications are preferred. So we can map: Requirements = "What You’ll Need:" (mandatory). Qualifications = "It's A Bonus If You:" (preferred). Skills could be maybe separate but we can omit if not distinct.
- Benefits: section present with details.
- Schedule: not explicitly given; there is mention of on-site requirements vary, but no schedule like full-time, part-time, hours. So we should not create Schedule section if no specific content. Avoid filler.
- Also there is "Physical Demands and Work Environment" etc. That's boilerplate? It's about ADA etc. Might be considered boilerplate; we should remove cookie/navigation/legal/EEO/equal-opportunity/scam-warning boilerplate. Physical demands maybe not boilerplate but could be considered part of requirements? However it's generic ADA statement; likely to be removed as boilerplate. The instruction: remove cookie/navigation/legal/EEO/equal-opportunity/scam-warning boilerplate, duplicated lines, and application instructions. Physical demands may be considered legal/EEO? It's about ADA accommodations; could be considered legal boilerplate. Safer to remove.
- "A Little More About Ai2:" is about company culture; could be considered About the role? Might be extra but could be included under About the role as extra info. However it's somewhat promotional; but it's substantive info about the company. We could include under About the role.
- Also note about grant period ending Sep 22 2029, continuation depends on funding. That's substantive about role duration; could be under About the role or Responsibilities.
- Also note about three-year term, potential longer-term funding.
- Also note about working from offices in Seattle, on-site requirements vary.
- Also note about "You'll get to work on:" list (Adapting training pipeline..., Documenting..., Implementing..., Open-source code..., Develop and present tutorials...). That's responsibilities.
- Also note about "Who We Are:" description of team; could be About the role.
We need to preserve all substantive info, not invent or summarize away detail. So we need to include details like salary range, bonus plans, location, project description, responsibilities list, requirements list, bonus qualifications, benefits details.
We must not include boilerplate like EEO, E-Verify, etc.
We must not include duplicated lines.
We must not include application instructions (like "please ask your recruiter" maybe okay as it's part of location? It's a sentence about asking recruiter; could be considered application instruction? It's not exactly instruction to apply; it's about asking about on-site work. Might be okay to keep.
We must not include "Physical Demands and Work Environment" etc.
We must not include "Note: This job description in no way states..." etc.
We must not include "All duties and responsibilities are essential functions..." etc.
We must not include "To perform this job successfully..." etc.
We must not include "Some requirements may exclude individuals..." etc.
We must not include "The requirements listed in this document are the minimum levels..." etc.
We must not include "This document does not create an employment contract..." etc.
We must not include "We are friendly– chances are you will like every one of the 200+ (and growing) people who work here." That's promotional but maybe okay under About the role? It's about company culture; could be considered substantive. However it's somewhat fluff but still info about company. Might be okay.
We need to output only HTML fragment, no markdown fences.
We'll structure:
for sections like About the role, Responsibilities, Requirements, Qualifications, Skills, Benefits, Pay, Schedule. Only include sections that have real specific content. Must not repeat job title as heading. No Job ID etc. Remove boilerplate, navigation, legal, EEO, etc. Must preserve all substantive info.
We need to parse the posting.
Key content:
- Persons in these roles are expected to work from our offices in Seattle. On-site requirements vary based on position and team. If you have questions about on-site work arrangements for this role, please ask your recruiter. (This is about location/on-site; could be part of "About the role" or maybe "Schedule"? Not exactly schedule. Could be "Work Location". But we only have allowed headings: About the role, Responsibilities, Requirements, Qualifications, Skills, Benefits, Pay, Schedule. So we can put location info under About the role.
- Our base salary range is $146,880 - $220,320 and in addition we have generous bonus plans to provide a competitive compensation package. => Pay section.
- Who You Are: ... description of role: Research Engineer for a new three-year project to develop an AI-powered physics-informed hybrid climate model... etc. This is about the role/responsibilities? Could be "About the role" or "Responsibilities". The "Who You Are" seems like description of the role and what they seek. Could be "About the role". Then later "Your Next Challenge:" details responsibilities. So we can split: About the role: brief description of role and mission. Responsibilities: list of tasks (Your Next Challenge bullet points). Requirements: "What You’ll Need:" list. Qualifications: maybe "It's A Bonus If You:" could be considered Qualifications or Skills? Could treat as "Qualifications" for required, and "Skills" for bonus? But we have both Requirements and Qualifications headings allowed. The instructions: use headings for section headings (e.g. About the role, Responsibilities, Requirements, Qualifications, Skills, Benefits, Pay, Schedule). So we can have both Requirements and Qualifications. Typically Requirements are mandatory, Qualifications are preferred. So we can map: Requirements = "What You’ll Need:" (mandatory). Qualifications = "It's A Bonus If You:" (preferred). Skills could be maybe separate but we can omit if not distinct.
- Benefits: section present with details.
- Schedule: not explicitly given; there is mention of on-site requirements vary, but no schedule like full-time, part-time, hours. So we should not create Schedule section if no specific content. Avoid filler.
- Also there is "Physical Demands and Work Environment" etc. That's boilerplate? It's about ADA etc. Might be considered boilerplate; we should remove cookie/navigation/legal/EEO/equal-opportunity/scam-warning boilerplate. Physical demands maybe not boilerplate but could be considered part of requirements? However it's generic ADA statement; likely to be removed as boilerplate. The instruction: remove cookie/navigation/legal/EEO/equal-opportunity/scam-warning boilerplate, duplicated lines, and application instructions. Physical demands may be considered legal/EEO? It's about ADA accommodations; could be considered legal boilerplate. Safer to remove.
- "A Little More About Ai2:" is about company culture; could be considered About the role? Might be extra but could be included under About the role as extra info. However it's somewhat promotional; but it's substantive info about the company. We could include under About the role.
- Also note about grant period ending Sep 22 2029, continuation depends on funding. That's substantive about role duration; could be under About the role or Responsibilities.
- Also note about three-year term, potential longer-term funding.
- Also note about working from offices in Seattle, on-site requirements vary.
- Also note about "You'll get to work on:" list (Adapting training pipeline..., Documenting..., Implementing..., Open-source code..., Develop and present tutorials...). That's responsibilities.
- Also note about "Who We Are:" description of team; could be About the role.
We need to preserve all substantive info, not invent or summarize away detail. So we need to include details like salary range, bonus plans, location, project description, responsibilities list, requirements list, bonus qualifications, benefits details.
We must not include boilerplate like EEO, E-Verify, etc.
We must not include duplicated lines.
We must not include application instructions (like "please ask your recruiter" maybe okay as it's part of location? It's a sentence about asking recruiter; could be considered application instruction? It's not exactly instruction to apply; it's about asking about on-site work. Might be okay to keep.
We must not include "Physical Demands and Work Environment" etc.
We must not include "Note: This job description in no way states..." etc.
We must not include "All duties and responsibilities are essential functions..." etc.
We must not include "To perform this job successfully..." etc.
We must not include "Some requirements may exclude individuals..." etc.
We must not include "The requirements listed in this document are the minimum levels..." etc.
We must not include "This document does not create an employment contract..." etc.
We must not include "We are friendly– chances are you will like every one of the 200+ (and growing) people who work here." That's promotional but maybe okay under About the role? It's about company culture; could be considered substantive. However it's somewhat fluff but still info about company. Might be okay.
We need to output only HTML fragment, no markdown fences.
We'll structure:
About the role
... paragraphs combining location, project description, funding, term, team description, company info.
Responsibilities
- ... each bullet from "You'll get to work on:" plus maybe other responsibilities from "Your Next Challenge:" paragraphs (like coupling to ML ocean model, designing approaches to improve skill, etc.) We need to capture all responsibilities. Let's extract responsibilities from text: From "Your Next Challenge:" paragraph: It describes the problem and goal. Not a direct duty but context. Then bullet list after "You'll get to work on:": - Adapting the training pipeline and data needs of NeuralGCM to run efficiently on Google Cloud resources and on NVIDIA GPUs. Note that NeuralGCM is written in JAX and implemented on TPUs. - Documenting this training pipeline and distributing code on a GitHub repo. - Implementing and testing a strategy for coupling NeuralGCM with the chosen ML ocean model. - Open-source code development as part of a tightly connected team, including daily meetings, code review, design documents and external collaborators. - Develop and present tutorials on NeuralGCM+ to interested user groups. Also earlier: "This includes coupling it to an ML-based ocean model and designing approaches to demonstrably improve its skill in unseen climates." That's also a responsibility. Also: "You will join a small team to develop the desired NeuralGCM+ model and foster its uptake by the climate modeling community." That's responsibility. Also: "Our starting point is the Google Research NeuralGCM model..." not duty. Also: "We are starting a 3-year project funded by google.org to develop an open source ‘AI-first’ climate model..." context. Thus responsibilities list should include: - Join a small team to develop the NeuralGCM+ model and foster its uptake by the climate modeling community. - Couple the model to an ML-based ocean model. - Design approaches to demonstrably improve its skill in unseen climates. - Adapt the training pipeline and data needs of NeuralGCM to run efficiently on Google Cloud resources and on NVIDIA GPUs (note JAX/TPU). - Document this training pipeline and distribute code on a GitHub repo. - Implement and test a strategy for coupling NeuralGCM with the chosen ML ocean model. - Engage in open-source code development as part of a tightly connected team, including daily meetings, code review, design documents, and external collaborators. - Develop and present tutorials on NeuralGCM+ to interested user groups. We could combine some. Now Requirements (mandatory) from "What You’ll Need:": - 2-4 years of experience building and deploying a relevant ML application in a practical or academic research setting and be fluent in Python and collaborative coding practices. - A B.Sc. in computer or computational science, atmospheric science or a related geophysical science, or applied mathematics/statistics. - Experience in developing ML training code for use in a cloud computing environment. - Demonstrated excellent communications skills. We could also include "Must be able to remain in a stationary position for long periods of time." etc but that's physical demands boilerplate; we remove. Qualifications (preferred) from "It's A Bonus If You:": - Have a Ph.D. in computer or computational science, atmospheric science or a related geophysical science, or applied mathematics/statistics, with at least one peer-reviewed first-authored publication or accepted conference paper making extensive use of ML in a physical science setting. - Have formal training and/or practical experience with physically-based atmospheric, oceanic, or related model development. - Have experience writing machine learning code in JAX. Also maybe "Have experience writing machine learning code in JAX." is separate. Now Benefits: from Benefits paragraph: - Team members and their families are covered by medical, dental, vision, and an employee assistance program. - Team members are able to enroll in our health savings account plan, our healthcare reimbursement arrangement plan, and our health care and dependent care flexible spending account plans. - Team members are able to enroll in our company’s 401k plan. - Team members will receive $125 per month to assist with commuting or internet expenses and will also receive $200 per month for fitness and wellbeing expenses. - Team members will also receive up to ten sick days per year, up to seven personal days per year, up to 20 vacation days per year and twelve paid holidays throughout the calendar year. - Team members will be able to receive annual bonuses and can participate in the long-term incentive plan. We could list as bullet list. Pay: base salary range $146,880 - $220,320 and generous bonus plans. Schedule: not present; we omit. Now About the role content: need to include location (Seattle office, on-site varies), project description (three-year project to develop AI-powered physics-informed hybrid climate model, funded by google.org, goal to develop open-source AI-first climate model more accurate than current physically-based models, etc.), funding period (grant with current period of performance ending September 22, 2029; continuation depends on renewal/extension/additional funding; Ai2 will make reasonable efforts to notify employee if funding expected to end), team description (Ai2’s Climate Modeling team is international pioneer using ML to improve physics-based climate models; fast, accurate autoregressive open-source emulator ACE; coupled ACE to ML ocean model; trained to account for changing CO2; downscaled ACE outputs; tight-knit team of scientists and software engineers works with leading physics-based climate modeling centers; collaborates with other leading research groups), company info (Ai2 is Seattle based non-profit AI research institute founded 2014 by Paul Allen; mission; highlights: learning organization, weekly Ai2 Academy lectures, value diversity, inclusion, healthy work/life balance, generous paid vacation/sick/family leave, collaborative and transparent, office on water, mountains, lakes, four seasons, bike to work, vibrant theater scene, kayaks, welcome international applicants, friendly, 200+ people). Also note about equal opportunity? That's EEO; we should remove. We must not include boilerplate like "We are proud to be an Equal Opportunity employer." etc. So we exclude that. Also remove "We do not discriminate based upon..." etc. Also remove "You may view the related Know Your Rights compliance poster..." etc. Also remove "This employer participates in E-Verify..." etc. Also remove "We are committed to providing reasonable accommodations..." etc (though that's AD