Software Engineer

Software EngineerLead Software EngineerHard

This interview process is designed to assess candidates for the Lead Software Engineer position at Revolut. It evaluates technical expertise, problem-solving skills, leadership potential, and cultural fit within the company.

Rounds·4

Timeline·~14d

Experience·5 - 10 yrs

Comp band·US$130000 - US$180000

Interview time·210 min

Evaluation

What they measure.

  • Technical depth and breadth
  • Problem-solving approach
  • System design capabilities
  • Leadership and mentoring skills
  • Communication and collaboration

Preparation

How to prepare.

Tips

  1. Thoroughly review data structures and algorithms, focusing on advanced topics and their practical applications.
  2. Brush up on system design principles, scalability, and distributed systems concepts.
  3. Prepare to discuss your past projects in detail, highlighting your contributions and technical challenges.
  4. Understand Revolut's business model, products, and recent news.
  5. Practice behavioral questions using the STAR method (Situation, Task, Action, Result).
  6. Be ready to articulate your leadership philosophy and experience mentoring engineers.
  7. Familiarize yourself with common technologies used at Revolut (e.g., microservices, cloud platforms, specific programming languages).

Study plan

Fig · Study plan — 04 phases

01 / 04
01

Phase 01 of 04

Data Structures & Algorithms

Weeks 1-2: Advanced DSA practice (LeetCode Medium/Hard).

Weeks 1-2: Focus on core data structures (trees, graphs, heaps) and algorithms (dynamic programming, graph traversal, sorting). Practice problems on platforms like LeetCode, focusing on medium to hard difficulty. Review time and space complexity analysis.

Questions

Commonly asked.

  • Design a URL shortening service.
  • How would you design a system to handle real-time stock price updates for millions of users?
  • Describe a challenging technical problem you solved as a lead engineer.
  • How do you ensure code quality and maintainability in a large codebase?
  • Tell me about a time you had to manage a conflict within your team.
  • What are your thoughts on microservices vs. monolith architecture?
  • How do you approach performance optimization in a distributed system?
  • What is your experience with cloud infrastructure (AWS/GCP/Azure)?
  • How do you mentor and develop junior engineers?
  • Describe a situation where you had to make a significant technical decision with incomplete information.

Locations

Regional differences.

Fig · Regions — 03 locations

01 / 03

Location

London

Interview focus

Deep understanding of financial technology and its challenges.Experience with regulatory compliance in the FinTech sector.Ability to lead technical initiatives in a fast-paced, regulated environment.

Common questions

  • How would you mentor junior engineers in a distributed team?
  • Describe a time you had to influence a team to adopt a new technology. What was the outcome?
  • In our London office, we often deal with high-volume, low-latency trading systems. Be prepared for questions on concurrency and distributed systems specific to this domain.

Tips

  • Research current trends in FinTech and Revolut's specific market position.
  • Be ready to discuss your experience with financial regulations and compliance.
  • Highlight any experience with high-frequency trading or payment systems.

Rounds

Round-by-round.

Expand a step for evaluation criteria, sample questions, and prep notes.

Med

Technical Interview · 45 min · Software Engineer

This round focuses on your fundamental programming skills. You will be asked to solve coding problems that test your knowledge of data structures and algorithms. The interviewer will assess your ability to write correct, efficient, and well-structured code, as well as your problem-solving approach and communication skills.

What they look for

Logical thinkingClean and efficient codeUnderstanding of trade-offsAbility to explain solutions clearly

Evaluation

  • Problem-solving approach
  • Coding proficiency
  • Understanding of data structures and algorithms
  • Ability to write clean and efficient code

Sample questions

  • Given an array of integers, find the contiguous subarray with the largest sum.

    ArrayDynamic Programming
  • Implement a function to reverse a linked list.

    Linked ListPointers
  • Find the k-th smallest element in a binary search tree.

    TreeBinary Search TreeRecursion

Prep for this round

  1. 01Practice coding problems on platforms like LeetCode, HackerRank, or Coderbyte.
  2. 02Focus on understanding the time and space complexity of your solutions.
  3. 03Be prepared to explain your thought process step-by-step.
  4. 04Practice coding in your preferred language and ensure you are comfortable with its standard library.

Common rejection reasons

  • ×Lack of fundamental understanding in core CS concepts.
  • ×Inability to articulate thought process clearly.
  • ×Poor time complexity analysis.
  • ×Difficulty in debugging code.

DSA

Coding questions at Revolut.

Frequently reported on Revolut loops

Other guides

More at Revolut.