Taro Logo

Senior Software Engineer Interview Experience - Madrid, Spain

June 1, 2023
Neutral ExperienceNo Offer

Process

I was approached by a recruiter. I had an initial interview with her, during which she asked about my background and posed some technical questions.

Then, I had a pair coding session to develop a Service Registry, focusing on TDD. This was followed by questions about concurrency and the strategy pattern.

My final round was a tech interview with two individuals. It involved a coding session to create a class for transferring money between accounts, with its main focus on concurrency.

This was followed by questions about isolation levels, indexes, optimistic locking, distributed patterns, DDD, and CQRS.

I have to say it was a peculiar moment when I mentioned that primary keys (PKs) in PostgreSQL are B-trees by default, along with clustered indexes. One of the interviewers replied that I was wrong and that PKs are hashes by default. I believe contradicting your interviewer can be a red flag, so I preferred not to engage further.

It seemed like he lacked sufficient knowledge on the topics they were asking about, which felt strange.

On the next day, I received a generic rejection email.

Throughout the entire process, I felt a bit "ignored" personally, in the sense that they didn't seem interested in knowing anything about me as a person. They only asked for a one-minute presentation, literally.

I had many doubts about Revolut's culture after reading reviews here and on other pages. This experience merely reinforced that negative perception.

Anyway, overall, it was a good experience with nice people and interesting questions.

Questions

Develop a Service Registry using TDD.

It must adhere to the following constraints:

  • A maximum of 10 records.
  • No duplicate records.

Then, implement a get() method with two strategies:

  • Random
  • Round Robin

Develop a method to transfer funds between two accounts. This method must account for concurrency.

Following this, discuss:

  • SQL statements for concurrency.
  • Isolation levels.
  • Optimistic locking.
  • Database indexes.
  • Domain-Driven Design (DDD).
  • Command Query Responsibility Segregation (CQRS).
  • Distributed logging.
  • Monitoring.

Was this helpful?

Interview Statistics

The following metrics were computed from 6 interview experiences for the Revolut Senior Software Engineer role in Madrid, Spain.

Success Rate

0%
Pass Rate

Revolut's interview process for their Senior Software Engineer roles in Madrid, Spain is extremely selective, failing the vast majority of engineers.

Experience Rating

Positive0%
Neutral33%
Negative67%

Candidates reported having very negative feelings for Revolut's Senior Software Engineer interview process in Madrid, Spain.

Revolut Work Experiences