I grew up in Indiana and Illinois before going on to major in computer science at Notre Dame. After college, I moved to Chicago and worked for a few years as a developer at Clarity Consulting, a medium-sized software consulting firm focused on custom application development. Later, I decided to shift to a more research-based career, and I am now studying programming languages and working towards my Ph.D. here at Northeastern.
Having come from a development background, my research interests lie in making software development easier by improving programming languages and the ecosystems surrounding them. Currently, I am researching ways to prevent concurrency-related bugs and enable type-system-like modular reasoning in actor-based programming languages by checking that components implement programmer-specified protocols.