Education

University of Virginia

Master’s in Computer Science

2017 - 2018

BA in Math and Computer Science

2013 - 2017


Work Experience

Lightbulb Machine, Inc.

Senior Software Engineer

2018 - Present

First full-time engineering hire.

Lightbulb Machine is a startup with a core team of five and three portfolio companies:

At Lightbulb, I experienced the full lifecycle of software products, from the early stages of specification, design, and planning to the later, ongoing stages of development, documentation, and maintenance.

Technologies: Meteor, Java, Bash, Python, Node, Google Sheets + Scripts. AWS, SageMaker, Fargate, Docker, Terraform.

Some internal projects: model building, creating an API, designing autoscaling rules, and improving network security with egress whitelisting.

Other responsibilities were coordination between the biz and dev teams, coordination of code testing and release, demos, data maintenance, and diagnosing general technical problems.


Fowler’s Physics Applets

Software Developer

2015 - 2018

Over the past 20 years, Professor Fowler of the UVA physics department has published many of his course notes and teaching materials online. Among these materials are animations that help demonstrate fundamental concepts.

I converted existing Flashlets into JavaScript applets. I also helped develop new ideas, such as a viscous flow demonstration using event-driven particle collisions.


Teaching Assistant at UVA

2016 - 2018

I held office hours, proctored labs, graded exams and helped write them.


theCourseForum

Software Engineer

2015 - 2016

Created in 2005 and run by students, theCourseForum is a review site for classes at UVA. The site also provides grade distributions which we obtain through FOIA requests. With around 15,000 new users per year, theCourseForum serves the undergraduate body at UVA, helping them find and choose classes.

During my time at theCourseForum, we released a new redesign of the site built with Ruby on Rails. My role was mainly on the backend side where I helped migrate to an ORM, found and eliminated n+1 queries, and wrote scrapers to retrieve textbook information. I also suggested the addition of our about page and the professor page.


Projects

Remove Youtube’s Suggestions

Creator

2018 - Present

A browser extension that removes suggested videos from Youtube.

Created in an attempt to stymie the “YouTube rabbit hole.”

Stats: 20k downloads, 2.5k Daily Users on Firefox, 50 GitHub Stars.


Class Projects

During grad school, I had a number of semester long projects. Below are three examples.

Realtime Traffic Sign Recognition

2017

Using YOLO9000 and the LISA dataset, our team of four trained a neural network on Google Cloud to recognize traffic signs in real-time. My main contributions to this project were setting up the cloud environment and augmenting the dataset. I duplicated and darkened the original images (18k of them) in order to make our training data more robust to nighttime conditions.

High Performance Computing (HPC) Comparison: AWS vs. Rivanna

2018

In this project, my group of three compared the Amazon’s cloud HPC with UVA’s local HPC system: Rivanna. Though the two systems are not directly comparable because of AWS’s many possible configurations, I decided to compare inter-node latencies using the MPI framework because it is a simple test, and inter-node latency has a big impact on the performance of HPC jobs. I wrote the code for the test, and created the graphics showing latencies as a pixel map.

Puzzle Solver

2017

I wrote an app that solves Pentomino puzzles. Each puzzle can be reduced to an Exact cover problem which is np-complete. Np-complete problems generally take a long time to solve, however solutions to small puzzles can be found in a reasonable amount of time. For this project, I ultimately implemented Knuth’s algorithm X in C which found solutions several orders of magnitude faster than my initial, na├»ve methods.