Software engineer, author, consultant and teacher with over a decade of experience architecting and developing software and technology ranging from low-power embedded sensor networks to large distributed systems used to deploy software millions of times per week. In addition to my experience with technology, I have over eight years of experience teaching at the University of California, California State University and local community college systems and have written a number of books on technical subjects.

Recent Projects

A brief list of some of the high-impact work I have done recently:

  • Architected and launched the Alexa video platform and SDK
  • Built AWS CodeDeploy as part of a small team
  • Worked on Amazon’s internal deployment tool, Apollo [1] [2]
  • Provided key support for scaling and re-architecting much of
  • Brought continuous delivery, containerization of services and automated the provisioning and deployment of services and cloud migration to teams across Expedia
  • Designed and built Chef’s provisioning tools and scaled their hosted services

Work Experience

Senior Solutions Architect

Amazon Web Services

June 2017 - Present

I work with non-profit organizations, particularly in the research and healthcare spaces, to help them make the best use of Amazon Web Services. I help our customers to realize the value of AWS through training, architectural guidance and hands-on help building prototypes or demos.

Senior Software Engineer


July 2016 - June 2017

Senior engineer on the Alexa Entertainment team - focus on expanding Alexa’s ability to play music and audio as well as integrations with video devices. Responsible for the design and implementation of the Alexa Video SDK used by 3rd party video providers such as DishTV to control and interact with devices. Owned and led the Alexa half of the FireTV voice control for existing and new devices, such as the FireTV Cube. Also a contributor to a number of core Alexa systems and processes such as internal and external API reviews, voice routing and intent processing.

  • Part of the team that launched the Echo Show
  • Designed and launched the Alexa Video Skill API
  • Responsible for both the API specification and the services that enable it to operate
  • Owned or influenced design and architecture of services and systems pertaining to Alexa music and video experiences
  • Worked across multiple teams and organizations (FireTV, Prime Video and Amazon Music among others) to deliver awesome experiences for customers using Alexa-powered devices
  • Participated in due-diligence reviews for acquisitions of external companies

Senior Software Architect


October 2015 - July 2016

As a senior software architect my role was to ensure that our organization is making the right technical decisions to enable our teams to deliver quality, performant software. Things I work on include:

  • Ensuring teams expose consistent APIs in their services
  • Migrating our monolithic applications to a service-oriented architecture
  • Building prototypes and proofs of concept for teams
  • Rolling out advanced continuous delivery pipelines for faster and more reliable deployments
  • Automating infrastructure management and configuration with Terraform and Chef
  • Training engineering staff on a variety of topics
  • Shepherding our migration to AWS
  • Researching and approving technology adoption

Senior Software Engineer


January 2015 - October 2015

I worked in the Kindle organization supporting Goodreads, the social book recommendation site. I was on the catalog and tracking team responsible for managing Goodreads’ collection of books and helping customers track books that they have in their library or want to read in the future. Things I worked on included:

  • Driving our migration from a monolithic application to a service-oriented architecture
  • Building new data services to manage bookshelves for over 30 million readers on both the web and Kindle tracking billions of data points
  • Providing leadership and mentoring to other engineers
  • Improving development processes and deployment strategies to increase productivity and site reliability

Senior Software Engineer


July 2014 - January 2015

  • One of two primary developers of Chef’s provisioning system
  • Developed drivers for AWS, Docker, Azure and PXE-boot bare-metal
  • Responsible for roadmap planning, building new features, supporting new platforms, and writing documentation and training material
  • Helped other developers learn how to contribute to chef-metal

Senior Software Development Engineer


May 2013 - July 2014

  • Worked on a distributed, scalable system for deploying software to nearly a million legacy and cloud hosts, millions of times per week across the globe
  • Worked on scalability, reliability and regionalization of the deployment system, which was critical to the success of Amazon’s retail website
  • Built new data services and simplified overall architecture where possible
  • Architected and developed new backend services for public AWS offerings
  • Lead the effort to build cross-platform development tools for achieving consistent and reproducible builds
  • Helped to develop and deliver training material to new hires, as well as existing teams and subsidiaries, both locally and internationally
  • Mentored other developers and interns

Freelance Developer and Consultant

2002 - Present

Recent projects include:

  • Infrastructure configuration, management and scalability using Chef and AWS
  • A geospatial application framework using Django, PostgreSQL, PostGIS, HTML5, OpenLayers and Backbone.js
  • Geospatial applications for customers ranging from government entities to fishing enthusiasts
  • An iOS application for location-aware, automated, time tracking
  • High-performance Flash charting components for radio spectrum testing equipment
  • Geographically distributed data-collection and alarming system for wireless sensor nodes using cellular networks
  • Large-scale sensor data processing using Hadoop, Pig and Hive
  • Enabling customers to better manage software development, deployments and infrastructure with tools such as Chef, Jenkins and GitHub

Software / Infrastructure Architect


October 2012 - May 2013

  • Re-architected a monolithic Rails application to use a service-oriented architecture
  • Responsible for monitoring, infrastructure planning and capacity management
  • Built data and web-services and APIs using Ruby, Java, Riak and MySQL
  • Automated system provisioning and infrastructure management
  • Increased visibility into application performance
  • Performed day-to-day systems administration

IT Manager

Superior Court of California, Merced

March 2012 - October 2012

  • Oversaw a team of support staff who were responsible for desktop support, networking, technology infrastructure, e-mail and A/V support
  • Managed department budget and consulted with court executives on technology projects
  • Procured equipment and software for new and existing projects
  • Responsible for requirements gathering, architecture and development of a number of in-house applications to help optimize day-to-day court operations
  • Managed technical operation of virtualized infrastructure
  • Automated deployment of software and provisioning of systems
  • Participated in state-wide projects designed to set the technical direction for the Superior Court of California
  • Hired and trained new employees

Senior Software Engineer / Architect

Cramer Development

March 2010 - February 2012

  • Architected, developed and maintained Ruby on Rails applications
  • Provided technical direction for internal projects as well as client-based projects
  • Performed system administration and operations tasks using Chef, Ganglia, Munin and Nagios
  • Oversaw hiring of new technical talent
  • Mentored other engineers

Software Engineer

Front Porch Communications

April, 2007 - March 2010

  • Responsible for development, maintenance, and support of a WiFi HotSpot appliance used at over 3,000 locations across the US and Europe
  • Wrote a GRE-encapsulation bridge driver for the Linux kernel
  • Developed API clients and libraries in C# and Perl

Research Experience

Research Assistant

UC Merced

2004 - 2006

  • Research assistant to Dr. Thomas Harmon on a variety of projects pertaining to soil moisture, groundwater, and surface water quality.
  • Work included developing embedded sensor networks to retrieve data for analysis by mathematical models to understand the nature and behavior of pollutants in environmental systems.
  • Projects spanned agricultural, riparian, groundwater-, and wetlands-related problems.

Teaching Experience

Adjunct Faculty

Northeastern University

2016 - Present

Responsible for design and delivery of courses at Northeastern University’s computer science department targeting students seeking an MS in Computer Science. Topics include: building software as teams, web services, service-oriented architecture, continuous delivery and deployment, API design and building software at scale.

Lecturer; Computer Science

University of California, Merced

2007 - 2012

Developed and delivered courses on topics including:

  • Java
  • C++
  • C and UNIX systems programming
  • Data structures and algorithms
  • Machine organization.

Adjunct Faculty; Computer Science

Columbia Community College

2008 - 2009

Developed and taught courses including Introduction to Programming, Introduction to UNIX and Linux, and Advanced Web Topics

Teaching Assistant

University of California, Merced

Assisted with teaching Operating Systems, Data structures using Java, and Exploratory Computing / Data Analysis

Lecturer; Computer Science

California State University, Stanislaus

2004 - 2006

Taught courses on programming using C++, and basic computer / Internet usage skills including Microsoft Office, basic database development and web-page development.

Books, Publications and Presentations


  • Chef Essentials – ISBN: 978-1-78398-304-9, published 2014
  • Managing Windows Servers with Chef – ISBN: 978-1-78398-242-4, published 2014
  • Instant Parallel Processing with Gearman – ISBN: 978-1-78328-407-8, published 2013
  • Instant Chef Starter – ISBN: 978-1-78216-346-6, published 2013


  • Yeonjeong Park, et al. – Adaptive Management of Irrigation with Feedback Control to Avoid Groundwater Pollution by Nitrate (2006)
  • Nithya Ramanathan, et al. – Embedded Networked Sensing of Subsurface Water Quality Calibration, Fault Detection and Feedback Control (2006)
  • Thomas Harmon, et al. – CENS Contaminant Transport Observation and Management Research Overview (2006)
  • J. Eric Haux, et al. – Development of the Soil Pylon System for Observing Subterranean Processes (2005)
  • David A. Turner, et al. – Allocating Resources in Storage Cooperatives with Pseudo Currencies (2003)


  • Automating your Infrastructure with Chef – O’Reilly Webinar; August 6, 2014


Ph.D in Environmental Systems (incomplete)

Advisor: Dr. Thomas Harmon

University of California, Merced

  • Research was in the field of embedded sensor networks and 1-D flow modeling
  • Coursework in: hydrology, environmental statistics, contaminant fate and transport, geochemistry, organic chemistry and modeling of environmental systems.

B.Sc. in Computer Science

California State University, Stanislaus