Georgia Institute of Technology
Aug 2004 - Jul 2008
B.S. Computer Science

Along with base classes in math, logic, architecture, data structures, and algorithms, I focused on three "specialities" which I believe help prepare me as a Web Developer: Software Engineering (Agile/XP methodologies, project management, and testing), Database Technologies (underlying principles and emerging technologies) and AI (both Artificial Intelligence and Machine Learning). During my entire time at Georgia Tech, I worked at as a co-operative student employee.
May 2005 - July 2010
Software Engineer

Software Engineer II / III

  • Deploying changes on 24/7 n-tier platform used by 16M unique visitors per month
  • Heavy utilization of A/B testing to determine business impact of changes
  • Skunkworks projects for data normalization / analysis for "Did you mean?" and "People who liked this also liked this" features
  • Worked with international / remote team building international clones of flagship site

API Lead Developer (

  • Worked with internal and external customers who were using the API
  • Maintain, improve, and extend API based on usage and feature requests
  • Analyzed and monitored API usage statistics to prevent fraud / abuse
  • Provided technical advice for partnership negotiations involving the API /

  • Migrated outsourced platform onto main CareerBuilder platform
  • Worked and communicated directly with business stakeholders
  • Created project timeline and strategy in lean/iterative fashion
  • Transitioned between platforms on time and without interruption
July 2011 – December 2012
Web Developer

Performance & Scaling

  • Heavily utilize of New Relic transaction traces
  • Optimize critical DB queries through indices and denormalization
  • Reduce response variablity so dynos don't timeout and requests aren't backlogged
  • Queue long-running processes to async pool with front-end polling for completion
  • Create scheduled rake tasks to precompute / calculate intensive information
  • Cache semi-static content on heavy traffic pages to reduce server load
  • CDNize images, javascript, and styleshets with cache-busting hashes
  • Use NoSQL in proper contexts for specialized functions
    • Redis for set operations (voting, friends, following)
    • MongoDB for schemaless document store / related attributes
  • SQL transactions, state machines, and record-level auditing to ensure business logic and data integrity

Website Features

  • Participated in webpage redesign projects (homepage, ideation list page, shop, blog, and more)
  • Rearchitected transactional email framework with ActionMailer templates and AWS SES
  • Automated tools generating personalized "Your Week at Quirky" emails sent to 300k+ users once a week
  • Created internal admin tools for viewing ideas, product orders, and presenting weekly Eval


  • Pricing Game utilizing Price Sensitivty Meter to determine proper market price for new products
  • Quirky Live webpage using Pusher and Sinatra for real-time chat and live polling during weekly Quirky Evals
  • Twilio-based call queue for community members to participate in Eval conversation
  • "Problem Pool" collaborative approach to surfacing valuable idea submissions
Salesforce $1M Hackathon
October 2014 and Open Source Ruby Prizes

Awarded two prizes at the Salesforce $1million Hackathon 2014 in San Francisco, a 48 hour hackathon leveraging the Salesforce platform, in which all code was written during the allowed start/end times.

  • 12th place in Heroku + category for CoPilot Commercial Real Estate Management System, a web application that manages properties, task assignments, and comments through Salesforce Custom Objects, Workflow, and Chatter APIs through use and extension of the Restforce gem.
  • Open Source Ruby Prize for restforce-sobject which utilizes ruby metaprogramming to create a decorator pattern around Restforce objects in order to
    • Provide a ActiveRecord-esque interface to query / save through Salesforce API
    • Interact with Salesforce objects in a more ruby-like way and standardize Custom Object interface and attributes
    • Encapsulate Chatter / Task API logic to provide consistent interface for developer
Whitney Commercial Real Estate
Jan 2014 - Present
Marketing / Technology

WhitneyCRE Website

  • Recreated old static website on LocomotiveCMS platform with Bootstrap responsive theme
  • Overnight cron / rake processes to process all local real estate listings from 3rd party IDX
  • Interactive property map search using AngularJS / Algolia

Chrome Browser Extension

  • Extends real estate backoffice tool Reesio to add commercial real estate fields
  • Manipulates DOM to customize fields / graphs and insert into regular Reesio webpage
  • Stores data on own servers for analysis / ownership separate from Reesio

Transaction Manager

  • Use Adobe Indesign to create print materials (brochures, reports, etc.)
  • Responsible for state of current listings as they move through company pipeline
  • Created JSON tool to generate bi-weekly sales meeting slides, email blasts, and monthly "recent activity" PDF booklets 
July - Nov 2014
Ruby on Rails Contractor
  • Transition from EngineYard to Heroku + AddOns
  • Use New Relic to monitor and tweak transition performance
  • Optimized Resque document processing to improve site responsiveness
  • Updated and extended test suites to improve coverage
  • Implemented additional client functionality requests
This Website. The one you are looking at right now.

Attaché: a portfolio theme using SemanticUI elements and LocomotiveCMS content types

2-Factor Authentication gem. Protego!

Gringotts: a plug-and-play 2FA Rails engine. It sends a one-time password to a user over SMS which is used to verify that the user is are who they say they are.

  • Test-driven development (TDD) and continuous integration (CI)
  • Compatibility testing across multiple versions of both ruby and rails
  • Integrates with Twilio account to send SMS to user upon login from unknown device
  • Promotes decentralized security and privacy in an era of data breaches and surveilance