1. Dave Thomas
Address: 1045 Mission St #3, San Francisco CA 94103
Phone: 213-705-7490
Email: davemonster@peoplemerge.com
Social: linkedin.com/peoplemerge tw itter.com/peoplemerge
Projects: peoplemerge.com github.com/peoplemerge
To make an appointment to speakto me by phone, please see my calendar at peoplemerge.com/availability (note:
times are in PST) then email me w ith a job description and a proposed time or calendar invitation.
Summary Builder of startups and enterprises as a part-time CTO, technical advisor, and enthusiastic
software and systems architect and engineer who really likes to write code. Strong polyglot
developer (OO and functional) in Java, Scala, CloJure, Groovy, Swift, Ruby, Python,
JavaScript / CoffeeScript, Erlang, PHP, Perl. Proficient in SQL and several NoSQL databases.
Deep DevOps cultural background, a Continuous Delivery toolsmith with extensive experience
in both development and operational organizations. Evangelist of Entrepreneurial tactics and
Lean Startup over a 17 year career.
Experience Software Engineer (contract) Trizic Inc
San Francisco, CA — Feb 2016 - Aug 2016
Divided a monolithic Java / Spring / MySQL robo-trading (financial portfolio management)
application into microservices, raising the standards of code quality using OO and functional
design. Employed RabbitMQ, Docker, Java 8, with minor updates to Node.JS components in a
CD environment based on Ansible, Nomad, Consul, Werker, and AWS. Working with the
support of a financial engineer, decoupled a quant code base that employed combinatorial
optimizations (such as branch and bound) so it could operate as a standalone messaging
worker.
CTO, Delicious (a division of Science Inc), then Delicious Media Inc (a division
of Paradise Modern Inc)
Los Angeles, CA — Sep 2014-Jan 2016
Implemented sweeping product changes targeting revenue growth, leading several small
teams (3-4 people) onsite and across 4 time zones. Wrote Coffeescript, Java, Python, Scala,
Objective-C, and CloJure application stack running on AWS. Built and maintained services
using EC2, DynamoDB, ElastiCache, SES, S3, Route53. Engaged 3 month cost-cutting effort
that resulted in a 80% reduction in costs by migrating to another AWS region in a VPC, and
increasing density using Docker and EC2 Container Service. Simplified an operational
infrastructure that served 100M unique visitors/day and previously required 100 EC2 instances.
Replaced a custom Zookeeper-based message queue that was forked from Apache Kafka with
AWS Kinesis. Architected, designed, implemented, and launched Delicious Mail, an email app
(web and iOS) that makes email revocable in Objective-C and Grails. Created and trained a
big data team to support statistical analysis on product experiments for the mobile apps
Wishbone and Slingshot (both top 10 social apps) using Looker on AWS RedShift, including
services from Data Pipeline, RDS, DynamoDB, and EMR. Following acquisition, performed
strategic and tactical guidance to the new owner of a major Internet property, and knowledge
transfer to a new technical team.
Software Architect, Verifi Inc
2. Los Angeles, CA — Mar 2013-Aug 2014
Re-architected the production real-time credit card processing system for geo-distributed fault
tolerance which led to a 5x increase in business on the platform in 1 year. Evaluated vendors
of critical platform improvement to bring in credit processing in-house based on source code
quality and strategic business objectives. Led a project to implement Chef and Openstack,
which maximized the efficiency of the engineering organization’s main bottleneck, and
introduced Rundeck, which managed all batch processing. Led software and systems groups
with the application of best practices, and frequently took a hands-on role writing java, ruby,
php, and python code. Extended DeploymentObjects code base to use grammars to parse log
file to entities in Riak that were replayed for load testing. Recruited and coached engineers
and managers, gave talks on engineering subjects such as coupling & cohesion, SOLID, DDD,
OO design patterns.
Sr. Software Engineer, Fox Filmed Entertainment
Los Angeles, CA — Nov 2012-Mar 2013
Designed and developed RESTful Web Services with Apache CXF, Oracle SQL using TDD.
Maintained Oracle 11g BPEL and BPMN 2.0 workflows that called the REST services.
Developed REST services for legacy Perl web app.
Open-Source Software Architect, PeopleMerge
Los Angeles, CA — Aug 2012-present
Created BSD-licenced orchestration platform, available at deploymentobjects.org. Employed
DSL using ANTLR as a novel IOC alternative to Spring and applied Domain Driven Design
methodology. The tool dispatches tasks using SSH, launches and manages VMs with libvirt
and kickstart, coordinates Puppet operations, and manages state with Apache Zookeeper.
Developed push web interface for Domain Events using GWT and Atmosphere before
replacing Atmosphere with Errai in a later sprint. Current iteration includes core refactoring to
SCALA.
Software Architect, CGI
Montreal, QC, Canada — Aug 2011-July 2012
Architect for new generation of foreign currency exchange software. Provided architectural
leadership and introduced a design based on test-driven development, real-time enterprise
systems, OO patterns, GWT with Atmosphere on J2EE, and provided 1-on-1 and group
training for the development team. Supported software group with business knowledge
through Domain-Driven Design (DDD) methodologies. Developed cloud POC with Amazon
EC2 and VPC.
Sr. Software Engineer, ValueClick
Los Angeles, CA Jan 2011 - Aug 2011
Developed J2EE RESTful web services using Spring and Hibernate and FLEX 4 front-end.
Contributed to a continuous delivery pipeline with perforce, maven, and hudson on Linux.
Maintained and extended a rich OO domain model (following DDD) with JUnit.
Sr. Software and Systems Engineer (contract), PeopleMerge
Los Angeles, CA Sep 2009 -Dec 2010
Edmunds.com: Developed bare-metal automated deployment and testing mechanism for
Hadoop effort using Puppet, MCollective, Cobbler, Libvirt, KVM, and Hudson on
RHEL.Developed an automated integration testing environment for Edmunds Traffic Manager
3. (ETM) using Fabric and JBehave. ETM is an Apache Zookeeper-based application for
coordinating the allocation of VIP pools in an F5 load balancer with Apache HTTPD rewrite
rules, triggered when applications are deployed to a container such as Tomcat. Developed
POC for the deployment of development environments to Amazon EC2.
SpinMedia (formerly Buzz Media): Administered high-volume 24x7 LAMP environment
supporting 50 million monthly users with CFEngine, XEN virtualization, and Fabric. Developed
log analysis tool using Hadoop/Apache Pig. Developed Ruby on Rails plugins for the Redmine
ticketing system, a Ruby on Rails app (open-sourced by permission,
github.com/peoplemerge/redmine-cclist-plugin). Developed POC for production deployment of
high-volume Wordpress applications to Reliam cloud and Amazon EC2.
TeamLead Sr. Software Engineer, Ericsson
Los Angeles, CA Jan 2007 - Jul 2009
Led systems engineering team designing a continuous delivery pipeline. The project entailed
highly-variable customer deployments spanning approximately 800 sites, 3,000 Linux and
Solaris servers, 50,000 JVMs. Implemented open-source solution using Puppet and
ControlTier tools with XEN.
Led Java development team for CORBA code base and migrated to J2EE/Web Services.
Developed test harness and deployment automation.
Rearchitected a .NET XML feed logger/transformer for performance for Java on Linux using
StAX and Spring (IoC and AOP). Achieved a 100-fold performance improvement (on same
hardware). Unit tests covered ~75% code base.
Rearchitected rights and guide schedule manager using agile principles. Developed search,
schedule, and guide import. Delivered product ahead of schedule. Unit tests covered ~75%
code base.
Software Engineer (contract), Solekai Systems
San Diego, CA Apr 2006 - Nov 2006
Developed Core Java-based content management system and test harness for a video
engineering tool designed for set-top boxes.
Implemented Eclipse RCP using Java with XML technologies using Subversion as a custom
persistence layer.
Gained further knowledge in digital video (MPEG2, ATSC, DSMCC) and GOF design patterns
for the tool to generate bit-streams containing audio, video, and metadata.
CTO, Bay Street Software
Los Angeles, CA Dec Mar 2004 - Aug 2005
Led several software development teams (3-5 people each). Applied entrepreneurial skills in
the development of business. Developed and launched 2 sites. Created a distributed web
scraping tool in Python for the DOM with XML/XPath/XSLT. Developed Zope/Plone user
community.
CTO & Founder, PeopleMerge
Los Angeles, CA Dec 1998 - Mar 2004
Contractor. Clients include Wells Fargo Bank, Sony Electronics, Supreme Anime Productions,
APICS–San Diego, SellerTracker, USC Pharmacy School, GirlGeeks.com, AutoBodyClub.com,
and various LA-based data centers.
Led several small (5 person) software development teams. Mentored junior programmers.
4. Developed websites with JSP, Servlets, EJB 2.0/XDoclet using Jakarta Struts and Hibernate
with MySQL and Oracle databases. Administered Apache Tomcat and JBoss application
servers. Engineered distributed systems in Java, C++, Perl. Acted as primary UNIX
administrator for Linux and Silicon Graphics systems and development/operational Oracle
Administrator. Performed hardware troubleshooting on x86 servers running Linux.
Web Developer and UNIX Administrator, DirectNet
Los Angeles, CA Jan 1997 - Dec 1998
Developed CGI in C and Perl modules for Web 0.1 sites. Administered IRIX and BSDi web
servers and Oracle 7.3 RDBMS
Education San Diego State University
MS Computer Science — 2016
Completed coursework, anticipated thesis defense Dec 2016.
Universityof Southern California
BS Computer Science — 2002
Minor in French, completed certificate at Sorbonne University, Paris
Minor in Business, completed emphasis in Entrepreneurship
Finalist, Top Business Plan of the Year, USC Lloyd Greif Center for Entrepreneurial Studies