Skills

Code
Code

Day to Day
  • Javascript • Typescript • Node • React
  • Java • Spring
  • Python • Flask
Previous Projects
  • Scala • Akka
  • Vue
Dabbled
  • Rust
  • Clojure
  • Haskell

Data
Data

Relational
  • Postgres
  • MySQL
  • Oracle DB
Non-Relational
  • Redis
  • DynamoDB
  • Cassandra
  • Neo4j
Analytics
  • Snowflake
  • Apache Spark

Infrastructure
Infrastructure

AWS
  • VPC • EC2 • ECS • ALB
  • Lambda
  • Route 53
  • IAM • Cognito
  • Cloudformation • Terraform • CDK
General
  • nginx • Apache Tomcat
  • Apache Kafka
  • Docker
  • Jenkins

Architecture
Architecture

Systems Design
  • Event Sourcing • CQRS
  • Domain Driven Design
  • Actor Systems
  • Message Brokers
  • REST
Process
  • Git
  • Agile/Scrum
  • Continuous Integration • Continuous Deployment
  • Test Driven Development
  • Behavior Driven Development

Experience

Capital One

Lead Software Engineer - Platforms Data & Architecture

Capital One
December 2020 - Present

I work within Capital One's retail banking line of business. We handle the tech that drives consumer products like checking and savings accounts, among others. My group is focused on developing an enterprise-scale solutions for maintaining product and customer information. Some work involves lifting and shifting legacy technology stacks onto modern, cloud native, micro-services based architectures. I can't give too many specifics, but here are some things I've worked on:

  • Synchronizing updates to customer data with Apache Kafka.
  • Creating a singular home for product definition, via services written in Node and Python.
  • Driving the adoption of enterprise CI/CD pipeline technology.
  • Replacing a legacy Angular application with React.
Chariot Solutions

Software Architect

Chariot Solutions
May 2017 - December 2020

Chariot builds software products with small teams of highly capable engineers, or integrates into existing teams to help them get things done.

I loved it there for many reasons. Mainly the people. That includes my fellow Charioteers as well as the various engineering organizations I got to work with. The most rewarding part of the job was the opportunity it provided me to learn rapidly. I enjoy having a deeply technical role that still includes interacting with people regularly, and that's exactly what I had at Chariot.

Here are some of the things I 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
Thomson Reuters

Senior Software Engineer

Thomson Reuters
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.

SAP

Senior Application Consultant

SAP
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.

Boeing

Supply Chain Analyst

Boeing
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.

Education

Drexel University

M.S. Computer Science

Drexel University
Fall 2013 - Spring 2017

GPA: 3.9

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.

Penn State University

B.S. Supply Chain Info. Systems

Penn State University
Fall 2005 - Spring 2009

GPA: 3.8

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.