Engineering hiring process at Teads
An Engineering team by the sea (mostly)
Our engineering department gathers 120+ people split into feature teams. However, if you have a look at our open positions you will notice that few of them will mention a specific team.
In fact, we are not looking to fill a specific position prior to meeting someone, we try to find the best fit within our organization depending on the candidate’s wishes. This flexibility gives room for open discussions and avoids applying too many constraints.
On average we welcome 3 newcomers every month in the engineering team. It requires quite some work and we have built and refined a standardized, yet tailored workflow to accommodate different seniority profiles.
We chose to have an in-house team of recruiters which helps in keeping up with our hiring needs in a fast-paced environment. This team is based in Montpellier (south of France) but we also hire for our two other engineering hubs in Paris and Bucharest.
In this context, it’s a challenge to ensure a consistent experience considering the number of candidates we have. If you add the fact that we frequently have new opportunities it can be even harder to keep our process as short as possible as new positions might open along the way.
The main consequence of having most of our engineering team in Montpellier is that we have to attract talents to the south of France. The upside is that it’s easier to organize open events where we can meet with potential candidates in an informal way here. We can easily invite people to join us for a pizza party at lunchtime or even play Mölkky during after-work drinks outside the office, this might sound like a detail but we’ve got great weather here!
Hanging out and sharing convivial moments is truly part of our culture.
We care about our candidate experience and we know our process is quite thorough. Our goal is to make sure that we are not wasting their time. This is a real tradeoff. We constantly assess if we should go further in the process and take up more precious time from applicants.
Step 1 — Preliminary interview
During this first short conversation (about 30 min) — preferably by phone, video conferencing or face-to-face — we mostly try to get to know each other, understand the candidate aspirations, motivations, and desires.
It’s also a moment when we take time to give an overview of Teads and figure out if the person we are speaking to has questions about our business.
Alizée Marion-Wuillemin is one of our recruiters:
Following this step, we send a debrief note to the managers involved.
We include a recap of the candidate’s experience, its strengths as well as topics that should be discussed further in the process.
We also have weekly meetings to share about candidates that are in process.
Step 2 — Technical assessment
We usually ask our candidates to do a small home exercise. Depending on the candidate, we will send a coding or machine learning test. We encourage her/him to do the exercise using their preferred language and tools. These shouldn’t take more than a few hours to complete. Sometimes a technical test is done during an interview instead.
We know that this step can be heavy on the candidate, but it gives a great basis for a technical discussion with a peer.
In each feature team, we have voluntary software and machine learning engineers that can review these exercises.
What do we expect?
Regarding the software engineering test, we expect the candidate to produce a project that works exactly as the problem states it. The code should be buildable and executable without modifications.
Christophe Oudar, one of our reviewers has some recommendations:
Cyrille Dubarry is one of the Machine Learning reviewers :
What happens during the debrief?
One important thing for us is that the outcome of the previous step isn’t a harsh Go/NoGo. During the technical debrief, the candidate is expected to explain the solution logic. We mainly focus on the solution weaknesses to give the candidate a chance to improve it with the help of the reviewer.
We know that this step can be stressful. But there is no trap and we encourage candidates to use all the help and guidance they can get from the reviewer.
The debriefing is also a moment where we discuss with the candidate about his/her background, experience, and an opportunity for him to ask questions about Teads with another software engineer.
Technical debrief feedback
If the results are below our expectations we do our best to give honest and transparent feedback on what the candidate can improve and work on. As a recruiter, it’s sometimes a challenge to debrief these technical points in depth.
Otherwise, we move forward with the process and will ask if he/she wants to join us for a day.
Step 3 — Onsite with the Engineering Team
Organizing a day with the team is important to us. It’s a way to meet everybody and really put the candidate in a situation where he can tell if he/she would like to join us. During this day we concentrate on software craftsmanship and culture fit.
Gregory Truchetet, who joined us about a year ago, shares about his onsite experience at Teads:
Step 4 — Mutual feedback
The first thing we do is ask the candidate to have a feedback about the onsite. Then we gather everyone involved in the process to come to a decision. All points of view are taken into consideration.
The offer/rejection step isn’t easy. But in any way, we ask the candidate about his/her personal experience going through our process and all suggestions are welcome to enhance it!
- We are hiring for all our feature teams all kinds of profiles and seniority.
- We value computer science and software engineering skills rather than specific tech or languages (not only Scala!).
- But most importantly, we hire team players and foster a diverse and inclusive culture that encourages everyone to work together.
We regularly open our doors for after-work drinks or host meetups, do not hesitate to follow our Twitter to stay informed and come meet the team!