The Institute for Health Metrics and Evaluation (IHME) is an independent research center at the University of Washington focused on expanding the quantitative evidence base for health. A core research area for IHME is the Global Burden of Diseases, Injuries, and Risk Factors (GBD) enterprise. A systematic, scientific effort to quantify the comparative magnitude of health loss due to diseases, injuries, and risk factors by age, sex, and geography over time, GBD is the largest and most comprehensive effort to date to measure epidemiological levels and trends worldwide. The GBD estimates require data pipelines and analytic tools capable of processing petabytes of data in a high-performance computing environment composed of over 20,000 cores.
IHME has an exciting opportunity for a Software Engineer to join the Data Science and Engineering team. We are looking for someone to build and improve the efficiency, operability, and performance of complex analytic code as the enterprise continues to grow in both size and scale. Members of the Engineering team currently code in Python but must read legacy code in statistical languages such as R or Stata and interact with data stored in SQL databases. A successful candidate will be passionate about big data technology, experienced in the full software development lifecycle, and committed to being a key contributor to an autonomous and agile development team in pursuit of solving interesting problems to turn raw data into global impact.
- Create and implement software solutions to turn experimental research methods into high-performance, production-ready code.
- Redesign and refactor existing code to improve efficiency, operability, and performance while maintaining high-quality and reproducible results.
- Optimize code efficiency and parallelize across a massive computing cluster to enable researchers to quickly produce results.
- Enforce and assure the quality of GBD software products through the use of continuous integration, automated unit testing, code versioning, and code coverage tools.
- Work with researchers, supervisors, and colleagues to develop plans for software to better support research needs.
- Assess analytic tools, indicators, and desired results against available infrastructure and devise plans to improve the performance of components.
- Contribute to software specification process and present to users for feedback.
- Determine appropriate tools to use, including languages, frameworks, data structures, etc.
- Help to develop and follow a system of APIs to enable greater efficiency
- Assess databases that house the relevant data and determine how best to use them.
- Provide input to timelines to deliver both iterative milestones and completed products.
- Become familiar with the different components of the analytic process and their purpose.
- Communicate clearly and effectively while contributing as a productive member of the forecasting team and the Institute as a whole. Work closely with other team members at varying levels to help them with relevant tasks, teach them new skills, and help resolve emerging problems on different projects.
- Attend relevant meetings, adhere to deadlines, and participate as a vital member to collectively advance team-level objectives.
- Participate in the overall community of the Institute, carrying out duties as required as team members with other Institute members.
Bachelor’s degree in computer science, mathematics, engineering, statistics, or related field plus three years’ related experience, or equivalent combination of education and experience.
- Demonstrated expertise in developing code in Python, Java, or other language.
- Experience in scientific software packages such as scipy, pandas, and numpy, or expressed interest in learning them.
- Experience deploying software to Linux servers.
- Strong sense of focus and attention to detail.
- Ability to plan and organize technical projects.
- Demonstrated organizational skills, self-motivation, flexibility, strong communication skills, and the ability to thrive in a fast-paced, energetic, highly creative, entrepreneurial environment.
- Linux systems experience
- Experience with application containerization using Docker, Rancher
- Statistics and/or public health interest
- Experience with SQL databases
- Automation experience and/or a desire to automate all the things
Conditions of Employment: Evening and weekend work may be required.