Senior Software Engineer (Remote) at Guaranteed Rate
    2021/04 - Present
  
- Worked on pre-existing Clojure jvm services
  implementing new features and fixing bugs.
- Developed new Clojure(Script) projects to run on node.js Lambdas.
- Added new metrics for monitoring, alerting, and research.
- Implemented data (EDN) based DSL system for rule-execution
  used in both clj and cljs apps.
- Implemented CI tests for libraries and applications
  including application tests, service dependencies, and Jenkins pipelines.
- Developed terraform modules to create graphs and alerts for grafana dashboards.
- Deployed existing services to new environments.
Skills
    
  
    - 
      Clojure
    
- 
      ClojureScript
    
- 
      Terraform
    
Senior Software Engineer (Remote) at Instructure
    2016/09 - 2021/04
  Worked on 5 Clojure services:
- Implemented core functionality of java interop with closed source vendor library (not easy).
- Added set of shared query APIs (8 different views) with honeysql (super fun).
- Added data migrations to deployment process to implement query optimizations.
- Refactored test suite from unit tests to request specs to increase confidence in dependency upgrades.
- Added metric collection, logging, and error handling middleware to provide consistency across services.
Created tools to increase productivity and lower barrier to entry for contributing:
- Built open source CLI in Go to provide a simple,
  consistent workflow for local development including service configuration options, automatic
  loading of secrets, and programmatic access to configuration.
- Utilized it in a variety of projects to enable coworkers of any team and role
  to get the projects up and running with ease (including CI build to reduce local dev breakage).
- Built Ruby based super-project to stitch together multiple projects
  and ease cross-service development.
Worked on a feature team for 2 years using Ruby and JavaScript
to implement and fix bugs in customer facing features;
Moved to infrastructure/tooling team to focus on core backend features,
tooling, testing infrastructure, and project architecture:
- Added services to test suite to increase test coverage.
- Built development/testing environments to better mimic production.
- Created several linters and implemented test helpers for the QA team to use.
- Fixed an awful lot of flaky tests to improve build speed and reliability.
- Added features to C++ ruby gem to integrate app with Apache Pulsar.
- Wrote ansible, terraform, and Dockerfiles to fix and enhance deployments.
Wrote articles for internal blog about Clojure and Docker.
Gave tech talks and demonstrations for Ruby, Sidekiq, Go, and several internal projects.
Skills
    
  
  Software Development Engineer at Auction Edge
    2009 - 2016 (Remote)
    2004 - 2007
  Work with remote team (video calls, group chat, pull requests / code reviews)
to develop websites and REST APIs with Ruby and Rails.
Mentor junior developers and new hires on
craft, collaboration, debugging, visibility, optimization, maintenance, and deployment.
Debug everything.
Use Perl, Python, Ruby, Node.js, Bash, and more
to fix, integrate, and automate whatever is needed.
- 
Worked with two other developers to create, deploy, and maintain configurable
  Ruby on Rails websites customized and deployed for more than 80 customers. 
- GNU/Linux Server administration
- PostgreSQL database administration (including PL/pgSQL)
- Back end Ruby shared library code
- Rails web sites
- Front end HTML, CSS, and JavaScript (AJAX)
 
- 
Implemented a distributed ETL system. 
- Shipped GNU/Linux computers to customer locations.
- Wrote Perl software to query local databases (DB2, SQLServer, CSV files),
  massage data, and scan local file shares for photos and submit changes to server.
- Wrote Perl web services to receive customer data, save it to PostgreSQL database,
  and manage monitoring and updates for the satellite computers.
- Wrote Perl daemons to process queue of photos to import, monitor connections,
  pass messages for RPC, and initiate interactive shell sessions with the remotes.
- Wrote Javascript SPA to view connection statuses and deploy scriptable updates.
 
- 
Hacked old dev tools to integrate Sass compilation into a 10 year old Rails 1.0 project. 
- 
Wrote Python Flask app to export data and table definitions from SQL Server and diff records
  to help another team maintain backward compatibility during a rewrite. 
- 
Created Puppet modules by analyzing existing legacy production systems
  to migrate from physical servers to AWS for increased capacity. 
- 
Wrote Ansible roles, Puppet modules, Hiera configs, Fabric tasks, and shell scripts
  to configure and maintain 20+ GNU/Linux AWS EC2 instances. 
Skills
    
  
    - 
      Perl
    
- 
      Python
    
- 
      Ruby
    
- 
      JavaScript
    
- 
      Bash
    
- 
      Ansible
    
- 
      Puppet
    
- 
      Hiera
    
- 
      Fabric
    
- 
      PostgreSQL
    
- 
      AWS
    
- 
      Git
    
- 
      Docker
    
- 
      Vagrant
    
- 
      Gimp
    
- 
      ImageMagick
    
Core Contributor, Administrator (Volunteer) at MetaCPAN
    2011 - 2016
  metacpan.org (github) -
Open source search API for the Comprehensive Perl Archive Network.
After contributing and participating on IRC for more than a year
I was invited to join the admin team to help with issue management,
deployment, system administration, and future design.
As team members live all over the world
collaboration is done almost entirely via IRC and GitHub pull requests.
In the summer of 2014 I mentored an intern with the
Free and Open Source Software Outreach Program for Women
(now called Outreachy)
and assisted another team member mentoring a student
through Google Summer of Code.
Skills
    
  
    - 
      Perl
    
- 
      JavaScript
    
- 
      Elasticsearch
    
- 
      Puppet
    
- 
      Hiera
    
- 
      Vagrant
    
- 
      Bash
    
- 
      NGINX
    
Webmaster (Volunteer) at Groundwork Guatemala
    Since 2009
  
  
    Skills
    
  
    - 
      Perl
    
- 
      Bash
    
- 
      JavaScript
    
- 
      Haxe
    
- 
      ImageMagick
    
- 
      Inkscape
    
- 
      Gimp