Resume

PhD, software engineering, and everything in between

Career Summary

I'm a software engineer with a PhD in distributed systems, spending equal time shipping backend infrastructure and explaining consensus algorithms — and sourdough fermentation — to an audience on YouTube. I care about taking complex ideas, whether in a codebase or a mixing bowl, and making them legible enough to teach.

Professional headshot

Work Experience

Senior Software Engineer

Northwind Data Systems - Remote

2022-03-01 - Present

Lead backend engineer for a distributed data-processing platform, focused on reliability and developer tooling.

Design and maintain services that process millions of events per day. Built internal tooling that cut onboarding time for new engineers from two weeks to two days, and mentor junior engineers on system design.

Postdoctoral Researcher

University of Washington, Dept. of Computer Science - Seattle, WA

2019-09-01 - 2022-02-01

Researched fault-tolerant algorithms for distributed systems, publishing in top-tier systems conferences.

Published five peer-reviewed papers on consensus protocols and fault tolerance. Advised two graduate students and taught an advanced systems course.

Education

University of Washington

Ph.D. in Computer Science, specializing in distributed systems

Dissertation on fault-tolerant consensus protocols for wide-area networks. Published in OSDI and SOSP.

Carnegie Mellon University

B.S. in Computer Science, minor in Chemistry

The chemistry minor turned out to be surprisingly useful for understanding why bread dough behaves the way it does.