I am a researcher at Princeton University applying a mixture of theory- and data-driven approaches to problems in neuroscience and behavior. I work in the Center for the Physics of Biological Function and the Princeton Neuroscience Institute.

My main interest is in biological solutions to rapidly processing complex streaming inputs, in particular how such inputs are stored in memory to modulate computational, learning, and behavioral processes. To address this I combine ideas and tools from a range of disciplines including coding theory, dynamical systems, statistical physics, and high-dimensional computing. I am also broadly interested in how macroscopic computations emerge from distributed, strongly connected microscopic processes.

I have been a teaching assistant for several theoretical neuroscience and related courses, including the Allen Institute’s Summer Workshop on the Dynamic Brain, the IBRO-Simons Computational Neuroscience Imbizo, and Coursera’s Computational Neuroscience course.

Check out some of the online tutorials I’ve made or my tips & tricks for improving your computational research experience.