- 5+ years of experience working on real-world software, involving millions of lines of code, with distributed teams. Much of it is open source.
- Have consistently used my expertise in concurrency, memory safety, garbage collection and networking to conceive and ship production software.
- Pragmatic and detail oriented engineer with strong fundamentals and appetite for learning new technologies.
- Interested in distributed systems, operating systems and databases.
Iron.io - Senior Software EngineerOctober 2015 - current
- Helping to create an industry leading Docker-based job processing infrastructure. This involves a job server and horizontally scaled Docker container drivers that process millions of Docker containers every month.
- Maintaining and improving the IronMQ distributed, fault-tolerant message queue. which can process tens of thousands of messages per second on 3-5 node deployments.
- Involved with working on Docker, Web APIs and writing sophisticated applications using idiomatic Go.
Mozilla Corporation - Platform EngineerOctober 2012 - September 2015
- Significant contributor to specification and implementation of ServiceWorkers, which allows web apps to offer seamless offline-first experiences.
- Lead implementor of the Promises, Push notifications and Fetch APIs in Firefox. These allow millions of web users to have real time notifications and responsive single-page-app experiences.
- Mentored several interns to implement important projects and helped new contributors with first patches.
Mozilla Corporation - Intern May 2011 - July 2011
Involved low level data manipulation, and some assembly code generation for fast bit operations.
Started working on the first implementation of the ECMAScript Harmony BinaryData specification which
Google Summer of Code - UPnP support for the KDE desktopApril - August 2010
- Implemented a client to browse and download resources from UPnP mediaservers in C++.
- Added UPnP collections support to the Amarok media player.
- Significant experience with Java and C. Some experience with Rust, Ruby and PHP.
- Very comfortable with POSIX-like operating systems and basic system administration.
- The Gecko rendering engine and Firefox internals.
- node.js, V8 and SpiderMonkey.
- Databases like Postgres, MySQL, Sqlite, Redis, RocksDB and MongoDB.
- UI platforms like Qt, GTK and X11.
- Some experience with Amazon AWS and using Ansible for configuration management.