Software Engineer2018 - 2019Oculus VR
Technologies: React, React Native, C++, Android, Java, Front-end, React VR, Oculus, Oculus Go, Hardware, Unreal Engine
- Helped ship the Oculus Go and Quest headsets, aided in the transition to 3dof (stationary experience) to 6dof (spatial tracked experience).
- Contributed primarily to AUI (main system navigation bar) and VRShell (3D compositor that our UI was built on)—both components are used in the Oculus Quest, Go, and Gear VR.
- Worked in a highly cross-functional team and worked on several projects requiring tight collaboration with other teams.
Platform Engineer2016 - 2017Layer
Technologies: Erlang, PostgreSQL, RabbitMQ, Apache Cassandra, Redis, Scala, Docker, Linux, Microservices, Back-end, APIs, Apache Thrift, Cassandra, Google Cloud, Google Compute Engine (GCE)
- Worked on various microservices written in Erlang and Scala that use Cassandra, RabbitMQ, Postgres, and Redis.
- Rewrote most of the push notification service to use HTTP/2 with APNS (delivered millions of messages a day).
- Enabled developers to turn off conversation features (like read receipts) to increase participant limits on conversations (scalability).
- Helped migrate functionality over to a new distributed architecture that scales better.
- Helped diagnose issues in a complex distributed system as a part of an on-call rotation.
Infrastructure/Software Engineer2014 - 2016Lever
- Gained an intimate understanding of operational transformation (OT) algorithms.
- Contributed to core application services (Taskqueue, Data API, web front end), wrote misc components/libraries to support the team.
- Optimized OT pubsub traffic and database queries; helped migrate all services to a new OT-related database commit flow.
Instructor2014 - 2014Fullstack Academy
- Taught Node.js, Express.js, AngularJS, MongoDB/SQL, and software engineering/security.
- Wrote robotics framework and Node.js driver for Lego Mindstorms EV3 bricks.
- Worked on internal tools and a website written with Ruby on Rails and AngularJS.
Software Engineer2011 - 2011ABI Research
- Wrote various data visualization widgets in Dojo Toolkit (teardown browser, data graphs, etc.) that were integrated into a larger Java/Scala application.
- Wrote various internal applications from scratch, such as a newsletter generator.
- Accomplished fast turnarounds; employers were impressed with code velocity.
Software Engineer2006 - 2010South Side High School
- Wrote various internal applications, mainly a support ticket system.
- Applications served seven different schools within the school district.
- Helped with various IT-related things, such as setting up a Debian blade server for applications I wrote.