A creative, passionate software engineer with 21 years of software development experience. Passionate about technology that can bring people closer in ways that add meaning to their lives.

Professional Experience

2013 - Present
Revenue Team Lead — Change.org, San Francisco, CA

Led the team responsible for all engineering aspects of company revenue. Took ownership of client support tools, revenue stream experiments and optimization, and exploration of new revenue sources. Responsible for sprint planning; experiment design, execution, and integration; and team mentoring.

  • Led the team building a petition promotion platform, providing a new stream of revenue for the company and taking the first step toward democratizing the funding of social movements.
  • Built tools to allow live migration of large database table schemata without downtime. Investigation of this problem led to several patch contributions to open-source tools.
  • Mentored developers and provided architectural, engineering, and personal development guidance. Contributed feedback via code review, one-on-one meetings, and regular employee review cycles.

2011 - 2013
Sr. Software Engineer — Change.org, San Francisco, CA

Ruby-on-Rails developer and architect building the world’s largest social empowerment platform.

  • Member of the leadership tiger team to internationalize the application from US-only to 12 languages in 18 countries. This opened up new markets and allowed international user sign-ups to surpass domestic within 4 months.
  • Conceived, designed, and built tools for detecting and dealing with fraudulent and spammy signatures, as well improving the process to remove them. These tools have been instrumental in defusing several international brand crises.
  • Rearchitected the application authorization system from a tightly-coupled, code-invasive custom system to a role-based system using the Declarative Authorization gem. This allows feature permissions to be declared concisely and independently from code, simplifying the process and reducing errors.
  • Designed and built a proof-of-concept machine-learning ETL data pipeline using Cascading, Hadoop, and Amazon Elastic MapReduce.
  • Participated in the invite-only White House “We the People” Open Data Day Hackathon in advance of the release of their read-only API. Provided feedback on the API, and demonstrated a petition integration at the closing ceremonies.

2009 - 2011
App Genius — Context Optional, Inc., San Francisco, CA

Ruby-on-Rails architect and developer for social media applications on the Facebook Platform.

  • Designed and built Chase Community Giving, the #1 highest- volume, non-game application on the Facebook Platform.
  • Conceived, developed, and maintained high-volume, high-availability, highly-viral Ruby-on-Rails applications leveraging Memcached, Redis, Resque, and Sphinx.
  • Collaborated in agile, cross-functional teams at every step of an application life cycle: inception, design, architecture, implementation, release, and maintenance. Mentored and guided junior developers in building skills in agile development and software maintenance.
  • Company-wide revision control guru. Provided training, advice, support, and assistance for company Git repositories and the migration from Subversion.
  • Account management liaison for Fortune 500 clients, including J. P. Morgan Chase, Safeway, and LG.

2008 - 2009
Primary Developer — Emmet Labs, Inc., San Francisco, CA

Built and maintained a Ruby-on-Rails social media platform to plot the stories that bring us all together.

  • Removed several application bottlenecks in the server backend as well as the primary Flex/Flash widget. First render time was reduced from over 30 seconds to under 1 second, reversing user perceptions of the widget from “broken” to responsive, directly contributing to a dramatic uptrend in participation.
  • Converted the entire application from Markaby templates to Haml/Sass. This simplified the templates and reduced errors, directly contributing to a reduction in development time of front-end features.
  • First technical hire. Collaborated with the technical founder to agilely deliver rapidly prototyped and deployed solutions in an RSpec-based, Behavior-Driven Development environment.

2004 - 2008
Senior Applications Engineer — CloudShield Technologies, Inc., Sunnyvale, CA

Rapidly prototyped and built complete customer solutions and platform customization including web user interfaces, reference implementations, and SDK components for the CA-5000 and CS-2000 Deep Packet Processing hardware and software platforms.

  • Founding chairman of the Architectural Review Committee. Established a formal design methodology balancing the need for process against the required agility of a small company.
  • Integration Team Lead for three years. Responsible for code quality, integration testing, requirements and standards compliance verification, project management and final sign-off.
  • Trained and mentored junior developers in agile methodologies, object-oriented architecture, and database design.
  • Completely automated the creation of virtual machines with custom software for delivery to customers. This solution provided process repeatability, considerably reducing errors and simplifying QA test requirements.
  • Designed and built a pluggable framework for network applications providing device management, scheduling, and charting. This feature allowed developers to focus on the unique aspects of their particular feature, and saved significant development time on several applications.
  • Led the Common Criteria EAL 4+ security certification of the software for the CS-2000 product line. This project opened up large new markets and directly led to a dramatic increase in sales.
  • Designed user interfaces with Ruby-on-Rails, Java, PHP, and CGI; built Eclipse plugins and RDP applications; remote interfaces with SOAP; system programming in C, C++, Perl, Python, and shell; ported Linux kernel modules from 2.4 to 2.6; and added SELinux strict refpolicy definitions for custom software; and built deep-packet processing modules in CloudShield RAVE.

2002 - Present
Founding Principal — Stealthy Monkeys Consulting

Numerous short- to mid-term projects in enterprise web development and software engineering for many clients including CloudShield Technologies, the Netscape product division of AOL/Time Warner, and several other small- to mid-sized businesses.

  • Author and maintainer of the official Phusion Passenger RPM packages for RedHat / Fedora-based Linux distributions. Worked on an international, open-source team managing pull requests and release turnaround times.
  • Created a Ruby-on-Rails based recommendation engine that generated user enthusiasm and loyalty, driving an increase in transactions.
  • Added a custom install provisioner in local extensions to the RedHat Enterprise Linux Anaconda Python install system. Drastically improved developer productivity while cutting errors nearly to zero.
  • Built a custom MovableType plugin to post entry data to a database via XML-RPC.
  • Added an offline LDAP cache to the address book of a cross-platform messaging suite. Heavily optimized this feature for database scalability.
  • Saved several person-weeks of duplicated effort with the design and implementation of cross-application preference and data sharing for a cross-platform messaging suite. Commended for the ingenuity and clarity of this solution.

1999 - 2001
Senior Web Engineer — Topica, Inc., San Francisco, CA

Developed the Topica Email Publisher web application, including tools for its support, maintenance, and testing. Mentored junior developers in software engineering, object-oriented and database design.

  • Increased QA productivity several-fold by creating a test harness for web applications that simulated complete user sessions, modifying behavior based on responses. The tool reduced test-case creation time from days or weeks to hours. Further, test modularization allowed for substantial reuse.
  • Built the first revenue-generating product in less than 30 days when it was crucial for company survival.
  • Spearheaded the “impossible” project to bring our large, mod_perl-based application into strict pragma compliance. This undertaking identified and corrected many long-hidden problems. When completed it enabled the team to discover defects in new development much earlier, thereby saving time and greatly improving productivity and quality.

1998 - 1999
Lead System Software Engineer — Content Management System — Intuit, Inc., Mountain View, CA

Rebuilt the internal content management system for Quicken.com, resulting in a consistent, maintainable system that better accommodated and anticipated user needs.

  • Revolutionized the application workflow by adding a test suite with page previews for user specified dates and locations, substantially reducing errors and improving productivity in the entire process.
  • Improved data file generation process performance by more than an order of magnitude by refactoring the monolithic, complex display engine into a collection of small, versatile components.

1997 - 1998
System Software Engineer — Quicken.com Infrastructure Group — Intuit, Inc., Mountain View, CA

Developed and extended tools and systems for the diverse partner sites of the Quicken Financial Network. Designed and built a template system with inheritance and separation of content and presentation.

  • Anticipated a need for, and rapidly developed and deployed a browser-based, data file management system.
  • Took initiative and control of key critical path tasks to ensure an on-time delivery of a major software release.

1994 - 1997
Webmaster / System Programmer — GALT Technologies, Inc., Pittsburgh, PA

Investigated, evaluated, customized, and authored server software and tools for the NETworth websites. Instituted, automated, and improved many processes, including link integrity spider and concurrent version control. Greatly reduced both turnaround time for content update and the number of errors in the system.

Education & Interests

1998 - 2002
CompuMentor

Taught non-profit and public school staff and volunteers hardware and software skills to help them in their duties. Built and maintained a database application to help a non-profit track membership.

1998
University of California at Berkeley Extension

Project Management for Software Engineers

1991 - 1994
Carnegie Mellon University, School of Computer Science

Technical Expertise

Languages, Protocols, Libraries, and Frameworks

  • Ruby,
  • Rails,
  • RSpec,
  • Cucumber,
  • Declarative Authorization,
  • Devise,
  • Cascading,
  • Hadoop,
  • Javascript,
  • jQuery,
  • CSS,
  • Haml/Sass,
  • (X)HTML,
  • AJAX,
  • Java,
  • Perl,
  • XS,
  • SQL,
  • Flex,
  • Flash,
  • ActionScript,
  • PHP,
  • C,
  • C++,
  • Objective-C,
  • XML,
  • XML-Schema,
  • XSLT,
  • XSL:FO,
  • SOAP,
  • TCP/IP,
  • HTTP,
  • LDAP,
  • X11,
  • Cocoa,
  • GNOME,
  • wxWidgets,
  • PDF,
  • SELinux policy development

Applications

  • PostgreSQL,
  • MySQL,
  • MongoDB,
  • LevelDB,
  • Oracle,
  • Redis,
  • Amazon Elastic MapReduce,
  • Sphinx,
  • Eclipse,
  • Git,
  • Subversion,
  • Apache HTTPD,
  • nginx,
  • Phusion Passenger,
  • Unicorn,
  • Mongrel,
  • Capistrano,
  • Resque,
  • SendGrid,
  • Puppet,
  • Tomcat,
  • Apache XML Tools,
  • GNU development tools

This resume was created from XML conforming to the HR-XML Consortium's Resume Schema using Xalan XSLT transformation.