Engineering hiring process at Teads

The Engineering team during our bi-annual Innovation Summit
The Engineering team during our bi-annual Innovation Summit

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.

Process overview

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.

http://Engineering%20hiring%20process%20at%20Teads

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:

Alizee Marion-Wuillemin Teads Recruiter

The aim of this first contact is to learn a little more about each other. The idea is to understand the candidate’s motivations following an application, an exchange on linkedin … before evaluating his/her experience, culture fit, and curiosity. We especially focus on professional projects and experience in an agile context.

We always take time to answer questions about Teads, our products and our technical stack.

We also like to get to know more about personal activities and hobbies. And if the candidate is volunteering in local Tech meetups or is an OSS contributor, of course, we should talk about it!

Alizée Marion-Wuillemin

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:

When I evaluate the submissions I mainly focus on: the algorithm, its complexity & correctness, test coverage and software engineering best practices: readability, reusability, idiomatic code style, etc.

I do not expect the candidate to over-engineer his/her submission with additional features, a UI or even an API. Rather, I look for some insights on what is his/her coding standard as a professional.

Christophe Oudar

Cyrille Dubarry is one of the Machine Learning reviewers :

Our exercise is split into two parts. In the first part I try to see if the candidate is comfortable manipulating data using his/her preferred tool and if he is capable of thinking and does not jump to conclusions too quickly.

In the second part, I do not expect the candidate to offer the best possible solution. Instead, I expect him to suggest improvements for his/her solution during the debrief and actually demonstrate basic Machine Learning knowledge (feature transformation, feature selection, cross-validation, etc.).

Cyrille Dubarry

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:

Coming from Paris, my day onsite was pretty intense and full of insights about the expectations, the organization and the culture of the company. During this day I met people from different teams, from HR, to management and pure tech people.

The technical parts of my interviews were challenging and friendly, all the necessary stuff was done to make me feel comfortable and welcome.

Gregory Truchetet
Mutual Feedback

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!

Join us

  • 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!

Scroll to Top