Member of Technical Staff, Qumulo, Inc.
In true startup fashion, I've worked on many aspects of the company's flagship distributed filesystem, which holds petabytes of data across the globe, including the atomic snapshot and replication systems. Most recently, I've led a project to overhaul the telemetry system that collects data from installed systems and make it queryable by the support engineers who have earned the company its consistent NPS scores of around 90.
Sep 2011–Dec 2014:
Software Engineer. Google, Inc.
Worked on Dremel, a massive column-store database with SQL-like interface for analyzing almost any data in the company's purview, and Flume, an embedded language for writing distributed data-processing programs, allowing users to easily harness Google-scale clusters.
Nov 2009–Aug 2011:
Principal Software Engineer. Endeca Technologies, Inc.
Researched and implemented relational-algebra optimizations to achieve high data scale and increase query expressiveness, in search applications.
Feb 2009–Apr 2009:
Senior Engineer. ITI TechMedia. (Part-time)
Created experimental software for static analysis of C++ code for the purpose of detecting concurrency flaws.
Dec 2007–May 2008:
Independent Contractor. Get Satisfaction Ltd. (Part-time)
Implemented a PHP application and library to act as a client to the Get Satisfaction Web API. Helped Get Satisfaction engineers to find and repair bugs in the API.
Sep 2006–Dec 2006, Sep 2007–Dec 2007:
Teaching Assistant, Functional Programming. University of Edinburgh
Helped create and revise assignments for first-year undergraduates to teach programming through the fundamental concepts of data types and recursion. Held undergraduate tutorial sections and marked completed assignments.
Dec 2003–Aug 2005:
Movable Type Lead Developer. Six Apart, Ltd.
Took over primary development of the weblogging application Movable Type, leading releases 3.0 through 3.2. Organized beta tests. Invented TypeKey, a protocol for secure, centralized authentication on the web.
May 2002–Nov 2003:
Independent Software and Website Development
Created custom web applications for clients, including a wiki application and e-commerce sites, using Perl. Worked independently, handling my own project management, promotion, and system administration. Quit due to falling revenues.
Aug 2000–May 2002:
Software Development Engineer. Amazon.com, Inc.
Built and deployed features for the Amazon website, including Free Music Downloads and Amazon Chat, a chat application including a client Java Applet and a replicated fault-tolerant server in C++.