How to pass an interview to the YuMoney backend development department. Part 2

How to pass an interview to the YuMoney backend development department. Part 2

In the first part of the article, we talked about the four criteria for an ideal backend interview, how long it should last so that the candidate and the interviewer feel comfortable, and also discussed a little about practice, theory, and the form for feedback.

In the second part, we will take a closer look at the practical and theoretical sections, as well as how we evaluate each of them. We will also show what tasks we give candidates and what the feedback form looks like. And at the end, we will find out what can go wrong at the interview, what mistakes the interviewers make and how the candidate should behave in order to increase his chances.

So, we have already analyzed the components of interviews:

  • Practice – The main interview tool.

  • Theory – Additional.

  • Interview partially structured.

  • We remember about timing: time is limited, candidates are not ready to talk for eight hours.

  • Should be the only form of feedback.

The practical section takes place online, consists of three stages and lasts a little over an hour.

This is what a real task for a candidate looks like:

This is a transaction reconciliation task that we have slightly modified and adapted.

In order to preserve the working environment for the candidate as much as possible, we do not invite him to the office – during the interview, he connects to us on Zoom and performs tasks sitting in his favorite chair at the computer. It works in the usual development environment – it is most likely IntelliJ IDEA. The candidate has an interviewer who is ready to help him and answer questions according to the task.


The practical section is held online because we want the interview to be valid. After all, if you give a candidate a task and he goes to do it offline, and then sends the result, it will be unclear whether he did it himself, asked someone else, or even used ChatGPT.


The practical section consists of three stages:

  • on the first we check that the candidate knows how to program and give him a simple task.

  • on to the second At the stage, we see how he performs the main part of the task.

  • And on the third discuss the results of what the candidate did.

In terms of time, all stages take approximately one hour and 15 minutes.


Since the interview takes place in an online format, we can monitor both the process and the result. If the candidate took the assignment home, we would only see the result — the quality of the code. And so we understand how the applicant works with the development environment, how he clarifies the requirements, or uses refactorings to cope faster. All this allows us to assess what level of specialist we have.


How we evaluate practice during an interview

Practice consists of the following rubrics:

Process:

  • technical communication,

  • problem decomposition,

  • work with requirements,

  • knowledge of IDE.

Result:

  • code style,

  • code structure,

  • security programming,

  • error handling,

  • refactoring,

  • execution result.

Let’s analyze two examples from the process and result parts: protective programming and decomposition of tasks.

In the first case, we need to understand whether the candidate knows what defensive programming is and how he uses this technique. To assess the skills of the applicant, we have a simple three-point grading: poor, mixed or good. There are three possible developments:

  • The candidate does not use or know about security programming.

  • Uses, but unsystematically or mistakenly.

  • Uses sensibly and we have no critical comments.

Now about decomposition of tasks. At the interview, we watch how the candidate begins the task:

  • He immediately rushes to do things, is distracted by other things and works unsystematically.

  • Breaks a complex task into parts, but does not do it completely. Engages in secondary tasks instead of important ones.

  • Breaks down a complex task into subtasks, knows how to separate the main from the minor and plans the work in advance.

The third option talks about a good level of programmer training.

After the practical part, the interviewers evaluate the candidate’s competencies in a special form for feedback.

The theoretical section lasts about half an hour, contains basic and additional rubrics.

The theory consists of three types of questions:

  • Knowledge questions. They are closed (“What types of collections do you know?”) and open (“How does ConcurrentHashMap work?”). I don’t really like knowledge questions because the answers can be memorized, especially when it comes to closed questions. Open in this way, it is better to see how a person explains his answer. But even such questions do not test the candidate’s practical skills.

  • Behavioral issues. For example, “How do you prefer to work with collections: imperative or functional style? And why?”. Such questions make it possible to understand what reasoning the candidate is guided by in his work. But usually the answer is based on the applicant’s past experience, and in a new situation he will not find patterns that he can apply to it. That is what situational questions are for.

  • Situational questions. For example, “Which collection would you choose if you had to… and why?”. Such questions allow you to check the candidate in a situation where there is a work task and it needs to be solved. These questions are the best, but the hardest to come up with. Plus, in order to discuss such issues with the candidate, the interviewer must be highly qualified.

The theoretical part has its own peculiarities

  • We have a set of pre-prepared topics and questions.

  • We adapt to the level of the candidate and the course of the interview — we do not ask Junior-level specialists questions for Senior and vice versa.

  • If we start talking about something with the candidate, we develop this topic and smoothly move on to others.

  • Our theory rubrics are standard: basic and additional.

Basic we ask everyone:

  • Java: Objects & Types.

  • Java: Collections.

  • Java: Streams API.

  • Databases: Transactions.

  • Databases: Indexes.

  • Databases: SQL Queries.

Additional – Only for candidates of Middle level and above:

  • Java: Memory.

  • Java: Concurrency.

  • Network.

  • Architecture.

Java is tested by a practical task, but databases are not, so we ask for it.

How we evaluate the theory during the interview

Gradation in theory is the same for all rubrics and is based on the depth of understanding of the topic:

  • The answers are either no or it is not relevant. The candidate has no understanding of how to use the technology and does not know the basic principles of its operation. Makes a lot of mistakes.

  • There is a basic understanding of device technology only at a level that allows it to be used, but there is no structure in the answer.

  • The candidate’s explanations are clear and logicalhe knows the principles of work. When determining the field of application, the candidate relies on an understanding of the internal device of the technology.

At the end of the interview, the interviewers who participated in it will reach a decision collegially. This is done in the form of feedback. Feedback from the theory is the same as from the practical part: there are rubrics, evaluation and comments.

We make decisions quickly, because we have all the necessary information. After a two-hour interview, if the decision is positive, we immediately make an offer to the candidate.

What can go wrong during an interview

There is a human factor and various types of distortions:

  1. The diversity effect. When strong candidates come first, then a little weaker and the latter seem frankly weak to us.

  2. Halo effect. When the interviewer asks a question about the architectural section, the candidate begins to answer and chatter to the interlocutor without saying anything of substance. But the interviewer does not notice this and gives a good mark for architecture, although he should have given it for communication skills.

  3. Emphasis on the negative. If the candidate does not answer the first three questions, we cling to it, and do not notice the correct answers to the other questions. Therefore, the final assessment shifts in the negative direction.

What are our requirements for interviewers and what mistakes can they make

YuMoney has different interviewers: some are stricter, some are softer, and some are afraid to offend the candidate and give an average rating. But we need to evaluate the professional qualities of the applicant, and if he did not show any competence during the interview, it does not always mean that he does not know something. Perhaps he simply did not discover her at this particular moment.

Sometimes mistakes in preferences occur when we rely on the first impression: we ask the candidate, he is wrong, and we decide that he is not right for us. It can be attributed here the principle of the superiority of similar. For example, I have a tendency to choose candidates with specialized education, although I understand that only the knowledge and skills of the applicant should be evaluated.


You can also play a bad joke with the interviewer bias error. For example, a candidate comes to an interview with blue hair, and the interviewer thinks that he is frivolous. But this is wrong, we try to notice such moments and fight against them.


Tips for candidates who are going to an interview at YuMoney

  1. When you get a task for an interview, sure specify requirements or conditions. Understand what they want from you. If you do not understand this immediately, you will do the wrong thing and waste time. And time is limited.

  2. When you know the task, definitely show alternative solutions. You can simply mention other options and explain why you chose this one. Argue your choice immediately, this will give you an advantage over other candidates.

  3. Focus on the task or question. I often see candidates get distracted or take a long time to get started on an assignment. Cross yourself and try to get straight to the point, start with clarifying questions.

  4. Show independence. No one will lead you by the hand, except during the adaptation period. I have seen many times how in an interview the candidate waits for the interviewer to tell him or reveal the details of the question himself. This is not the best position.

  5. Be open-minded. From my observations, if candidates don’t know the answer to a question, they try to make something up. But it’s better to just say you don’t know and try to reason. The interviewer will be happy to talk to you if he has time.


Hiring is not easy, both for candidates and interviewers. We hope this article will be useful to both.

Write in the comments what you think and ask questions about interviews in the backend of YuMoney. We will answer everyone.

Related posts