- 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 related engineering.
Iron.io - Senior Software EngineerOctober 2015 - current
- Drove various initiatives to improve development processes and team collaboration.
- Helping to create an industry leading Docker-based job processing infrastructure. This involves a job server and horizontally scaled runners 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 and Web APIs using idiomatic Go. Used Amazon Web Services and Ansible for configuration management.
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++.
- 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.