Software engineer with 15+ years of experience as both individual contributor and leader. Thrives in roles that span multiple disciplines, whether at small startups or large scale organizations like Square, Google, and Wikipedia. Author of several innovative, popular open source tools. My strengths include:
- Creating software, with a broad and deep experience of the field;
- Fostering collaboration – across team members and open source communities;
- Finding a development strategy to quickly iterate towards the organization’s goals.
VRChat
Staff Software Engineer
March 2018 – June 2024 (6 years, 3 months)
- Launched multiplatform VRChat, allowing user-contributed content for both Windows VR systems and the Meta Quest. Refactored almost every aspect of the backend and migrated millions of database records to a new schema
- Created the backend and infrastructure for the Impostors system, a fleet of GPU instances that reprocesses tens of thousands of user-submitted avatars per day, in a secure environment
- Stepped in to help a team struggling to port a desktop Unity app to the cloud. Got discouraged developers talking, and scaffolded a cloud architecture, resulting in a working prototype
- Integrated Elasticsearch and scripted it to make complex, fuzzy search possible
- Decreased the time to test the backend by 87%, reduced test boilerplate by 75%, and made build errors more visible and actionable
- Led the two-factor authentication project, working closely with VR engineers, designing the UX, and writing code for the backend and web frontend
- Prototyped a system to detect stolen content, using a simple machine learning algorithm
- In my first month, saved the company my entire yearly salary
AWS, Amplitude, Bash, C#, Cloudflare, CSS, Distributed systems, Docker, DigitalOcean, ECS, Elasticsearch, Github, GitHub Actions, Go, HTML, IaC, InfluxDB, Lambda, Linux, Node.js, OpenSearch, MongoDB, Packer, PowerShell, Python, React.js, Redux, S3, SES, SQS, Terraform, Unity, VictoriaMetrics, Windows
Square
Software Consultant
July 2019 – March 2020 (8 months, part-time)
- Developed a system to cryptographically sign iOS applications with credentials stored remotely in a hardware security module (HSM), based on my isign open source library
- Managed one subcontractor, my former CTO at a previous company
cryptography, iOS, Linux, MacOS, Python, Swift
Bench Accounting
Software Engineering Team Lead
March 2017 – March 2018 (1 year)
- Led a project to migrate some customer data from a myriad collection of spreadsheets to one data store, managed by a Scala service and React frontend.
- Created a dashboard for internal accounting team performance
- Spearheaded the transition from CoffeeScript to modern JavaScript
- Improved and standardized hiring practices
Agile, Bash, CSS, HTML, Java, JavaScript, Jenkins, JSP, Leadership, Linux, Node.js, React.js, Scala, sbt, SQL
Sauce Labs, Real Device Cloud
Senior Software Engineer/Interim Team Lead
December 2014 – March 2017 (2 years, 4 months)
- Developed a bare metal testing-as-a-service platform, that allowed customers to run automated software tests on physical iOS and Android devices.
- Created and open sourced isign (~700 Github stars), a tool to cryptographically sign iOS app builds in the cloud on Linux, without expensive MacOS servers. First team to successfully analyze this protocol and release a compatible tool
Agile, Android, Bash, Distributed Systems, iOS, Leadership, Linux, MacOS, MySQL, Python, SQL
GeoMind
Solo Developer
April 2012 – December 2015 (3 years, 7 months, part-time)
- Invented an algorithm which sifted through millions of geotagged photos and directed users to interesting places. Used a very early version of React for a cross-platform mobile experience.
AWS, CSS, HTML, JavaScript, Leaflet.js, Linux, Node.js, Postgres, PostGIS, React.js, RDS, SQL
Full Stack Foundry
Entrepreneur-in-Residence
June 2013 – December 2013 (7 months, part-time)
- Helped evaluate opportunities and make connections for a seed investment firm.
Wikimedia Foundation (Wikipedia)
Software Engineer
December 2009 – January 2012 (2 years, 2 months)
- Rewrote or upgraded all systems related to uploading, licensing, managing and storing millions of media files, dramatically increasing usability and correctness in licensing
- Advocated and introduced complex JavaScript frontends to Wikipedia
- Created a JavaScript library to internationalize frontends to hundreds of different languages, now used across Wikipedia (banana-i18n, formerly jquery.i18n, 700+ Github stars)
CSS, HTML, JavaScript, Linux, MySQL, Node.js, PHP, SQL
Yahoo
Senior Software Engineer, (Upcoming.org, Flickr)
December 2006 – April 2009 (2 years, 5 months)
- Backend engineer for Flickr’s first iPhone-targeted user experience
- Improved integration between Flickr and Yahoo-internal payment systems
- Won a Hack Day award for a Flickr mapping tool
- Integrated Upcoming’s user-contributed local events into Yahoo’s main search engine
- Migrated Upcoming’s event database to true geographic search, rather than tagged cities
- Modernized Upcoming’s user experience, using JavaScript to avoid page loads
Apache, CSS, HTML, JavaScript, Linux, PHP, MySQL, SQL
Software Engineer, Google Checkout
September 2005 – October 2006 (1 year, 1 month)
- Modified Google’s sign-in system, GAIA, to securely collect payment information
- Internationalized the Checkout system to handle non-US addresses, currencies, and tax practices.
- Created payment flows for various Google products, such as Video and Earth
Bash, CSS, HTML, Java, JavaScript, MySQL, SQL
Education
Bachelor of Arts, Communication Studies, Spring 2000
Concordia University, Montreal, Quebec
Languages
English, French