Cabify logo

Growth · Guide d'entretien Software Engineer

Inscrivez-vous pour voir l'ATS

Comment réussir l'entretien Cabify Software Engineer en 2026

L'ADN Cabify (TL;DR)

The 'Why Cabify' interview round often probes for alignment with our mission to make cities better, emphasizing how candidates would contribute to improving urban mobility. They assess your ability to navigate complex logistical challenges, particularly in diverse markets like Barcelona or Buenos Aires Ciudad, and your capacity to adapt solutions.En français :L'entretien « Pourquoi Cabify » cherche souvent à évaluer l'alignement avec notre mission de rendre les villes meilleures, en soulignant comment les candidats contribueraient à améliorer la mobilité urbaine. Ils évaluent votre capacité à relever des défis logistiques complexes, notamment sur des marchés diversifiés comme Barcelone ou Buenos Aires, et votre aptitude à adapter les solutions.

Anglais original + traduction dans votre langue

Les entretiens dans la global tech, les enterprises américaines et les grands cabinets de conseil se passent en anglais. Chez les groupes français de luxe, la finance européenne, le Mittelstand allemand, la mode italienne et la plupart des employeurs mid-market européens, le loop se déroule dans la langue locale. Nous affichons la langue qui correspond à l'entreprise en premier - avec l'autre en traduction dessous - pour que vous puissiez préparer dans la langue que votre recruteur utilisera.

Le loop d'entretien Cabify

Votre loop comprend généralement 5 étapes.

  1. 1

    Étape 1

    Recruiter ScreenEn français :Entretien recruteur
    Motivation, role fit, logistics.En français :Motivation, fit du poste, logistique.
  2. 2

    Étape 2

    Coding ScreenEn français :Coding Screen
    LeetCode-medium algorithmic problems under time pressure.En français :Problèmes algorithmiques niveau LeetCode-medium sous contrainte de temps.
  3. 3

    Étape 3

    System DesignEn français :System Design
    Distributed systems, trade-offs at scale, architecture under constraints.En français :Systèmes distribués, trade-offs à l'échelle, architecture sous contraintes.
  4. 4

    Étape 4

    Onsite CodingEn français :Coding Onsite
    LeetCode-hard, debugging, code clarity, edge cases.En français :LeetCode-hard, debugging, clarté du code, edge cases.
  5. 5

    Étape 5

    Behavioral / LeadershipEn français :Behavioral / Leadership
    Past evidence of ownership, influence, resolving conflict.En français :Preuves passées d'ownership, d'influence, de résolution de conflit.

Zone de danger : pourquoi les candidats échouent

D'après notre base de retours d'entretiens Cabify, évitez ces pièges classiques :

  • Blaming the other party or focusing only on their shortcomings.En français :Blâmer l'autre partie ou se concentrer uniquement sur ses lacunes.
  • Using Euclidean distance instead of estimated driving time.En français :Utiliser la distance euclidienne au lieu du temps de trajet estimé.
  • Inefficient data structure for frequency counting (e.g., linear scan for each lookup).En français :Structure de données inefficace pour le comptage de fréquences (par exemple, balayage linéaire pour chaque recherche).
  • Describing a task that was clearly assigned and expected.En français :Décrire une tâche qui était clairement assignée et attendue.

Testez-vous : vraies questions Cabify

Trois prompts réels extraits de notre base.

Type · Architecture

How would you design a notification system to alert drivers about new ride requests? Consider factors like geographic proximity, driver availability, and minimizing notification fatigue.En français :Comment concevriez-vous un système de notification pour alerter les chauffeurs des nouvelles demandes de trajet ? Prenez en compte des facteurs tels que la proximité géographique, la disponibilité des chauffeurs et la minimisation de la fatigue due aux notifications.

Type · Edge Cases

Implement a function `get_available_cars(city_id, car_type)` that returns a list of available car IDs. Consider potential issues like database connection errors, invalid city/car types, and race conditions where a car might be assigned between the query and the result.En français :Implémentez une fonction `get_available_cars(city_id, car_type)` qui renvoie une liste d'identifiants de voitures disponibles. Prenez en compte les problèmes potentiels tels que les erreurs de connexion à la base de données, les types de villes/voitures invalides et les conditions de concurrence où une voiture pourrait être attribuée entre la requête et le résultat.

Type · Algorithm

Given a list of historical ride requests (each with pickup location, dropoff location, and timestamp), write a function to find the N most frequent pickup locations within a given time window. Assume locations can be represented as (latitude, longitude) tuples.En français :Étant donné une liste de demandes de trajet historiques (chacune avec le lieu de prise en charge, le lieu de dépose et l'horodatage), écrivez une fonction pour trouver les N lieux de prise en charge les plus fréquents dans une fenêtre de temps donnée. Supposez que les lieux peuvent être représentés par des tuples (latitude, longitude).

+ encore des questions, signaux et exemples corrigés

Inscrivez-vous pour débloquer la grille de notation JobMentis

Débloquer la grille

Banque de questions Cabify

Un échantillon de notre base, regroupé par round. Inscrivez-vous pour la totalité.

9 questions affichées sur 18

1

Recruiter Screen- Entretien recruteur

1
  1. 1

    Type · Motivation

    What interests you about working on the technical challenges at Cabify, specifically within the transport and mobility sector?En français :Qu'est-ce qui vous intéresse dans les défis techniques chez Cabify, en particulier dans le secteur du transport et de la mobilité ?
2

Coding Screen- Coding Screen

3
  1. 2

    Type · Algorithm

    Given a list of historical ride requests (each with pickup location, dropoff location, and timestamp), write a function to find the N most frequent pickup locations within a given time window. Assume locations can be represented as (latitude, longitude) tuples.En français :Étant donné une liste de demandes de trajet historiques (chacune avec le lieu de prise en charge, le lieu de dépose et l'horodatage), écrivez une fonction pour trouver les N lieux de prise en charge les plus fréquents dans une fenêtre de temps donnée. Supposez que les lieux peuvent être représentés par des tuples (latitude, longitude).
  2. 3

    Type · Algorithm

    Implement a function that takes a list of active driver locations and a list of passenger requests (each with a desired pickup location) and returns a mapping of which driver is best suited to pick up each passenger. 'Best suited' can be defined as the closest driver, considering driving time (not just Euclidean distance). Assume you have a way to get estimated driving times between any two points.En français :Implémentez une fonction qui prend une liste de localisations de chauffeurs actifs et une liste de demandes de passagers (chacune avec une localisation de prise en charge souhaitée) et renvoie une correspondance indiquant quel chauffeur est le mieux adapté pour prendre en charge chaque passager. 'Le mieux adapté' peut être défini comme le chauffeur le plus proche, en tenant compte du temps de trajet (pas seulement de la distance euclidienne). Supposez que vous disposez d'un moyen d'obtenir les temps de trajet estimés entre deux points quelconques.
  3. + 1 autres questions dans ce round (inscription pour débloquer)
3

System Design- System Design

3
  1. 4

    Type · Architecture

    Design a real-time driver-passenger matching system for Cabify. Consider scalability, fault tolerance, and latency.En français :Concevez un système de mise en relation chauffeur-passager en temps réel pour Cabify. Prenez en compte la scalabilité, la tolérance aux pannes et la latence.
  2. 5

    Type · Architecture

    Design a system to estimate Estimated Time of Arrival (ETA) for passengers. How would you handle real-time traffic, driver behavior, and historical data?En français :Concevez un système pour estimer le temps d'arrivée estimé (ETA) pour les passagers. Comment géreriez-vous le trafic en temps réel, le comportement des chauffeurs et les données historiques ?
  3. + 1 autres questions dans ce round (inscription pour débloquer)
4

Onsite Coding- Coding Onsite

3
  1. 6

    Type · Algorithm

    You are given a stream of ride completion events, each containing `(driver_id, pickup_time, dropoff_time, pickup_location, dropoff_location)`. Design a system to calculate the average ride duration for each driver over the last hour, processing events in real-time. How would you handle potential out-of-order events?En français :On vous donne un flux d'événements de fin de trajet, contenant chacun `(driver_id, pickup_time, dropoff_time, pickup_location, dropoff_location)`. Concevez un système pour calculer la durée moyenne des trajets pour chaque chauffeur au cours de la dernière heure, en traitant les événements en temps réel. Comment géreriez-vous les événements potentiellement désordonnés ?
  2. 7

    Type · Code Clarity

    Refactor this Python code for calculating driver earnings, making it more readable, maintainable, and robust. Add comprehensive unit tests.En français :Refactorez ce code Python pour calculer les gains des chauffeurs, en le rendant plus lisible, maintenable et robuste. Ajoutez des tests unitaires complets.
  3. + 1 autres questions dans ce round (inscription pour débloquer)
5

Behavioral / Leadership- Behavioral / Leadership

8
  1. 8

    Type · Conflict Resolution

    Tell me about a time you had a significant disagreement with a cross-functional team member (e.g., engineer, marketer) on a product decision. How did you approach it, and what was the outcome?En français :Parlez-moi d'une fois où vous avez eu un désaccord important avec un membre d'une équipe interfonctionnelle (par exemple, un ingénieur, un responsable marketing) concernant une décision produit. Comment avez-vous abordé la situation et quel a été le résultat ?
  2. 9

    Type · Conflict Resolution

    Tell me about a time you had a significant technical disagreement with a colleague or manager. How did you approach the situation, and what was the outcome?En français :Parlez-moi d'une fois où vous avez eu un désaccord technique important avec un collègue ou un manager. Comment avez-vous abordé la situation et quel a été le résultat ?
  3. + 6 autres questions dans ce round (inscription pour débloquer)

Débloquez toute la banque Cabify

Inscription gratuite, sans carte bancaire. Vous obtenez toutes les questions + le framework, les signaux de notation et la réponse modèle pour chacune.

Débloquer toutes les questions

Parcours d'entretien chez Cabify

Comment l'ADN de Cabify se décline par fonction. Choisissez votre rôle.

Comparer Cabify avec des employeurs similaires

Même ADN, exigences différentes. Parcourez les entreprises les plus proches dans notre base et voyez comment leurs loops diffèrent.

Préparez l'entretien Cabify de bout en bout

FAQ

WorkfiveExplorer les métiers sur Workfive