About

Hi, I'm Olivia! I'm currently a Senior Software Engineer at Twitter. Before this I worked on a bunch of seemingly random things that have actually given me a great perspective on working on different parts of the stack and helped me become the engineer I am today. Some of those include designing and building a backend for Daisie, shipping Amazon Video to a bunch of TVs and set-top boxes, building services for Office 365 at Microsoft and building games for kids at Xbox.

I love tech and I love creating software that lasts. I occasionaly speak at events and run workshops. The views expressed on this website are entirely my own and not associated with any company past or present.

Blog

    6 months of game development in Rust

    6 months of game development in Rust

    If you made it here you might have already read my previous post 24 hours of game development in Rust , but if you haven't, it was…

    Making a basic game UI with imgui and ggez

    Making a basic game UI with imgui and ggez

    In this post I'll walk you through how you can create game user interface with imgui and ggez. I spent a lot of time trying to make this…

    Entity component system (ECS) explained with tennis players and courts

    Entity component system (ECS) explained with tennis players and courts

    In the last post I talked about a small game I built in Rust and roughly how far I got in 24 hours. One of the biggest challenges I had was…

    24 hours of game development in Rust

    24 hours of game development in Rust

    In this post I'll talk about a small game I've been developing in about 24 hours in total (mostly in a few hour blocks during evenings or…

    Design patterns

    Design patterns

    what are design patterns? Let's start by defining design patterns. All this talk these days, but what are they really? Well, simply put…

    FizzBuzz in 10 languages!

    FizzBuzz in 10 languages!

    FizzBuzz , as you might have heard, is a simple programming challenge given as an interview question to see if someone can code or not…

    2018 year in review

    2018 year in review

    I've been reading a couple of year in review blog posts these days and I got inspired to write my own. 2018 has been a great year and it's…

    How to deploy a personal Gatsby site to Github pages

    How to deploy a personal Gatsby site to Github pages

    I recently revamped my personal website to use Gatsby and I spent a little more than I thought it was necessary to figure out how to…

    Encoding - Run length encoder

    Encoding - Run length encoder

    This post is the start of a mini-series on data compression . Over the course of the series we will look at some algorithms for encoding…

    Count min sketch explained

    Count min sketch explained

    Last time we looked at Bloom filters, which is one type of probabilistic data structure. In this post we will look at another one - Count…

    Implementing a Bloom filter - Part 3

    Implementing a Bloom filter - Part 3

    Last time we looked at how the internals of Bloom filters work. In this post, we'll get our hands dirty and implement it. We'll set up an…

    Implementing a Bloom filter - Part 2

    Implementing a Bloom filter - Part 2

    Last time we talked about what a Bloom filter is and why you might use it. In this post we will cover how Bloom filters work internally and…

    Implementing a Bloom filter - Part 1

    Implementing a Bloom filter - Part 1

    In this series we will implement a very simple Bloom filter in c++. But first things first. What's a Bloom filter? Simply put, a Bloom…

    Hello world

    Hello world

    Hello world, this is the first post! And now some fake JavaScript. What is Lorem Ipsum? Lorem Ipsum is simply dummy text of the printing…

Contact

If you'd like to reach out, please do so at olivia_github@outlook.com.