New York (US), New York

About

Developer with expert knowledge of popular web frameworks and their backing technologies. Happy in the shrinking gap between development and ops, ecstatic to turn needs into working software.

Experience

New York Public Library

January 2015 - Present
Senior Applications Developer

Creating and maintaining applications that help archivists describe digitized archival material and make material available to the public on the web.

  • Developed ops standards/consensus around provisioning, deployment, structured logging, containerization, code review, testing, and git workflow.
  • Introduced use of containers and multi-stage builds to make complex stacks easier to run locally.
  • Used structured logging for better observability & metrics, used to tune containers and scaling rules.
  • Built & maintained a suite of fault-tolerant web apps & microservices used by staff to describe, transcode, and archive audio/video using RabbitMQ and AWS tools.
  • Thinks critically about maintainers' toil and evangelizing solutions for toil.
  • Planned and delivered complex, multi-system projects, spanning organizational units.
  • Led migration from Oracle to PostgresSQL.
  • Thinking holistically about what the team spends its time on and if it adds value for users.
  • Mentoring teammates about the idiosyncrasies of microservices.
  • Created CI/CD pipelines to build & deploy applications to Elastic Beanstalk & ECS.
  • Wrote maintainable and idiomatic Ruby & Javascript applications.
  • Limited access to rights-encumbered video by IP address using AWS Cloudfront.

Gotham Ruby Conference

April 2008 - June 2014
Co-Organizer

Co-Organized the premier regional programming conference.

  • Grew conference attedence 300%.
  • Oversaw the conference's transition from focusing on a single language to a conference for developers interested in interesting things.

Movable Ink

January 2014 - December 2014
Senior Engineer

Maintained and built web application and services capable of servicing thousands of requests per second.

  • Used Node.js, Ruby, Golang to strike the best balance between maintainability and performance.
  • Shared DevOps responsibilities with a team of highly skilled developers.

EastMedia Group

January 2010 - December 2013
Senior Developer

Creates and maintained technically and organizationally scalable applications for startups and goliaths.

  • Created and maintained web applications that could be extended quickly.
  • Not carrying a balance of technical debt.
  • Dictating technical infrastructure. Everything from hosting to application server.

Metadata

July 2007 - September 2009
Senior Software Engineer, Team Lead

Used Ruby and Rails to build applications used to run clinical trials.

  • Evaluated and implemented libraries for use in Ruby on Rails applications.
  • Formal and informal training of developers on Ruby best practices and idioms.
  • Iterating quickly and safely in a highly regulated environment.

Unicast Corporation / Enliven

August 2004 - July 2007
QA Engineer / Developer

Automated QA of web applications and aiding our technology's integration on client's applications.

  • Complex breadth testing of struts-based web application and the JavaScript files it generates.
  • Created Ruby driven web automation tests to save 40 man/hours per week.
  • Created reusable performance tests for web applications.
  • Developed Java desktop application to save internal users to 20 hours/ week.

Education

Florida State University

1999 - 2003
Bachelor
MIS / Economics Major with Computer Science minor

Skills

Web Development & API Design
Master
  • HTML
  • CSS
  • Javascript
  • Varnish
  • Nginx
  • Ruby
  • Node.js
Technical Infrastructure
  • Queuing Systems
  • Kinesis
  • RDS
  • Elastic Transcoder
  • Lambda
  • S3
  • Nginx
  • Passenger
  • Chef
  • HTTP
Data Stores
Great for a developer, but you and I both don't want me to be your DBA.
  • PostgresSQL
  • MySQL
  • Redis
  • Knowing the right tool for the job

Interests

Using Docker as the best & most agnostic packaging system ever.
Squeezing the most out of 512 MB of RAM.