I was born and raised in the Seattle area (save for a one year stay in Alaska when I was too young to remember anything), where from a young age I was pretty sure I wanted to develop video games. Around 8th grade I started dabbling in programming in the form of RPG Maker 2000. This was before these game makers started to embed real scripting languages, and I still have flashbacks to implementing a full matrix rotation algorithm and adding edge case handling with drop-down menus because I wanted to re-implement the snow field scene from Final Fantasy 7.

I earned my degree in Computer Science from Tulane University in New Orleans. Rather, I went to college at Tulane University very briefly before Hurricane Katrina happened and the administration wiped out their Computer Science program. Let’s try that again…I earned my degree in Computer Science from the University of Illinois at Urbana-Champaign. After taking a deep liking to the oft-feared CS 473 (advanced algorithms course) I decided my new future was in advanced applications of algorithms, and took a job at Amazon.com to work in the Inventory Planning and Control space doing high scale inventory planning simulations and developing inventory buying algorithms. I worked in that space for about 3 years, where my most lasting legacy is that if you find yourself shopping for an obscure item on Amazon you can probably thank/blame me on some level if it’s in-stock or out-of-stock respectively.

Looking for a new challenge, in 2013 I moved to the AWS SDK for Ruby team, where I had the opportunity to get to know the AWS portfolio of services on a broad scale and develop tooling to improve the lives of Ruby developers on AWS. This also started me on the conference/podcast circuit until basically the start of COVID, and you can see most of my talks below. Becoming the “Ruby on AWS guy” eventually led to the opportunity to write the Ruby runtime for AWS Lambda. This felt like a major leap forward in my career arc of trying to make it as easy as possible for Ruby developers to make scalable, highly available, and fault tolerant applications on AWS. So much so, that in 2019 I switched to working on serverless tooling full time in the AWS SAM and AWS SAM CLI space. Today, I work in an organization focused on infrastructure as code support more generally within AWS.

Outside of work, my interests revolve around raising my son, cooking, wine, cocktail making, golf, weightlifting, Seattle sports, and trying (failing) to take a normal picture of my dog. You can learn more about what I’m up to at any given time on my /now page..

Talks & Workshops

AWS re:Invent 2019

OSCON 2019

RailsConf 2019

No video for workshops at RailsConf 2019, but you can find the worksheet and sample code on GitHub.

RubyKaigi 2019

RailsConf 2018

AWS re:Invent 2017

RailsConf 2015

AWS re:Invent 2015

AWS re:Invent 2014

Podcast Appearances

  • AWS Developers Podcast #86: In which permissions and resource policies for serverless architectures is discussed. Also puns.
  • Ruby 5x5 #254: In which the announcement of Ruby support on AWS Lambda is discussed.
  • AWS Podcast #285: In which we have a group discussion on AWS Lamba Layers, and runtime development with an eye towards the approaches taken in Ruby and C++.
  • AWS Podcast #262: On the state of Ruby on AWS, before the launch of AWS Lambda support.
  • Ruby Rogues #218: On AWS deployments and web applications.