This document is available in HTML: http://canonical.org/~kragen/resume.html
To write useful software that helps people communicate in an intellectually stimulating environment.
Most of my recent personal projects are on GitHub. Wrote Aikidraw, an HTML5 <canvas> sketchpad. Composed some Bytebeat, which is a genre of computationally minimal electronic music, and put it on Arduino. Wrote yamemex, a one-click bookmarking and annotation system as a Chrome extension. Hosted the first SuperHappyDevHouse in Buenos Aires in December 2011. Beginning to put together a experimental school of informatics and other topics with some friends, and attending Compu-Fabrica events at the Hacklab de Barracas to recycle old computers with new software. Gave a talk on Using Python for interactive art installations at PyConAr 2011.
November 2012 to December 2012
Worked on a short contract for an Inaka client doing development with Scala and Lift.
March 2012 to July 2012
Working on client projects for this Rails-focused informatics consulting cooperative, largely HTML front-end development using jQuery Mobile, Backbone, and Rails.
February 2009 to July 2011
Founding an informatics consulting firm. Worked on client projects: KNX was a search engine for your social graph, implemented as an AJAX application with no server-side data storage, with backends using various social networking sites’ APIs (Facebook, Twitter, GMail, etc.), decommissioned because Google acquired client; Watchdog.net is an easy-to-use database of political information, unfortunately unfinished due to lack of funding. Its objective was to enable constituents to hold their elected representatives accountable. To this end, it provided information about politicians’ votes and funding.
January 2006 to February 2009
Various personal projects: digitized the first edition of the Oxford English Dictionary. Traveled around United States, Canada, and seven South American countries. Learned Spanish. Co-authored Passpet, an anti-phishing password-management Firefox extension, and a peer-reviewed conference paper on it. Wrote several open-source programs: a fast native-code compiler written in the subset of Scheme that it compiles, a simple real-time 3D engine in DHTML, a simple music sequencer in Python, a system to use LEDs as light sensors on a microcontroller, and a full-text search engine using a novel index data structure. Participated in BarCamps in Buenos Aires and Palo Alto. Rebuilt an air-cooled Volkswagen engine.
August 2004 to January 2006
With Mark Lentczner, Donovan Preston, and Jim Kingdon, helped design and implement Wheat, an experimental programming language designed for interactive web sites.
With Jesse Andrews, wrote WowBar, an open-source prototype Firefox sidebar and web service for collaborative web-page annotation. Users subscribed to annotation sources and published their own annotations as a source to which other users could subscribe. Other annotation sources included Technorati, Google PageRank, and Wikalong.
To track open WowBar tasks, designed and wrote wowbarbts, an open-source hybrid Wiki/database/bug-tracker web application.
Worked on numerous other smaller projects, including installing and administering MediaWiki; installing, administering, and writing new components in Java for Nutch; and co-authoring a CommerceNet technical report on the Nutch work.
September 2002 to August 2004
As part of a six-person Extreme Programming team, developed a network management appliance for large multi-vendor 802.11 networks. The software was written in Perl, ran as independent daemons and in Apache mod_perl on Linux, and used PostgreSQL, RRDtool, SNMP, and other networking protocols on the backend. The team won considerable market share from entrenched competitors by responding to market and customer needs and enhancing the software much more quickly than they could.
All members of the team participated in every phase of the development lifecycle, including hiring, requirements gathering, high-level architecture, user-interface design, code design, coding, debugging, testing, benchmarking, maintenance, metrics, process improvement, and employee performance evaluation.
September 2001 to September 2002
Developed data format conversion scripts and a low-end sales data OLAP system as web services.
Programmer, August 2001 to September 2001
Maintained and enhanced an RDF-like triple store stored in a MySQL database using Perl and DBI, built SOAP interfaces to screen-scraped information; built DHTML demos.
Software Engineer, June 2000 to July 2001
Research Engineer, August 1997 to June 2000
Developed GUI hyperspectral image analysis software for intelligence applications in C++ on Windows NT; developed image-processing and GIS software on Solaris in C, C++, and Perl.
ERIM International was later merged into Veridian, which was then acquired by General Dynamics.
Consultant, May 1997 to August 1997
Keane was contracted to fix Lexis-Nexis’s Y2K problems. Developed heuristic source-code analysis software to find date-handling code more quickly, automated unit testing, and fixed date-handling problems in a Lexis-Nexis text editor written in C++ that ran on SunOS 4.
Configuration Management Engineer, February 1996 to March 1997
Administered Solaris, maintained and documented in-house source-control software, supported users, administered database servers and bug-tracking software, performed builds, acquired hardware.
This résumé is up-to-date as of 2012-02-03.
References available on request.