Theorem - Senior Software Engineer

San Francisco



Theorem ( is a company at the intersection of technology and finance.  

We combine quantitative research, software engineering and rigorous scientific investigation to build credit portfolios that produce strong and consistent yields across business cycles.  

We are a small team of fewer than 20 with a diversity of ideas and backgrounds applying machine learning, software engineering and rigorous scientific investigation to revamp the lending and securitization space. Every member of the team has a major impact on the company's success, and gets to see their contributions working in the real world. Building good financial forecasting models is extremely challenging from both a technology and research point of view.

We were founded by a Google software engineer and a Morgan Stanley quant trader.  We are a Y Combinator graduate and a large number of our clients are non-profits and university endowments, whom we are proud to support. We are profitable and manage approximately $600mm dollars.

We are based in San Francisco, close to Caltrain and BART. We deeply value intellectual curiosity, creative idea generation, and close collaboration. We offer above market salary and profit-sharing, path to equity partnership and generous benefits including paternity and maternity leave policy.

What you bring to the table

    • Professional experience in designing systems, and with numerical or scientific computing.
    • We value correctness, maintainability, elegance, and testability of code. We want to do things the right way over just getting things “done.”  We’re strict about our code style and quality so that you don’t have to spend your time tracking down other peoples’ bugs.
    • Coding skill in Python, C++ or similar. We currently use Python, but welcome developers of any background, as long as you can pick up Python.  Experience with numpy/scipy/pandas is a big plus.
    • Experience with databases and dev ops preferred. Machine Learning experience is a big plus, but not required.
    • Experience in writing fast code (especially numerical code) is a big plus.   (No, we are not a high frequency trading shop.)
    • Experience doing research in any scientific field is a plus.

What you’ll do

    • You’ll develop and implement solutions for real world, large-scale machine learning/statistical problems.
    • You’ll build and maintain our best in class execution systems, data pipeline, backtester and model validation systems
    • We’re exploring ideas across multiple disciplines: computer science, statistics, biostatistics, survival analysis and epidemiology including supervised learning, natural language processing, imbalanced data and anomaly detection, time series, feature extraction and selection, and many, many other areas.