home about me resume / cv email twitter

Michael Hansen

I’m a software developer living in Portland, OR.

Email: modality2@gmail.com

Twitter: http://twitter.com/modality

Background

Airbnb

Engineering Manager, Support Products (SuP) March 2019 - September 2020

I coached, supported, and challenged a team of 10 individual contributors on the Support Products Agent Experience team. Agent Experience’s focus was supporting Airbnb’s businesses to make sure that agents can navigate customer support issues for all of Airbnb’s products using our flagship customer support tool, Nova.

In addition to shipping features for Nova, I focused on a few macro-level projects to help my team do its thing, but even better:

  • Facing a large number of change requests from businesses, I streamlined our intake process which helped us prioritize and deliver 50 requests in 2019 when we had initially allocated headcount for 10.
  • I developed a core values document for our team based on their feedback to the question “why do you choose to work at Airbnb and on this team?” This helped the PM and I represent the team’s interests when negotiating with businesses, operations, and leadership.
  • I worked with a product specialist to triage defects in Nova, and incorporated bug-fixing into our sprint process, which increased our SLA for defects from 52% in November 2019 to 81% in May 2020.

Senior Software Engineer, Support Products November 2018 - March 2019

I joined Support Products Agent Experience team which maintains Nova. The team was fairly new at the time, and working with the previous Engineering Manager and Product Manager I helped to define:

  • Our Ways of Working, which outlined our sprint process, its bi-weekly rituals, and delineated the responsibilities of the PM, EM, and ICs on the team
  • New rules to require Architectural Decision Records (ADRs) for large pull requests in order to document sweeping changes and best practices

BuzzFeed

Software Engineer, Infrastructure Group October 2015 - November 2018

I worked on infrastructure and internal tools. BuzzFeed’s application ecosystem is heterogeneous and includes everything from the 11-year-old Perl app which makes up the core website to the microservice architecture which supports a swarm of Tornado, Django, and Go services. In this position I’ve performed maintenance and built features for nearly everything. Some projects I’ve had a hand in:

  • Rig, our platform-as-a-service which serves as the foundation for over 400 microservices
  • The API Gateway, our broker for service-to-service communication in Rig, which provides authentication, rate-limiting, and performance metrics for our APIs and their consumers
  • COP, the Centralized OAuth Proxy, which provides end-user authentication and ACL management for our UI services
  • Our deploy and CI tools for both Docker-containerized and Ansible-provisioned applications
  • Research and implementation of “blessed” internal libraries for request tracing and RPC
  • Maintenance and user support for the Vagrant development VM and Rig CLI

Front-end Developer, Games Team May 2014 - October 2015

I was the first developer hire for BuzzFeed’s (now defunct) Games Team (BuzzFeed has games?). My achievements in this position include:

  • Designing and developing public-facing games and interactive formats
  • Building game creation tools for BuzzFeed writers to make games on their own
  • Spearheading the integration of Twine with our website allowing writers to create choose-your-own-adventure games
  • Creating and maintaining the Games Team’s build and deploy tools

We worked primarily in Javascript, both for the games themselves and our Grunt deploy tool. We also used S3 and a bit of Ruby for our infrastructure and internal tools.

Donut.js

Organizer + Event Handler June 2016 - June 2017

I helped to run Donut.js, Portland’s greatest sweet treat-themed Javascript meetup. Donut.js was a 3-hour event held monthly where we prioritized inclusivity and hosted lightning talks from a diverse slate of speakers.

Paperless Post

Software Engineer + Tech Lead June 2010 - May 2014

I led a team and later helped supervise the daily development activities of the 30-plus engineering team at Paperless Post. My responsibilities included:

  • Developing features in all of our web services and applications
  • Supporting development by improving or creating internal tools and making changes to our Chef infrastructure
  • Breaking down high-concept goals from management (like “optimize the site for the holidays” and “modernize our Javascript development process”) into tasks for the engineering team (like “fix these three database queries” and “organize our Javascript files and keep the lint count at zero”)
  • Mentoring and advocating for our developers
  • Working with the CTO to identify and solve communication and interpersonal problems

We used many tools, including Ruby, Rails, Javascript, ActionScript, Postgres, Redis, Go, and Chef.

Website: http://paperlesspost.com

Thrive + LendingTree

Software Engineer August 2009 - April 2010

Rebel Monkey

Software Engineer December 2008 - July 2009

NextJump

Software Engineer February 2008 - October 2008

Georgia Institute of Technology

B.S. Computational Media August 2003 - December 2007