Languages / Frameworks
Day to Day
- Python • Flask
- React • Vue • HTML • CSS
- SQL • Postgres
- Scala • Akka • Java • Spring
- Neo4j • Apache Spark • Cassandra
- Rust • Clojure • Haskell
- EC2 • ECS
- VPC • ALB • Route 53
- Lambda • Kinesis
- IAM • Cognito
- Cloudformation • Terraform • CDK
- Git • GitHub • GitLab
- nginx • Apache Tomcat
- Event Sourcing and CQRS
- Domain Driven Design
- Specification writing
- User acceptance testing
- Go-live and production support
Lead Software Engineer - Platforms Data & Architecture
December 2020 - Present
I loved Chariot Solutions more than any employer I'd had before, and it wasn't close. But Capital One provided an opportunity that was just too exciting to turn down. I just started, so more on that later. For now, I'd just like to say thank you to everyone at Chariot for the amazing experience I had working there.
May 2017 - December 2020
I'm a consultant at Chariot. We build software products with small teams of highly capable engineers, or integrate into existing teams to help them get things done.
I love it here for many reasons. Mainly the people. That includes my fellow Charioteers as well as the various engineering organizations I've gotten to work with. The most rewarding part of this job is the opportunity it provides me to learn rapidly. I enjoy having a deeply technical role that still includes interacting with people regularly, and that's exactly what I have at Chariot.
Here are some of the things I've worked on:
A DATA MANAGEMENT PLATFORM FOR NEUROSCIENCE RESEARCHERS
December 2019 - June 2020
I joined an incredibly talented team at a local startup. Their product facilitates the creation and publication of massive scientific datasets. I was given the opportunity to contribute across the entirety of their stack, which included the following:
- Web apps written in Vue, some of which used Nuxt to generate static sites.
- A Node service, written in Typescript, for streaming large zip archives to the web clients.
- A core REST API, written in Scala, backed by an RDS Postgres instance and files of various sizes written to S3.
- Another REST API for managing graph data structures, written in Python, backed by a Neo4j database.
- An nginx API gateway.
- Lots of AWS infrastructure provisioned via Terraform. Most services run in ECS containers, but other work involved a mix of S3, CloudWatch Logs, Kinesis Firehose, and Lambda.
USING IOT ENABLED OUTLETS TO MANAGE INDUSTRIAL PLUG LOAD
June 2019 - November 2019
I lead a project to build a web application and backing REST API for another local startup. Our client had built an impressive machine learning pipeline leveraging IOT data from smart outlets. They offered clients who operate large industrial or office buildings a way to reduce energy costs associated with devices plugged into outlets.
What they needed was an application that allowed users to monitor and manage that system. The features we built included a variety of data visualizations, interactive data grids, and basic CRUD operations. We used the following technologies to get the job done:
- A Node REST service written in Typescript, backed by a Postgres RDS database.
- A web app written in React, with Typescript.
- A separate library of React components encapsulating a custom design system.
- User authentication with Cognito
- Run in ECS, deployed via CodeBuild, and provisioned with Cloudformation
A BANKING SYSTEM TO MANAGE THE PROCESSING OF WIRE TRANSFERS
May 2017 - May 2019
I joined a small team developing a wire transfer application serving small and medium sized financial institutions. The business requirements included providing a detailed audit trail of all actions taken, by whom, and when. Additionally, the system needed to support highly customizable workflows driven by the various financial processes in which wire transfers are involved.
We addressed those requirements by building with the following stack:
- A web app written in React
- Multiple microservices written in Scala and Akka HTTP, using a CQRS and Event Sourcing architectural pattern. Events were written to Cassandra, with projections written to Postgres.
- User authentication with Keycloak
- An nginx API gateway
Senior Software Engineer
Aug. 2015 - May 2017
I was a senior developer on an enterprise Court Management System (CMS). The software serves courts in the U.S. and abroad, streamlining processes such as document management, courtroom scheduling, financial accounting, and much more.
As a member of the accounting team, I helped implement a configurable financial system to support various processes including fee calculation, payment processing, and general ledger accounting.
Senior Application Consultant
Dec. 2011 - Aug. 2015
I implemented highly configurable SAP products in the logistics space. I focused on two products; Transportation Management (TM) and Extended Warehouse Management (EWM). This job was technical in nature, but didn't overtly require programming skills. I spent much of my time understanding whether complex business requirements could be solved via configuration alone, or required more technical enhancements.
After some time, I had spent enough time debugging the software to be able to develop those enhancements on my own. I really enjoyed the work for a period of time. I love the logistics space, so although I wanted to spend more of my days writing code, I was happy with a more hands-on role that involved walking the warehouse floor.
Eventually, a desire to travel less and code more meant I had to move on.
Supply Chain Analyst
Aug. 2009 - Nov. 2011
As a supply chain major coming out of undergraduate school, this was a great job. A lot of things I did revolved around spreadsheets, and involved interacting on a production floor. I fell in love with coding via the Microsoft Office Suite (Excel, VBA, and Access).
Little did I know, a decade later Microsoft would be popular for different things and I would be a Typescript fanboy.
M.S. Computer Science
Fall 2013 - Spring 2017
After too many years of dabbling, I committed to a technical career by pursuing a technical education.
The final few quarters of my degree were spent with a research group studying graph databases, specifically the exploration of graph data structures as they evolve over time. I worked with a brilliant Ph.D student named Vera Zaychik Moffitt. We have all moved on since then. If you d like to know more about the work, the website (which I built, don't judge) still exists here.
B.S. Supply Chain Info. Systems
Fall 2005 - Spring 2009
I studied Supply Chain Information Systems, and minored in Spanish and International Business. SCIS was a degree from Penn State's business college. It was like a business degree combined with an industrial engineering degree, with less physics and more accounting.