Skip to main content

About Me

I received my undergraduate degree from Carnegie Mellon University, double-majoring in Computer Science and Robotics, in May of 2015.

I'm currently working at CACI, formerly LGS Innovations, and having a blast there. I am a software engineer, and work on a wide variety of problems, making novel applications and improving the performance and features of applications that are used by customers.

In my free time I enjoy programming side projects, reading, playing games (including video games, boardgames, and card games), and tossing a ball with my dogs. I also thoroughly enjoy hiking and the outdoors; nothing can compare to fresh air and natural surroundings. I often cook and bake (lots of sourdough), both for fun and to feed myself! I have a garden that's become well-established and, while definitely taking lots of my time, rewards me with lots of fresh produce. I play a variety of sports (with varying levels of competence ☺), including soccer, tennis, ultimate frisbee, and others. I enjoy problem solving and logical deduction as well (which is part of the reason why I like programming so much!). I am a huge fan of classic rock, and an avid supporter of open source development.

I've been married to my best friend, Pamela, since 2018. You can freely replace most of the above "I"s with "We"s: both of us share many passions.

My resume can be found here.

Work History

In the Summer of 2014 I interned at LGS Innovations as a software researcher and developer, and did a number of interesting and exciting projects. I created a graphical UI component for displaying large datasets in realtime as tiled images, and also created the backend program to generate these tiled images. I also adapted a bootloader project for an AVR MCU and customized it for the application required. Finally, I interfaced a number of unique radios to the GNURadio software radio suite.

In the Summer of 2013 I interned at iCIMS as a software developer, and had a lot of fun learning C# and making an internal web application which would schedule and execute database queries across hundreds of databases, and aggregate the results for the user. I also worked on some machine learning algorithms to build a classification engine to find likely candidates for certain jobs.

For three years, ending in the Summer of 2012, I worked at Storming Robots, where I taught programming and robotics to children grades 3-12. We used LEGO robotics kits as well as Arduinos, and programmed in LabView for younger children, and C (using RobotC for the LEGO's and the Arduino Processing IDE for the Arduinos).