I'm deeply thoughtful, unafraid to experiment, thrive on learning and growth, and absolutely committed to getting the job done right. I care about the details, and will obsessively iterate the user experience—whether the experience is an API or a UI workflow—until it makes people happy. I want to help build delightful software that people will love to use. I love extracting re-usable pieces of my apps and releasing them as open-source. I write tests and I love talking to actual users, and I'm not ideological.
I do my best work with collaborators; I can be a lone wolf when I've got the scent of something awesome, but I thrive when I have other people to bounce ideas off of and review code with. The end of a project is always the hardest part for me—when I can see the complete solution in my mind, I have a tendency to wander to the next big challenge. It helps to have someone remind me to stay on target.
Design & Development
- Programming Languages
- A lot: Rails, Sinatra, Flask, jQuery/UI, Underscore, Zurb Foundation, Bootstrap, backbone.js + Marionette. A little: node.js, Cocoa/Touch, ember.js.
- Development Tools
- A lot: git, Sublime Text, Coda, dotfiles, progressive enhancement, code reviews, pull requests, (B|T)DD. A little: vi(m), CI.
- Server Tools
- A lot: nginx, apache, unicorn, passenger, haproxy, redis, mysql, memcache, solr, elasticsearch, postgresql, mongoDB. A little: riak, cassandra, hyperdex, puma, celluloid.
- Design Tools
- A lot: HTML, CSS, lots of pencils, paper, and sticky notes. A little: Affinity, Illustrator, and Photoshop.
I love giving back to the community that has produced so much awesome. Here's a representative sample of things I've helped kick off:
Experience & Education
2014–now Senior Software Engineer—Agora Games
Agora's in-house product, Hydra, continues to be a powerhouse in the gaming community; we now have many launches, of all sizes, every year. 2015 alone has seen Hydra in Evolve, Batman: Arkham Knight, Mad Max, and the GotY version of Shadow of Mordor. My principal focus has been on a as-yet unannounced client project.
2013–2014 Senior Software Engineer—Articulate
Part of a small team of developers focused on building Articulate's online services offering. Our team developed a framework of ambitious HTML5/JS-based e-learning courseware authoring tools using HTML5 audio/video capture, course creation, rich editing, and annotation components.
2011–2013 Software Engineer—Agora Games / Major League Gaming
A variety of projects for North America's largest professional video game league, including: MLG.tv: streaming & archival event video; live-experience: MLG's revamped live event experience; ProGamer: MLG's profile service and statistics tracking for Starcraft 2. Currently I'm working on shipping the web version of Hydra: Agora's in-house product, which provides powerful data and statistics tools for videogames from mobile to AAA titles.
2008–2011 Software Engineer—Greenview Data, Inc.
2005–2007 Master of Science, University of Michigan School of Information.
My “concentration”: Information Economics, Management, and Policy. Extensive coursework in Intellectual Property Law and Human-Computer Interaction besides. If I could take it and I thought it would be interesting and valuable, I took it.
2003–2005 Systems Administrator, Applied Handling, Inc.
1999–2003 Bachelor of Arts, History & Philosophy, Grinnell College
Took three times as many seminar-level courses as required. Presented Honors Thesis in Philosophy. Learned Scheme.
Intellectual Property Law, Incentive and Policy Mechanism Design, Software Development Methodology, Early Medieval History, Byzantine History, 20th Century Continental Philosophy, Ontology, Ethics and Justice Theory, Straussian Socratic Philosophy, Intellectual History of 20th-Century Nationalism, Macroeconomics, Astrophysics, Sustainable Agriculture, Zero-Input Architecture, Urban Planning, Type Design, Information Architecture, Mixology, etc.