The Deliveroo engineering team blog

Only awesome code.

Optimising Redis storage, part two

Counting unique users, checking if a credit card has already been used, or checking if this is a mobile user’s first visit ever — all of these require maintaining a large set of fingerprints (unique visitor ID, card fingerprint, IDFVs depending on the use case).

Because this usually needs to be queried very rapidly, Redis is naturally our store of choice. While using its SET feels obvious, what data structure to select? Are there memory/performance compromises?

This shows that while plain key/value is a safe bet, there are possible optimisations with hashes and traps to avoid with sets and sorted sets.

Read more…


Recent Articles

What it’s like to be an Android developer at Deliveroo

I’ve been with Deliveroo for over a year now, so it’s a good time to share what it’s like to be an Android developer here, how we do development, what tools we use, what are our practices etc. If you’re an engineer yourself maybe this article will help you decide if the way we work fits with yours - maybe you’ll be part of the team releasing our next Android app!

Read more…


The Unbearable Rightness of Being Wrong (A Programmer's Guide to Sanity)

Earlier this year, some awesome people who “read and write Ruby good” met at an event called RailsConf and delivered this poignant tweet in a bottle: “I love looking at my old code and hating it. It means I’m growing.”

This simple reflection by the brilliant Sandi Metz really resonated with my own - not just surrounding code quality, but the journey of developing a wider architectural awareness as well as the communication skills & empathy needed to build good software efficiently.

Read more…


What Makes a Good (Tech) Team Great

The Deliveroo Engineering team has come a long way incredibly fast and is growing even faster. Our Analytics team is undergoing similarly explosive growth, so I thought I’d talk to the newest members of that team and share why we’re so proud of our Engineering culture and how it’s grown with us. Here’s what we spoke about.

Read more…


Other Articles