Summary: Software engineer with leadership skills and deep knowledge of iOS and full stack web development. Writes pretty well and plays in local bands. Willing to work in San Francisco or in East Bay near BART.
Hipmunk: Engineering manager & Mobile engineer, January 2017-present
Still working on Hipmunk for iOS and leading the mobile team, but now also managing the people on the mobile team.
Hard stuff: Hiring great engineers
Fun stuff: Hiring great engineers
Hipmunk: Mobile developer & team lead, July 2015-December 2016
Worked on Hipmunk for iOS. Became mobile team lead in January 2016. Successfully rearchitected a messy code base without rewriting it all at once or slowing down feature development. Blogged about it at http://hipmunk.github.io.
Hard stuff: shipping quickly without technical debt
Fun stuff: shipping good features to users who appreciate them
Graffiti Labs: Game & web developer, 2012-2015
Hard stuff: never properly launching; working in a tiny team for a long time
Fun stuff: evolving a large codebase over time; making a game about doodling and building
Yelp: Spam warrior, 2011-2012
Worked on mrjob, the leading Python framework for writing Hadoop jobs, eventually becoming the primary maintainer. Developed MapReduce-based spam filters. Created a new admin web app for the spam team. Briefly maintained the Tron distributed batch scheduler. Fought with Amazon Elastic MapReduce a lot.
Hard stuff: writing review filters that do more good than harm
Fun stuff: writing lots of documentation; merging large patches to OSS from strangers
Case Database and Bioinformatics Lab: Master’s student, 2011
Wrote an iPad app to browse the PathCase database of biological pathways, then wrote 120 pages about it in exchange for a graduate degree.
Hard stuff: working with a weird, undocumented SOAP API; getting Graphviz to link on iOS
Fun stuff: pretending to understand biology
Cooper Legal Group: Freelance iOS developer, 2011
Wrote an iPad app to browse the US Patent Office and view/manage individual documents.
Hard stuff: screen scraping the USPTO and their well-documented-yet-strange URL format
Fun stuff: having lawyers appreciate my design suggestions
Apple: Intern, Objective-C Runtime Team, 2010
Implemented a new graphical memory analysis tool for Xcode Instruments and used it to uncover bugs in Xcode itself. The visual object graphs in the Leaks instrument and the Xcode 8 beta resemble the tool conceptually.
Hard stuff: learning Obj-C for the first time; working with the huge Instruments codebase
Fun stuff: demoing a cool-looking graph tool to the whole dev tools group
MIM Software: Intern, 2009
Developed a prototype for new MIMcloud product in Google App Engine, including Amazon S3 integration, Java upload applet, and HTML/CSS/JS.
Fun stuff: the easygoing culture of a small, successful business
Hobbyist game development: 2003-present
Literally Canvas: 2012-present
Computer Words: 2016
Documentation tool (like Sphinx) that builds a web site from Markdown files and Python source.
Wrote and released several open source libraries used in Hipmunk’s iOS app, mostly related to Swift app architecture.
Maintained the most popular MapReduce framework for Python, including writing most of the documentation, accepting contributions from dozens of outside contributors, and wrangling Amazon Web Services. mrjob is around the 220th most popular Python package.
Education: BS & MS in Computer Science from Case Western Reserve University