Technology
Vertically scaling ordered consumption using Kafka
We built our “unordered concurrent” subscription knowing that we could eventually extend it to support ordering in Kafka
Enabling horizontal autoscaling with co-operative distributed rate limiting
Monzo runs almost 3,000 microservices to power everything. A core part of being able to run all these systems and features safely is rate limiting. In this blog post we describe how that gets us to doing what we call “distributed rate limiting.”
We built a better system for scheduling cron jobs
We built a system to define scheduled jobs that moves away from cron and adds support for timezones, better monitoring and a more delightful developer experience
How we cut time to sign up for Monzo US from 17 minutes to 4 minutes
This blog talks about how our Monzo US team revamped the signup process for customers by experimenting with signup funnel improvements, increasing the rate of completion by a massive 400%
How we run migrations across 2,800 microservices
We’ve got a lot of value from our microservices architecture (2,800 and counting!), but this architecture is not without its challenges. One of those challenges is how to make sweeping library changes across all those services.
Building a processing system for International Payments
Gain an understanding of how International Payments are sent and received and how we process them at Monzo. We are making this seamless to customers whilst also having a strong focus on development experience
The ultimate guide on using AI to ace an interview at Monzo
We think there are lots of benefits associated with AI, but we have a human approach to hiring. At every stage there is a person reviewing and making decisions to ensure we're able to bring the best people to Monzo.
How we securely generate sensitive secrets
We regularly have to create and manage secrets that grant very sensitive privileges, and so we’ve created a new process that makes it fast and easy for us to securely and verifiably perform all kinds of sensitive operations.
Making mortgages more Monzo
This blog talks about how we went 0-1 with our new Homeownership mortgage feature. It gives insight into how we transitioned from a mortgage-focused to a home-focused view, where equity (customer’s progress) sits at the heart of the experience.
Delightful Payments
This post is about how we built the Delightful Payments which directly replaced our P2P (Monzo-to-Monzo) and FPS (bank transfers) payment flows, including how we iterated on product in-parallel with design, and continuous feedback cycles.
Securing our software supply-chain better with reproducible builds for enclaves
This blog talks about how we protect our workloads against supply chain attacks, specifically by achieving bit-by-bit reproducible builds, and how we have adopted Nix an alternative to Docker for build environments.
How we use incremental modelling to handle billions of events every day
This post is an overview of how we leverage incremental modelling, a data transformation technique which helps us scale sustainably as we blast off to 10 million customers 🚀
How we measured change aversion with our new home screen
When we launched our new Monzo home screen, Katherine spent the past year focused on designing, launching and analysing experiments to understand how customers reacted to their new app. This blog explains how she measured change aversion.
User Research Insight to Impact: The Art of Scaling Impact and Crafting Goal-Driven Metrics
Drawing upon the wisdom and practices of our user research team at Monzo, this blog post captures ways to scale user research impact, craft effective goals, and define clear metrics.
Starting from scratch as a new engineer at Monzo
I’m Grace, and I joined Monzo in October ’23 as a Backend Engineer in Fincrime Business Banking. I’m here to convince you to apply for that role you really want, and about how exciting, challenging and rewarding changing roles has been for me.