Software Engineer | Probabilistic Programming

San Francisco, California

About Ought

Ought is a research lab building tools for delegating cognitive work to advanced machine learning (ML) systems. Our mission is to apply advances in ML to problems that require open-ended qualitative reasoning.

We’re currently building tools that help forecast world events by integrating human judgment with model-based reasoning. We’re tackling questions like:

  • Will SpaceX land people on Mars prior to 2030?
  • When will the Turing Test be passed?
  • Will the United States experience at least one quarter of negative real GDP growth in 2020?
  • Will Kim Jong-Un be Supreme Leader of North Korea on Dec. 31?

About the role

The best forecasts depend both on qualitative reasoning ("How does the UK government think about lockdown release?") and quantitative reasoning ("How many global confirmed cases of COVID-19 do epidemiological models project for 2020?"). To integrate these types of reasoning, we're building Ergo. Ergo is a Python library that integrates state-of-the-art probabilistic programming languages with crowd prediction platforms.

As a probabilistic programming engineer at Ought, you will ensure that Ergo users can:

  • Programmatically interface with crowd forecasting platforms like PredictIt, Metaculus, Good Judgment Open, and Augur
  • Ensemble multiple approaches to predicting a question
  • Decompose questions into subquestions
  • Apply principled approaches for combining crowd knowledge with models
  • Share models with other users
  • Build applications for non-programmers on top of Ergo

About you

Forecasting will be much better with better infrastructure. To help us get there, we expect you’ll need:

  • A strong software engineering background. We want to apply your experience building systems, designing architecture, and thinking about good abstractions. Ought will need you to do much more than write scripts.
  • Probabilistic modeling experience. You’ll hit the ground running if you have experience with probabilistic programming languages like Pyro, PyMC, WebPPL, Stan, or BLOG. These are still niche, so we're happy to consider related experiences too.
  • Familiarity with the Python data science ecosystem. Numpy, Jupyter, Pandas. Ideally PyTorch and Jax.
  • A startup mindset. We expect to measure our impact in part by the people whose lives we improve through reasoning and models of the future. We know you care about that too. You’ll want to test lots of ideas, get feedback, and watch yourself learning and growing every day.

EEO and Employment Eligibility

Ought is an equal opportunity employer. All applicants will be considered for employment without attention to race, color, religion, sex, sexual orientation, gender identity, national origin, veteran status, disability status, or any other status protected by federal, state, or local laws.

Get weekly notifications when new jobs are posted