Research Engineer


As a research engineer at Ought, you design and implement flexible architectures that help us explore how to automate human reasoning.

You work with researchers at Ought and collaborating institutions to turn high-level project descriptions into precise specs and implementations. For example, you might read and give feedback on high-level documents like this one and this one, talk to the researchers who wrote them, and create implementations like this one.

Your work is aimed at developing robust foundations for automating explicit human-like reasoning. To visualize what this position is like, a good analogy is "writing a compiler," or "inventing the right building blocks and abstractions for writing compilers," not "doing data science".

You may be a good fit for this role if you know and love at least a couple of the following things:

You’ll join as our first full-time engineer. As we add staff, you may grow into a leadership role, or continue to develop as an individual contributor.

About you


  • You have deep knowledge of computation
  • You have practical experience writing clean, maintainable code and devising intuitive architectures
  • You have suffered the consequences of choosing bad abstractions and learned from your mistakes
  • You know how to use Git and how to do code reviews
  • You communicate clearly about research and engineering topics
  • You’re excited to join a new research organization which currently has just a few employees, and to play a key role in its development
  • You’re motivated by the long-term impacts of AI, and believe that Ought’s research program is promising from that angle
  • People enjoy working with you

Good to have:

  • Knowledge of artificial intelligence, machine learning, and probabilistic graphical models
  • Basic understanding of web development (helpful for collaborating with web dev colleagues)
  • Research experience and academic publications
  • Interest in and experience with mentoring fellow engineers
  • Experience managing research
  • Experience managing people
  • Experience thinking about organizational strategy, and interest in helping Ought think about strategy
  • Interest in stepping outside of your job description to help Ought improve as an organization


  • Health, dental, vision, and life insurance
  • 20 days of paid vacation per year (in addition to national holidays)
  • Modern workspaces, with funds available for equipment of your choice
  • Relocation assistance
  • Flexible hours
  • Paid travel to conferences


  • Take into account that we're a new organization. You will have unusually large leverage and room for growth, including the potential to manage other employees and contractors in the future, but you'll also need more initiative than at an established company and you'll wear many hats.
  • We strongly prefer applicants who can work on site, but will consider remote work for exceptional candidates, including internationally.
  • We're a mission-driven non-profit. The position is best suited for someone who deeply cares about our mission.
  • Salaries are competitive. We generally pay Bay Area market rate based on comparable positions at other organizations, including for-profit companies.
  • Not sure which position to apply for? Just pick one for now, add a note on alternatives you're considering, and we'll discuss.

EEO & 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.

About Ought

Ought is a non-profit research organization. Our mission is to leverage machine learning to help people think. Our office is in San Francisco (North Beach), next to Washington Square park.


If you prefer to mostly work on web applications, both front-end and back-end, and want to lead user interface development at Ought, consider this position.
If you're good at the sort of semi-technical, semi-philosophical thinking required to come up with new schemes and algorithms for automating deliberation and want to spend relatively less time coding and relatively more time writing, consider this position.