Monzo, the London-based bank that started as an app, publishes a clear description of its backend engineering interview, and it departs from the usual pattern: no whiteboard puzzles, a choice between a take-home and a pair coding session, and a request that candidates not use LLMs during interviews. This page covers what Monzo builds and who it hires, the process candidates commonly report, the technical depth the teams care about, representative problem types, what interviewers score, and a three-week prep plan.
What Monzo builds and who it hires
Monzo runs its bank on its own platform. Talks by its engineers describe a backend of roughly two thousand microservices, most written in Go, running on Kubernetes with Cassandra as the main database and Kafka for messaging; a QCon London 2023 talk put the count at nearly two thousand services. Teams build current accounts and payments, cards, lending, financial-crime and fraud prevention, the iOS and Android apps, and the platform tooling that lets hundreds of engineers ship small services safely.
- Backend engineers: Go services for payments, lending, cards and financial crime.
- Mobile engineers: the iOS and Android apps.
- Platform engineers: Kubernetes, Cassandra, observability and developer tooling.
- Machine learning and data engineers: fraud detection, risk and analytics.
What the process tends to look like
| Stage | What happens | How to prepare |
|---|---|---|
| Recruiter call | The process, the role and how backend engineers contribute to Monzo's mission | Ask which team or area the role sits in |
| Initial call | About an hour with engineers on a recent project: implementation details, trade-offs and what you would do differently; Monzo says there is no whiteboarding or live coding | One project you shaped, explained in depth |
| Take-home or pair coding (your choice) | A small program in your own language and IDE with a README, reviewed on a later call; or a 45-minute session implementing functions against an interface with pre-written unit tests, in a language such as Go, Python or Java | Idiomatic, tidy code with no extra features |
| Systems design | A hypothetical problem unrelated to Monzo, sketched with an engineer in a tool such as Excalidraw, with new information added as you go | Trade-offs, failure handling and shared understanding |
| Behavioural | An hour with two interviewers on communication, learning, teamwork and delivering projects; a hiring committee then reviews all the feedback | Clear stories on what you personally led |
Processes differ by team, level and office and change over time, so treat this as the common shape candidates report and confirm the specifics with your recruiter.
What each Monzo stage looks for
The coding stage is not LeetCode. Monzo's post on its backend process, dated March 2025, says the pair coding session is not a speed test, not LeetCode-style and not a test of language trivia, and that documentation and web searches are allowed. For the take-home it looks at whether the program meets the task sheet and at idiomatic code, layout and data-structure choices, with no bonus points for extra functionality.
Design with shared understanding. The same post says the key goal in systems design is keeping a shared understanding of your design with the interviewer, that neat diagrams are not scored, and recommends Designing Data-Intensive Applications, especially its second part. Avoid naming technologies you cannot justify, and be ready to explain the internals of any cloud service you mention.
Money and microservices. Even though the design problem is not about Monzo, banking work rewards correctness: idempotent requests, ledgers, and what happens when one of many services fails mid-transfer. Our guide to idempotency and deduplication and our microservices interview questions are useful background for later conversations with the team.
Rules on AI. Monzo asks candidates not to use LLMs during interviews, while allowing them for preparation. Treat every stage as unaided.
Representative problem types
These are the kinds of problems candidates describe, not a leaked question list. Practice the category, not the exact question.
- Implement functions to satisfy a given interface so that pre-written unit tests pass.
- Build a small program from a task sheet, with a README on structure and trade-offs.
- Design a general-purpose system, such as a URL shortener or a notification service, with scale and failure handled.
- Discuss how you would make an API call safe to retry.
- Model state from a stream of events, such as balances from transactions.
- Walk through a past project's architecture and what you would change.
- Explain how you would roll out a change across many small services safely.
What interviewers score
- Idiomatic, tidy code: code that meets the task sheet, with sensible layout and data structures and no unasked-for extras.
- Trade-offs out loud: what you chose, what you gave up and why, in the initial call and the design round.
- Shared understanding: keeping the interviewer with you through a design rather than racing ahead.
- Clear ownership: what you personally led versus what others did, in the behavioural round.
The behavioral side
Technical rounds decide most outcomes, but every Monzo loop also asks about how you work. Prepare a short story for each of these, with a result and what you learned:
- Something you shipped end to end. Cover the user problem, your decisions, what you measured and what you would change.
- A disagreement with a teammate. Show how you made the decision on evidence and kept the relationship.
- Why this company? Connect its product and engineering problems to the work you want to do next.
Structures and sample answers for the common questions are in our software engineer behavioral answers guide.
A three-week prep plan
- Week 1: coding in your chosen language: three small programs built from a written task sheet, each with tests and a README on structure and trade-offs, plus one 45-minute timed session implementing an interface against unit tests.
- Week 2: systems design: read the second part of Designing Data-Intensive Applications, then practice three hypothetical designs aloud, covering replication, partitioning, failure and the internals of any cloud service you name.
- Week 3: initial call and behavioural: prepare one project to discuss in depth, then stories on communication, learning, teamwork and delivery that separate what you led from what the team did, and do two mock interviews without any AI help.
For practice lists, use LeetCode company-tagged questions; compare London fintech loops at Revolut and Wise; and for design rounds, read system design building blocks.
Where CoPilot Interview fits
Most of a Monzo loop is spoken: you explain an approach, defend a trade-off and talk through your past work. CoPilot Interview is an AI interview assistant whose free AI mock interview builds technical and behavioral questions from your résumé and the job description, reads them aloud and scores each spoken answer out of ten, so you can rehearse the explanation as well as the code. The free plan gives 15 minutes a day of live help in sessions of up to 15 minutes, with AI mock interviews included. Online assessments and many coding rounds forbid outside help, so practice beforehand and follow your employer's rules on the day.
Disclosure: CoPilot Interview is our product, so weigh what we say about it accordingly.
Frequently asked questions
What programming language should I use in a Monzo interview?
Go is Monzo's main backend language, but its post lists Go, Python and Java as examples for the pair coding session and lets you write the take-home in the language and IDE of your choice. Pick the one you write most idiomatically.
Does Monzo send an online assessment?
Monzo's published backend process does not include a timed online assessment. After an initial call about your past work, the technical stages are a take-home or pair coding exercise and a systems design interview. Graduate and other roles may differ.
Should I choose the Monzo take-home or the pair coding session?
Monzo lets you choose. The take-home suits people who do their best work alone and can write a clear README; the 45-minute pair session suits people who think well out loud and want a shorter time commitment. Either way, keep the code idiomatic and focused. Our <a href="/blog/monzo-interview-process">Monzo interview process</a> page covers the wider process.
How should I prepare for Monzo coding questions?
Follow Monzo's own guidance: choose the take-home or pair coding format, write idiomatic code without extras, read the second part of Designing Data-Intensive Applications for the design round, and prepare stories on communication, learning, teamwork and delivery. Practice without AI tools, since Monzo asks candidates not to use LLMs in interviews.
Can I use AI tools in a Monzo interview?
Only if the instructions you receive say so. Online assessments and live coding rounds generally forbid outside help, and some companies now state their AI policy in the invitation. Use AI to practice beforehand, and follow your employer's rules.
Practice this interview before the real one
The AI mock interview builds questions from your resume and the job description, reads them aloud and scores each spoken answer out of 10. Included on the free plan.
Start a mock interview