Chris's Résumé



grayed out items are ones I'm less familiar with



My current "full time" job. GivingTools is a web service that makes it easy for non-profits to accept donations, track, and report them. Uses Angular 5 for the front-end, communicates over a RESTful API to the Grails 3 backend. Customers can integrate various payment processors (BluePay, Stripe, PayPal) to their account to process one-time and recurring payments. Customers can link donors to a GivingTools "giving page" or embed a customized form on their webiste. Also uses Docker, ZFS, MariaDB, Redis, and others. I also handle customer support sometimes.


Worked with a group of ~5 people to reverse engineer the Das Keyboard 5Q. Used Wireshark to figure out the USB protocol and wrote several Node-based libraries and apps to talk to the keyboard.

Mail Bucket

A simple tool that acts as a web-enabled mail server. Mail delivered to this server will be available for querying via the web API. Makes it super easy to test mail delivery in a web application. Uses Grails 3 and Docker.


Another simple tool that allows you to unit test your checkout system. Not as simple as Mail Bucket, but acts as a generic payment processor you can integrate with. Uses Grails 3 and Docker.

Private PM

A tool that allows you to encrypt messages, but only allow decryption for a period of time. Uses Angular 6, Angular Universal, Node.js, Redis, and Docker.

Project Asiago

An operating system, standard library, and programming language written in C++. (still a heavy WIP and being rewritten in Rust)

A website I created to host the programs I sell. Written using Grails, Bootstrap, and AngularJS 1.4. This along with several other systems are all hosted on Docker. Currently offline as I've been busy with other projects.

Derby Pro

Pinewood derby management software. Written in Java using JavaFX as the GUI library. It requires authentication and self-updates through the Neon Orb website.

Other Projects

Also, checkout my GitHub and Stack Overflow accounts.

These are some of the smaller projects I've worked on: