Job Experience
Recurser January 2019 - March 2019
Recurse Center
Brooklyn, New York
Took a 3-month sabbatical during my time at Squarespace to pursue an independent study of the Rust Programming Language.
  • Built a plugin for Rust's build tooling to track transitive dependencies of your codebase that rely on unsafe code.
  • Built a multi-player game in the browser with the client written in Clojurescript and re-frame (Clojurescript's React.js bindings plus a state-management framework similar to Redux) with Rust on the backend using Actix to manage request-routing with actor-based concurrency.
  • Worked with others at the Recurse Center to establish a weekly mentorship check-in to help mentor others how to learn Rust.
Data Engineer August 2015 - Present
New York, New York
Engineering data pipelines and data warehousing for technical analysts and data scientists.
Uses Python, Postgres, SQLAlchemy, Spark, HDFS, AWS, Docker
  • Consolidated data from around the business for cohesive analysis.
  • Built a dataflow extraction pipeline, parsing datasets out of our legacy python pipelines and loading it into Neo4j to analyze the graph of dependencies between pipelines.
  • Migrated legacy pipelines written in an in-house framework based on cron to Apache Airflow by reusable Operator to minimize boilerplate between the legacy codebase and the new workflow system.
  • Built a generic pipeline for replicating snapshots of vendor datasets as type-2 dimensions, preserving versioned history for historical analysis with with SQLAlchemy's internal SQL compiler.
  • Wrote infrastructure to automatically scale up an internal interactive computing environment for analysts and data scientists to explore and process data in Jupyter, Apache Spark, and Kubernetes.
  • Wrote pytest fixtures to house components in Docker containers to facilitate automated testing of data transformations and pipelines under the same conditions they would operate under on production.
Data Science Engineer Summer 2013 - August 2015
Data Science & Engineering - Dow Jones
Minneapolis, Minnesota and New York, New York
Designed and maintained systems for collecting, storing, and processing large quantities of data for data science and analysis.
Uses Python, Scala, Apache Hadoop, AWS Elastic Compute Cloud, AWS Elastic Map Reduce
  • Ingested data from a menagerie of legacy systems for centralized analysis
  • Wrote a declarative system for ingesting data from spreadsheet-based reports through predicate coordinates. It was for getting data from non-technical departments that had reports which would often change formats, so it was necessary to build an ingestion system that would adapt to manually-crafted reports.
  • Developed numerous dashboards that displayed metrics from around the business, giving you a cohesive, consistent view where before you had to look for that data across several different departments.
  • Designed a new approach to getting machine learning models to production by rewriting them to leverage Google Big Query. By converting common transformations to raw SQL automatically with SQLAlchemy, a process that took several hours would often complete in minutes.
Junior Software Developer Fall 2011 - Summer 2013
FoundationIP - CPA Global, Minneapolis, Minnesota
Fully-featured webapp for managing intellectual property and coordinating between teams of Attorneys, Paralegals, Docketers and Laypeoples.
Uses Java, Struts2, Spring, Maven, Hibernate, Quartz, MS SQL Server
  • Implemented a toolset to feed the product's codebase from its numerous repositories to a central OpenGrok search engine.
  • Worked on a team of motivated developers fixing bugs, writing features, and refactoring legacy implementations into understandable, performant, new ones.
Student Computing Technical Staff Manager Fall 2010 - June 2011
Student Computing - Carleton College, Northfield, Minnesota
  • Organized and supervised a staff of 10 hardware repair and 5 networking staff.
  • Managed computer repair shop with an average 3 day turn-around.
  • Developed automated tools for repair staff to use latest anti-virus software.
  • Maintained two terabytes of personal student data backups.
Student Computing Hardware Repair Technician Fall 2009 - June 2011
Student Computing - Carleton College, Northfield, Minnesota
  • Repaired a variety of student computers with problems ranging from viruses to two-story falls.
Networking Assistant Fall 2009 - June 2011
Sysnet - Carleton College, Northfield, Minnesota
  • Assisted Carleton College system administrators in maintaining the campus-wide data infrastructure.
  • Everything from troubleshooting bad connections to climbing a rickety bookcase to hang a wireless hotspot.
Student Computing Summer Break Worker Summer 2010
Student Computing - Carleton College, Northfield, Minnesota
  • Repaired student and college-owned computers
  • Modified open-source LDAP authentication software for deployment on over 500 workstations
  • Rebuilt and fabricated custom cabling for a campus computer lab
Bachelor of Arts, Computer Science
Carleton College, Northfield, Minnesota, June 2011