I’m Jonathan, a recent Computer Engineering BASc graduate from the University of Waterloo. I will be starting work on a MASc in September, working with Dr. Vijay Ganesh, studying the application of machine learning to SAT solvers.

What I do:

I love learning and enjoy working on interesting challenges in many different fields. The projects I’ve worked on include games, simulations, and API development. I’m especially interested in the fields of computer graphics and automated reasoning.

In the past, I’ve worked at:

  • University of Waterloo, researching the integration of the extended resolution proof system into CDCL SAT solvers and studying the structure of SAT instances. I co-authored a paper in this field: On the Hierarchical Community Structure of Practical SAT Formulas.

  • NVIDIA, developing and improving software tools for measuring and analyzing hardware performance. I identified performance bottlenecks and optimization opportunities, and parallelized computation and file I/O to reduce program execution time.

  • DarkVision Technologies Inc., working on features for their 3D ultrasound imaging tool and developing data visualization tools to expediate data analysis. I built custom graphing software for correlating datasets and worked on migrating existing tools to DirectX 12.

  • Behaviour Interactive, developing backend infrastructure to support new features for various games. I designed and implemented a rich presence system and worked on REST API endpoints.

  • Universe Projects, implementing features for their video game, Voidspace. I developed an item collection system and a quest system for synchronizing and displaying game objectives.

  • New York Theological Education Center, where I built and deployed a library system management application using MySQL and VBA.

In my free time, I also enjoy longboarding, bouldering, and playing video games.