Revolut

Software Engineer

Software EngineerMiddle Software EngineerMedium

This interview process is designed to assess candidates for a Middle Software Engineer position at Revolut. It evaluates technical skills, problem-solving abilities, cultural fit, and experience relevant to the role.

Rounds

3

Timeline

~14 days

Experience

3 - 5 yrs

Salary Range

US$80000 - US$120000

Total Duration

135 min


Overall Evaluation Criteria

Technical Skills

Problem-solving skills
Algorithmic thinking
Data structure knowledge
Code quality and efficiency

System Design

System design and architecture
Scalability and performance considerations
Understanding of distributed systems

Behavioral and Cultural Fit

Communication skills
Teamwork and collaboration
Adaptability and learning agility
Cultural fit with Revolut's values

Preparation Tips

1Review fundamental data structures and algorithms.
2Practice coding problems on platforms like LeetCode or HackerRank.
3Study common system design concepts and patterns.
4Prepare examples for behavioral questions using the STAR method.
5Research Revolut's products, values, and recent news.
6Understand the technologies commonly used at Revolut (e.g., Java, Python, Go, microservices, cloud platforms).

Study Plan

1

Data Structures and Algorithms

Weeks 1-2: Data Structures & Algorithms fundamentals. Practice coding.

Weeks 1-2: Focus on core data structures (Arrays, Linked Lists, Stacks, Queues, Trees, Graphs, Hash Tables) and algorithms (Sorting, Searching, Dynamic Programming, Greedy Algorithms). Practice implementing these and analyzing their time/space complexity.

2

System Design

Weeks 3-4: System Design principles and patterns. Study scalability.

Weeks 3-4: Dive into system design principles. Cover topics like API design, database choices, caching strategies, load balancing, message queues, and microservices architecture. Study common design patterns and trade-offs.

3

Behavioral Preparation

Week 5: Behavioral questions preparation. Use STAR method.

Week 5: Prepare for behavioral interviews. Reflect on past experiences related to teamwork, problem-solving, leadership, and handling challenges. Use the STAR method (Situation, Task, Action, Result) to structure your answers.

4

Company Research

Week 6: Company research and question preparation.

Week 6: Research Revolut thoroughly. Understand its business model, products, company culture, and recent achievements. Prepare questions to ask the interviewer about the role and the company.


Commonly Asked Questions

Write a function to find the kth largest element in an unsorted array.
Design a system to handle real-time notifications for a social media platform.
Tell me about a time you had to deal with a production issue. What was your approach?
How would you design a rate limiter for an API?
What are the differences between SQL and NoSQL databases?
Describe your experience with unit testing and integration testing.

Location-Based Differences

London

Interview Focus

Emphasis on practical application of data structures and algorithms.Assessment of system design capabilities for scalable applications.Evaluation of collaboration and communication skills within a team.

Common Questions

How would you design a URL shortener service?

Describe a challenging technical problem you solved recently.

Tell me about a time you disagreed with a team member and how you resolved it.

Tips

Be prepared to discuss specific projects and your contributions.
Familiarize yourself with common system design patterns.
Practice explaining your thought process clearly and concisely.

Berlin

Interview Focus

Deeper dive into cloud technologies and infrastructure.Focus on performance optimization and scalability challenges.Assessment of code quality and best practices.

Common Questions

How would you optimize a database query for performance?

Discuss your experience with cloud platforms like AWS or Azure.

How do you approach code reviews?

Tips

Highlight any experience with distributed systems.
Be ready to discuss trade-offs in different technical solutions.
Showcase your understanding of CI/CD pipelines.

Process Timeline

1
Coding Round45m
2
System Design Round60m
3
Behavioral Round30m

Interview Rounds

3-step process with detailed breakdown for each round

1

Coding Round

Coding challenge focusing on data structures and algorithms.

Technical Interview (Coding)Medium
45 minSoftware Engineer

This round focuses on your core programming skills. You will be asked to solve one or two coding problems, typically involving data structures and algorithms. The interviewer will assess your ability to understand the problem, devise an efficient solution, write clean and correct code, and explain your thought process.

What Interviewers Look For

Logical thinkingAbility to translate requirements into codeUnderstanding of fundamental data structures and algorithms

Evaluation Criteria

Correctness of the solution
Efficiency of the solution (time and space complexity)
Clarity and readability of the code
Problem-solving approach

Questions Asked

Given a binary tree, invert the tree.

Data StructuresAlgorithmsTrees

Find the first non-repeating character in a string.

Data StructuresAlgorithmsStringsHash Tables

Preparation Tips

1Practice coding on a whiteboard or a shared editor.
2Think out loud and explain your approach before coding.
3Test your code with edge cases.
4Be prepared to discuss time and space complexity.

Common Reasons for Rejection

Inability to articulate thought process clearly.
Incorrect or inefficient algorithmic solutions.
Poor coding practices (e.g., lack of comments, poor variable naming).
2

System Design Round

Design a scalable system or component.

Technical Interview (System Design)Medium
60 minSenior Software Engineer / Architect

In this round, you will be asked to design a scalable system or a component of a larger system. This could involve designing a social media feed, a URL shortener, a chat application, or a distributed key-value store. The focus is on your ability to think about high-level architecture, identify bottlenecks, and propose solutions that are scalable, reliable, and maintainable.

What Interviewers Look For

Ability to design complex systemsUnderstanding of distributed systems conceptsKnowledge of various technologies and their applicationsPragmatic approach to problem-solving

Evaluation Criteria

Scalability of the proposed design
Robustness and fault tolerance
Clarity and completeness of the design
Trade-off analysis

Questions Asked

Design a system like Twitter's news feed.

System DesignScalabilityDatabasesAPIs

Design a distributed cache.

System DesignDistributed SystemsCachingNetworking

Preparation Tips

1Study common system design interview questions and patterns.
2Practice drawing system diagrams.
3Be prepared to discuss different database choices, caching strategies, and load balancing techniques.
4Consider the trade-offs of your design decisions.

Common Reasons for Rejection

Lack of understanding of system design principles.
Inability to handle scale and performance requirements.
Poor trade-off analysis.
Not considering edge cases or failure scenarios.
3

Behavioral Round

Assesses cultural fit, motivation, and behavioral competencies.

Behavioral InterviewEasy
30 minHiring Manager / Team Lead

This round assesses your behavioral competencies and cultural fit with Revolut. You'll be asked questions about your past experiences, how you handle certain situations, your motivations, and your career aspirations. The interviewer wants to understand how you work in a team, how you approach challenges, and whether you align with Revolut's values.

What Interviewers Look For

Enthusiasm for RevolutAlignment with company valuesGood communication and interpersonal skillsSelf-awareness and ability to reflect on past experiences

Evaluation Criteria

Cultural fit
Motivation for the role and company
Teamwork and collaboration skills
Communication clarity

Questions Asked

Tell me about a time you failed and what you learned from it.

BehavioralLearningResilience

How do you handle constructive criticism?

BehavioralCommunicationGrowth Mindset

Why are you interested in Revolut?

MotivationCompany Fit

Preparation Tips

1Prepare specific examples using the STAR method.
2Research Revolut's company culture and values.
3Be honest and authentic in your responses.
4Ask thoughtful questions about the team and the role.

Common Reasons for Rejection

Poor communication or interpersonal skills.
Lack of alignment with company values.
Inability to provide specific examples of past experiences.
Negative attitude or lack of enthusiasm.

Commonly Asked DSA Questions

Frequently asked coding questions at Revolut

View all