Our first lunch together: why and how we spend our test day
Hello, Habr! A couple of months ago, my colleagues talked about expanding the team 5 times: from 50 then to 250 developers by the end of 2020. As you might have guessed, now we are paying a lot of attention to hiring. At the same time, we are not ready to “take in quantity”, hiring everyone in a row, saying “then we'll figure it out”. It is important for us that people really become part of our team for years to come. It was this motive that once led us to a new format of interviews - a test day. About him and will be discussed under the cut.

So that the candidate and I can get to know each other well, there is a very long hiring pipeline:
The latter, by the way, is very important: Sasha is a master of heart-to-heart conversations, able to bring even the most severe and reserved geeks into a frank conversation.
In addition to all this, we spend a test day with the candidates. It would seem, why another day? What do we want to know about the candidate and what do we want to show him? And who will agree to this at all ?!
Starting test days was not an easy decision. The HR team was not happy with the even longer lengthening of the hiring pipeline: “Good specialists will not go to us as much, they already have several offers on hand!” They said. However, there was another opinion. A test day is a unique opportunity for a potential employee to learn about the real conditions in the company without getting a job there. For instance:
If I had such opportunities in every place that I ended up getting, I would definitely not go to some of them. And it would be much less gray now.
Of course, the test day is also the opportunity for the company to look at the candidate in business:
Based on the above, the "test day" can not be less than 5 hours. We also try to take a candidate for lunch, this gives him the opportunity to look at potential colleagues in informal communication. And we take a look at the candidate outside the office.
At the same time, it makes no sense to extend this practice to all vacancies in a row. For example, we do not spend test days for juniors: novice developers require serious team efforts to dive into the code and when working on tasks. One day will not be able to show their potential.
Indeed, in 1.5 years we hired more than 40 people and only 4 developers left us: one went to start up his own business, and the rest moved to Europe.
The fact of a test day is surprising among candidates. Having recovered from the shock, they ask basically the same questions. I will answer them in the form of a blitz. I think it will be interesting to you too, my reader:
Want to try a test day? Come and spend it!

Spoiler with numbers.
For 1.5 years, we hired more than 40 people and only 4 developers left us: one went to start a business, and the rest moved to Europe.
Intro
So that the candidate and I can get to know each other well, there is a very long hiring pipeline:
- HR interview
- technical interview
- interview with CTO.
The latter, by the way, is very important: Sasha is a master of heart-to-heart conversations, able to bring even the most severe and reserved geeks into a frank conversation.
In addition to all this, we spend a test day with the candidates. It would seem, why another day? What do we want to know about the candidate and what do we want to show him? And who will agree to this at all ?!
Test Day at Dodo
Starting test days was not an easy decision. The HR team was not happy with the even longer lengthening of the hiring pipeline: “Good specialists will not go to us as much, they already have several offers on hand!” They said. However, there was another opinion. A test day is a unique opportunity for a potential employee to learn about the real conditions in the company without getting a job there. For instance:
- Learn about real working conditions . What jobs, furniture, computers. Are there windows in the rooms where IT employees sit (after all, they often put them in rooms without windows: “anyway, they look at their monitors all day”).
- Find out who will have to work with . The interview leader Timlid is great, but you have to work as a team. And to see who it consists of before accepting the offer is definitely not superfluous. Imagine that you will work in tandem with one of the developers and you will have the opportunity to spy on the other pairs and see if you can work side by side with these people.
“Side by side” literally. We actively practice pair programming. Working in a pair is much more efficient, especially for developers who have recently come to us. And the test day provides a unique opportunity to conduct a “test drive” of pair work in person. - Find out what you really have to do . All these lists of cutting edge technologies, which are indicated in the vacancies, are great, for us it is longer than the Rapunzel braids. But it is rarely related to the current tasks for which you will be taken. It would be nice to take a look at the backlog, the product code and
cry tounderstand what you have to do and whether you want to do it yourself . - Learn about the tools you have to use . Learn in practice about coding rules and how they are followed. For example, it is customary for us to work in Rider, and not Visual Studio. It can be so unusual that it will become critical when deciding whether to come to us. Similar nuances exist almost everywhere (as a rule, due to historical reasons) and it is better to learn about them before signing an employment contract.
- Find out how a real working day in a team goes . In any decent team you will have at least daily stand-ups. It is important to see how they go in order to understand how the team members communicate with each other, what the atmosphere is in it. In Dodo, we go a little further and invite the candidate to the general public activities of the current day: devForum, planning or review. Something happens every day, so there is an opportunity to take a broader look at the interaction of potential colleagues with each other.
For a candidate, a test day is, first of all, an opportunity to make an informed decision whether he is ready to work in this company. Zero advertising bullshit, only real facts.
If I had such opportunities in every place that I ended up getting, I would definitely not go to some of them. And it would be much less gray now.
Of course, the test day is also the opportunity for the company to look at the candidate in business:
- We want to reliably recognize “interview masters . ” The best way to do this is to look at the person in the process of real work. How fast does he begin to navigate the new code? Reading the code is, by some estimates, up to 70% of the developer's time. At the same time, we look at what solutions he offers on the task, how he writes the code, and whether he follows accepted standards.
- We want to understand how active a person is, capable of acting as the initiator of a solution . Of course, it’s difficult to start immediately offering solutions for an unfamiliar code. But in large systems like Dodo IS , you will encounter unfamiliar code after a year of work. If a person at the bottom of the test sits with the look “come on, show me how to do it” - this is a bad sign.
- We want to know how “comfortable” people are at work . This is especially important when pairing: will a potential colleague “tear out the keyboard” from a partner? Will he be able to calmly convince him of the correctness of his decisions or explain his mistakes? Pair work is a very close interaction of intellects and a new employee should not be “toxic” in such an interaction.
Based on the above, the "test day" can not be less than 5 hours. We also try to take a candidate for lunch, this gives him the opportunity to look at potential colleagues in informal communication. And we take a look at the candidate outside the office.
At the same time, it makes no sense to extend this practice to all vacancies in a row. For example, we do not spend test days for juniors: novice developers require serious team efforts to dive into the code and when working on tasks. One day will not be able to show their potential.
We came up with a test day format as an alternative to the test task. I think that it is obvious to many that the completed test task (especially to the developer) leaves more questions than answers. At the same time, many excellent candidates are simply scored on him.
results
Indeed, in 1.5 years we hired more than 40 people and only 4 developers left us: one went to start up his own business, and the rest moved to Europe.
Popular Test Day Questions
The fact of a test day is surprising among candidates. Having recovered from the shock, they ask basically the same questions. I will answer them in the form of a blitz. I think it will be interesting to you too, my reader:
- Is a test day paid? Not.
- What if I am in another city? If the vacancy involves work in the office, you need to come to this office on a test day. Which is logical. Otherwise, you will not be able to find out anything from the list above.
- Must I go to dinner? Not. You can bring your own - it's even better if you plan to always have your own. You can find out if our kitchen is suitable for your dinners.
- What to bring with you? In winter, you should take a shift - it will be more convenient. Nothing more.
Want to try a test day? Come and spend it!