He received his Ph.D. in 2016 in Electrical Engineering from Stanford University working with Dr. Krishna Shenoy, where he developed algorithms for brain-machine interfaces. He continued his post-doctoral research in the same lab, using statistical and machine learning techniques to analyze the dynamics of neural populations. His lab is interested in computational techniques to elucidate computational mechanisms in neural populations as well as designing algorithms for neural prostheses.