I am currently a software engineer at NVIDIA, where I work on the RAPIDS team to develop GPU-accelerated tools for data science and machine learning. I primarily work on the cuDF library for high-performance data processing, but I have also contributed extensively to other parts of the RAPIDS stack, including cuML and cuGraph. I am an experienced Python, C, and C++ and CUDA developer, with additional experience working with a range of other programming languages, including Java, Rust, and Go. I also have extensive experience with build systems in various programming languages, with a special focus on CMake and various build backends for Python.
Prior to joining the RAPIDS team I completed my Ph.D. in Chemical Engineering and Scientific Computing in Sharon Glotzer's research group at the University of Michigan, where I worked on self-assembly problems in soft matter physics. The primary focus of my research was expanding the range of applicability of the highly coarse-grained models that have been used to successfully predict the behavior of colloidal systems over the past decade. My research has been featured in numerous journals, including Nature Chemistry, Computer Physics Communications, and the Journal of Molecular Modeling.
As part of my research, I became extensively involved with the development of open-source scientific software. I was a lead developer for both the data and workflow management framework signac and the particle simulation analysis package freud. I created the rowan package for quaternion mathematics as well as the coxeter package for geometric calculations, particularly those involving polytopes in two and three dimensions. In addition to these efforts that I led, I was also a core developer for the high-performance particle simulation engine HOOMD-blue, one of NVIDIA's official HPC benchmarks that scales from single CPUs to leadership-class GPU supercomputers.