For roughly 8 years I've been an engineer at a single company, and most of that stretch was spent on its in-house tooling. I started there straight out of university, so I rarely touched the mainstream stack the wider industry runs on. I tried to keep learning on evenings and weekends, but that is no substitute for using the tools at work. Nearly 6 months ago I started interviewing, and it was a shock to see how much ground I had lost.
My first move was grinding LeetCode, but to be honest it taught me very little. I was only memorizing individual problems. After that I switched to an online practice platform to go back over the basics and fundamentals. System design was the one big hole that remained. I watched YouTube videos on it and also worked through an online system design course, which gave me a structured way to approach those interviews. By the time the Revolut process started, many months into all this, I felt ready for whatever problem they gave me.
The process had 3 stages:
Build it: a Java coding interview where you screen-share your own IDE and construct a working system. You are allowed to use AI. I went with Cursor, and the task was a restaurant booking system.
Design it: a standard system design interview. My prompt was to design how people get automatically enrolled into an insurance product depending on where they live.
Team fit: a typical STAR-style behavioral interview.
If you get the system design round, concentrate on event-driven architectures and on how to scale a database for heavy reads as well as heavy writes. In the coding round, being fast matters most. Lean on AI to produce more, but keep yourself firmly in charge of what ends up in the code.
Discussion
Loading comments…