About
I simulate the physical world with computers and use those simulations to design and optimize useful things. My focus is differentiable simulation: writing physics solvers that compute not just what a given device does, but a map of how every design parameter affects it. You can use that map to optimize your hardware over millions of parameters, but also to analyze it, make it more robust, or improve your models of it.
I'm currently a Technical Fellow at Flexcompute Inc., building our multiphysics intelligence platform across AI infrastructure, platform architecture, and agentic simulation interfaces. I spend much of my time hands-on, putting AI agents in the loop with real physics solvers to see how far the two can go together. I'm drawn to the boundary where AI learns about and reasons over the physical world, both as a way to accelerate science and as a rich domain for fundamental AI research.
Before that, as Head of Photonics, I led the development of our electromagnetic simulation products. I was one of Flexcompute's first employees and spent years in the weeds building Tidy3D, our open-source framework for cloud-based, GPU-accelerated electromagnetic simulation: its data model, its Python client, and its look and feel. It grew from a moonshot prototype into an established product used widely across the industry. My deepest technical contribution was its automatic differentiation engine, which differentiates through a full 3D Maxwell's equations solve on a cloud GPU cluster and gets the whole gradient from one additional (adjoint) simulation. It works with autograd, JAX, and PyTorch.
Before Flexcompute, I completed my PhD in Applied Physics at Stanford, advised by Prof. Shanhui Fan. My PhD work established some deep connections between physics and computation: I showed that wave physics can perform computation like a recurrent neural network, proposed and experimentally demonstrated backpropagation implemented in light signals for training optical neural networks, developed mathematical methods for gradient-based design in photonics, and created several open source solvers and design packages for simulation.
I studied physics at the University of Michigan and now live in New York City. When I'm not building things I'm usually traveling, cooking, or running around Central Park.
Experience
- Research Scientist2019
- Principal Scientist2024
- Head of Photonics2025
- Technical Fellow2026
One of the first employees. Built Tidy3D's Python API, data model, product design, and automatic differentiation engine, taking it from prototype to a product used across the industry. As Head of Photonics, led the development of our electromagnetic simulation products. Now leading company-wide work on AI infrastructure, platform architecture, and moonshot research, including how customers and their AI agents connect to our solvers.
Photonic hardware for machine learning, electromagnetic inverse design, and laser-driven particle accelerators on a chip. Advisor: Shanhui Fan.
Open-source conversational AI: natural language understanding.
Full-stack development of inventory management software.
Surface ion trapping for quantum information processing. Advisor: Manas Mukherjee.
Wafer reuse for low-cost, thin-film III–V photovoltaic devices. Advisor: Stephen Forrest.
Writing
AI agents with a simulator and a design rule checker design waveguide bends, crossings, splitters, and demultiplexers on their own. Where they excel, and where parametric search runs out.
Agents can fix design rule violations on a chip layout, but each fix costs tens of seconds and thousands of tokens. A small decision model picks fixes from a list and hands only its unsure cases to the large model, keeping nearly all of its quality at under half the cost and time.
Co-packaged optics puts photonic components next to the switch chip, so each must be designed for its surroundings. Adjoint optimization of every tooth in a dual-layer grating coupler lifts efficiency from 34% to 57%, and TSMC-measured couplers get 2.6× the bandwidth of a standard silicon coupler.
A short introduction to inverse design in Tidy3D. Ten iterations of adjoint optimization find a waveguide bend with ~89% transmission through a 90° corner.
Selected Publications





















Talks & patents
Open Source
Side projects
Things I build outside work.