Lily Riley, Operational Transformation Developer in San Francisco, CA, United States
Lily Riley

Operational Transformation Developer in San Francisco, CA, United States

Member since March 12, 2020
Lily is a tech lead and senior software engineer with around 15 dedicated years of experience writing code and working with Linux. She has done a bit of everything related to development, including front end, full stack, back end, firmware, mobile, virtualization, and game programming.
Lily is now available for hire

Portfolio

  • Oculus VR
    React, React Native, C++, Android, Java, Front-end, React VR, Oculus...
  • Layer
    Erlang, PostgreSQL, RabbitMQ, Apache Cassandra, Redis, Scala, Docker, Linux...
  • Lever
    Node.js, DerbyJS, Operational Transformation, JavaScript, MongoDB, Redis...

Experience

Location

San Francisco, CA, United States

Availability

Part-time

Preferred Environment

Linux, Elixir, Erlang, Elm, Phoenix, C++, JavaScript

The most amazing...

...team I was a part of was the system UI team for the Oculus Quest, a popular VR headset sold by Facebook.

Employment

  • Software Engineer

    2018 - 2019
    Oculus VR
    • 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.
    Technologies: React, React Native, C++, Android, Java, Front-end, React VR, Oculus, Oculus Go, Hardware, Unreal Engine
  • Platform Engineer

    2016 - 2017
    Layer
    • 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.
    Technologies: Erlang, PostgreSQL, RabbitMQ, Apache Cassandra, Redis, Scala, Docker, Linux, Microservices, Back-end, APIs, Apache Thrift, Cassandra, Google Cloud, Google Compute Engine (GCE)
  • Infrastructure/Software Engineer

    2014 - 2016
    Lever
    • 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.
    Technologies: Node.js, DerbyJS, Operational Transformation, JavaScript, MongoDB, Redis, Docker, Linux, CoffeeScript, Full-stack, AWS, CSS, Web App Development, RESTful Development, RESTful APIs, REST
  • Instructor

    2014 - 2014
    Fullstack 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.
    Technologies: Node.js, Express.js, Angular, MongoDB, PostgreSQL, AngularJS, Full-stack, JavaScript, Teaching, Ruby on Rails (RoR), Ruby, CSS, Web App Development
  • Software Engineer

    2011 - 2011
    ABI 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.
    Technologies: Java, Dojo Toolkit, JavaScript, Scala, Django
  • Software Engineer

    2006 - 2010
    South 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.
    Technologies: Django, Dojo Toolkit, Python, JavaScript, Linux

Experience

  • Oculus Quest System UI
    https://www.youtube.com/watch?v=Cd-WCWPc06Q

    Worked with a team of engineers to prepare the existing Oculus Go UI for the Quest, which supported spatial tracking (as opposed to the seated experience in the Go). Was mainly responsible for the main navigation bar, various work in the main panels such as the settings screen, and some features in the 3D compositor that renders panels spatially.

  • Custom Crkbd Keyboard
    https://github.com/0chroma/CrkbdBongo

    I built a split keyboard using a kit ordered online. Using the open-source project QMK, I wrote my own firmware and keymap for the device and flashed it to the keyboard's microcontroller. It features animated LED effects and two OLED screens that can display various animations and typing stats.

  • VFIO GPU Passthrough
    https://gist.github.com/0chroma/ed9590f4c79daaeb482c2419f74ed897

    I run Linux on my computer, and to run Windows games and software at near-native speeds, I use a highly optimized virtual machine. It accomplishes this by passing the GPU into the virtual machine using a technology called IOMMU, which is available on more recent motherboards. I've spent a lot of time tuning and benchmarking the performance in order to find optimal virtual machine configurations for this application.

Skills

  • Languages

    Elixir, JavaScript, Python, Bash, CSS, HTML, Erlang, Elm, C++, C, Scala, Java, CoffeeScript, Ruby
  • Frameworks

    DerbyJS, Phoenix, Django, React Native, Express.js, Ruby on Rails (RoR), Apache Thrift, React VR, Angular, AngularJS, Unreal Engine, Unity
  • Libraries/APIs

    Node.js, libvirt, React, Dojo Toolkit
  • Paradigms

    Microservices, REST, RESTful Development
  • Platforms

    Linux, Quick EMUlator (QEMU), Docker, Oculus, KVM, Android
  • Storage

    Redis, MongoDB, PostgreSQL, Riak, Cassandra, Google Cloud
  • Other

    Back-end, Full-stack, APIs, Front-end, Web App Development, RESTful APIs, Operational Transformation, Oculus Go, Hardware, QMK, Firmware, Custom Keyboards, Apache Cassandra, AWS, Linux Kernel
  • Tools

    RabbitMQ, Keyboards, KVM/Qemu, Terraform, Google Compute Engine (GCE)
  • Industry Expertise

    Teaching

To view more profiles

Join Toptal
Share it with others