I applied online. The process took 2 months.
I went through the full interview process, from initial recruiter screening to the final decision. The recruiter was extremely thorough, supportive, and helpful in preparing me for each stage, and all interviewers were kind, respectful, and professional. The people I met genuinely gave me a very positive impression of the company. However, I was rejected at the final stage, largely due to system design, and the overall experience left me questioning the fairness and realism of the process. Preparing for this interview required an enormous amount of time. I spent over 40 hours preparing specifically for system design, and probably over 100 hours preparing overall. This level of preparation is simply not realistic or sustainable for many experienced engineers.
In practice, it disproportionately favours people who can dedicate the time for preparation, i.e. people with significant financial security, people without primary caring responsibilities (which statistically disadvantages women and older candidates), and candidates with linear computer science backgrounds who have had the opportunity to study and rehearse textbook models, data structures, and theoretical trade-offs. Engineers from non-traditional paths may reason differently, often grounded in real production experience, but are penalised for not immediately framing problems in the specific theoretical language expected under artificial pressure. While the feedback I received was detailed and internally consistent, it also highlighted how narrow the evaluation lens is. I also observed that interview panels appeared relatively homogeneous in background, largely reflecting traditional computer science training. This inevitably shapes what is considered “good” reasoning and reinforces a narrow definition of engineering excellence, even when everyone involved is well-intentioned.
From a hiring-signal perspective, this kind of process appears to trade off a low false-positive rate for a very high false-negative rate. Capable, experienced engineers are filtered out not because they couldn’t succeed in the role, but because they cannot optimise their lives around performing in highly artificial, time-pressured interview conditions. While the process seems inspired by FAANG-style interview loops, I hope Monzo will question whether copying those models is appropriate. Monzo is not operating at FAANG scale or problem space, and these interviews do not reflect how engineering decisions are actually made in real teams, where requirements are clarified, assumptions are challenged, trade-offs are debated, and solutions evolve collaboratively over time.
I'd love for Monzo to acknowledge that hiring frameworks are rarely neutral: they are often shaped by the backgrounds and experiences of those who succeeded under them, which can unintentionally reinforce a narrow and privileged definition of engineering excellence. This is particularly disappointing because Monzo publicly values diversity and inclusion. Processes like this quietly undermine those goals by excluding people based on time, privilege, background, and life circumstances, without that ever being the stated intent.
The following metrics were computed from 45 interview experiences for the Monzo Backend Engineer role.
Monzo's interview process for their Backend Engineer roles is very selective, failing most engineers who go through it.
Candidates reported having good feelings for Monzo's Backend Engineer interview process.