Taro Logo

Software Engineer Java Interview Experience - Barcelona, Spain

July 1, 2025
Negative ExperienceNo Offer

Process

My recruiter was great and extremely nice. He helped me prepare for the Java interview.

The interviewer, however, was the source of my negative experience.

First, it took him five days to provide my results to my recruiter. Second, his English was at a B1 level, at best, for listening and speaking. While this has never been an issue for me in the past, expect no answers or assistance when you are confused about what he is asking you to implement. You will likely just receive a confused look.

The first approximately 25 minutes were spent with the interviewer looking confused about my understanding of a load balancer, which is an industry standard. I asked questions about the implementation and the load balancer, and was told to continue. I even used TDD to demonstrate my approach with test cases covering the logic and all edge cases. As I implemented the load balancer to industry standards, the interviewer still appeared confused. I communicated very clearly from start to finish. He had trouble keeping up with my code, not when I started the implementation, but when I was writing the test cases at the beginning! I assure you I write extremely clean code and prioritize simplicity over complexity, always. Ironically, the interviewer seemed to lack logic skills.

I followed and completed the requirements once I was able to correctly understand what the interviewer failed to communicate in his broken English. What he and the requirements failed to communicate was that this 'load balancer' class was actually just a server class. The class should represent a single server IP, not delegate anything. The only function of the class was to accept a maximum of 10 unique strings.

In industry standard practice, a server (with one IP) is not 1:1 with a load balancer class. This makes no sense, yet this was what the interviewer failed to interpret. A load balancer instance holds a collection of servers. The term 'load balancer' comes from the implementation of delegating user IPs to the collection of servers, and the interviewer was having trouble keeping up when I was writing this logic.

Once I coded to the interviewer’s warped understanding of a load balancer, he asked about concurrency. I answered every question correctly without hesitation and went above and beyond. At the end of the interview, the code was accepted by the interviewer, and he agreed it followed the requirements cleanly. The code consisted of about 5 unit tests and the class had 4 lines of code. I demonstrated my coding ability exceptionally, especially in Java, adapting to changes, communication, and everything a company would want from a Java developer.

After five days, I again asked for the interview results. The feedback I received was a generic template, indicating that the interviewer should not be involved in interviews for numerous reasons. The feedback can be found below.

'We appreciate the time and effort you’ve put into our recruitment process for the Software Engineer (Java) role. Your responses have been thoughtful and articulate, and we enjoyed getting to know you and your professional background.

However, I regret to inform you that after much consideration, we have decided not to progress further with your application. Please review the areas for improvement from your previous interview:

  • While the code produced is consistently clean and well-structured, there is room to improve the speed of delivery.
  • There have been instances where the implementation did not fully align with the specified requirements.
  • There were noticeable gaps in adhering to the specified requirements.
  • The task required considerable guidance and support throughout. Building greater confidence in independently tackling problems and seeking solutions proactively would be beneficial for the future.'

A few notes showing that this is just a template:

  • My speed was exceptional; the interviewer had trouble keeping up with my typing.
  • The claim of 'instances of not following requirements' was incorrect.
  • There were no 'noticeable gaps.'
  • The task did not require 'considerable guidance and support.' The interviewer did not help me with anything. His English comprehension was poor; if anything, I taught him more about Java and industry-standard load balancer definitions.

Overall, I am quite disappointed with Revolut. My interactions with the company suggest disorganization and a willingness to hire mediocre engineers with only a basic understanding. I am also disappointed by their lack of English requirements for interviewers.

I suggest you try the interviews, but please expect unorthodox processes throughout.

Questions

HR Interviewer:

What is CQRS? What is the time complexity of insert on a HashMap? What are the four DB isolation levels?

First Java Interview:

Implement a load balancer that limits 10 server instances.

Was this helpful?

Interview Statistics

The following metrics were computed from 1 interview experience for the Revolut Software Engineer Java role in Barcelona, Spain.

Success Rate

0%
Pass Rate

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

Experience Rating

Positive0%
Neutral0%
Negative100%

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

Revolut Work Experiences