Autres postes chez Citi :IB AnalystSoftware Engineer
Citi logo

Enterprise · Guide d'entretien Software Engineer

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

L'ADN Citi (TL;DR)

Citi values a candidate's ability to navigate complex, global financial systems with a focus on risk management and client-centric solutions. Interviewers assess how well you can apply analytical rigor to real-world financial challenges, demonstrating both technical proficiency and strategic thinking.En français :Citi valorise la capacité d'un candidat à naviguer dans des systèmes financiers complexes et mondiaux, en mettant l'accent sur la gestion des risques et les solutions centrées sur le client. Les intervieweurs évaluent votre aptitude à appliquer une rigueur analytique aux défis financiers du monde réel, en démontrant à la fois des compétences techniques et une pensée stratégique.

Anglais original + traduction dans votre langue

Les entretiens tech et des multinationales se passent le plus souvent en anglais. Pour le luxe, la finance ou la pharma, la langue de travail peut être locale. Nous affichons chaque question en anglais d'abord — avec une traduction en dessous — pour que vous puissiez préparer dans la langue que votre recruteur utilisera.

Le loop d'entretien Citi

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

  1. 1

    Étape 1

    Recruiter Screen
    Motivation, role fit, logistics.
  2. 2

    Étape 2

    Coding Screen
    LeetCode-medium algorithmic problems under time pressure.
  3. 3

    Étape 3

    System Design
    Distributed systems, trade-offs at scale, architecture under constraints.
  4. 4

    Étape 4

    Onsite Coding
    LeetCode-hard, debugging, code clarity, edge cases.
  5. 5

    Étape 5

    Behavioral / Leadership
    Past evidence of ownership, influence, resolving conflict.

Zone de danger : pourquoi les candidats échouent

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

  • Ignoring the performance implications of fetching many prices concurrently.En français :Ignorer les implications de performance de la récupération de nombreux prix simultanément.
  • Introducing magic numbers or overly verbose variable names.En français :Introduire des nombres magiques ou des noms de variables trop verbeux.
  • Describing a situation without a clear resolution or outcome.En français :Décrire une situation sans résolution ou résultat clair.
  • Blaming others for the setback.En français :Blâmer les autres pour le revers.

Testez-vous : vraies questions Citi

Trois prompts réels extraits de notre base.

Type · Edge Cases

Implement a function that takes a list of financial instrument identifiers and returns their current market prices. Consider potential issues like invalid IDs, network timeouts, and rate limiting from external market data providers.En français :Implémentez une fonction qui prend une liste d'identifiants d'instruments financiers et renvoie leurs prix actuels du marché. Tenez compte des problèmes potentiels tels que les identifiants invalides, les délais d'attente réseau et la limitation de débit des fournisseurs externes de données de marché.

Type · Algorithmic

Implement a function to determine if a given string representing a sequence of financial transactions (e.g., 'BUY AAPL, SELL MSFT, BUY GOOG') is valid according to a set of predefined transaction rules (e.g., cannot sell a stock not previously bought).En français :Implémentez une fonction pour déterminer si une chaîne de caractères donnée représentant une séquence de transactions financières (par exemple, 'ACHETER AAPL, VENDRE MSFT, ACHETER GOOG') est valide selon un ensemble de règles de transaction prédéfinies (par exemple, impossible de vendre une action non achetée précédemment).

Type · System Design

Design a real-time stock quote system for millions of users. Consider data ingestion, storage, and serving low-latency quotes.En français :Concevez un système de cotation boursière en temps réel pour des millions d'utilisateurs. Prenez en compte l'ingestion des données, le stockage et la fourniture de cotations à faible latence.

+ 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 Citi

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

9 questions affichées sur 16

1

Recruiter Screen

1
  1. 1

    Type · Motivation

    Why are you interested in a Software Engineer role at Citi, specifically within our finance technology division?En français :Pourquoi vous intéressez-vous à un poste d'ingénieur logiciel chez Citi, spécifiquement au sein de notre division technologie financière ?
2

Coding Screen

3
  1. 2

    Type · Algorithmic

    Given a list of stock trades, each with a timestamp, ticker symbol, and price, find the maximum profit that could have been made by buying and selling a single stock once. Assume you must buy before you sell.En français :Étant donné une liste d'opérations boursières, chacune avec un horodatage, un symbole boursier et un prix, trouvez le profit maximum qui aurait pu être réalisé en achetant et vendant une seule action une fois. Supposez que vous devez acheter avant de vendre.
  2. 3

    Type · Algorithmic

    Implement a function to determine if a given string representing a sequence of financial transactions (e.g., 'BUY AAPL, SELL MSFT, BUY GOOG') is valid according to a set of predefined transaction rules (e.g., cannot sell a stock not previously bought).En français :Implémentez une fonction pour déterminer si une chaîne de caractères donnée représentant une séquence de transactions financières (par exemple, 'ACHETER AAPL, VENDRE MSFT, ACHETER GOOG') est valide selon un ensemble de règles de transaction prédéfinies (par exemple, impossible de vendre une action non achetée précédemment).
  3. + 1 autres questions dans ce round (inscription pour débloquer)
3

System Design

3
  1. 4

    Type · System Design

    Design a real-time stock quote system for millions of users. Consider data ingestion, storage, and serving low-latency quotes.En français :Concevez un système de cotation boursière en temps réel pour des millions d'utilisateurs. Prenez en compte l'ingestion des données, le stockage et la fourniture de cotations à faible latence.
  2. 5

    Type · System Design

    Design a system to detect fraudulent financial transactions in real-time. Focus on the data pipeline, anomaly detection algorithms, and alerting mechanisms.En français :Concevez un système pour détecter les transactions financières frauduleuses en temps réel. Concentrez-vous sur le pipeline de données, les algorithmes de détection d'anomalies et les mécanismes d'alerte.
  3. + 1 autres questions dans ce round (inscription pour débloquer)
4

Onsite Coding

4
  1. 6

    Type · Algorithmic

    Write a function to calculate the value-at-risk (VaR) for a portfolio of assets. Assume you are given historical price data and a confidence level. You can simplify the calculation (e.g., historical simulation method).En français :Écrivez une fonction pour calculer la valeur à risque (VaR) d'un portefeuille d'actifs. Supposez que vous disposez de données historiques de prix et d'un niveau de confiance. Vous pouvez simplifier le calcul (par exemple, méthode de simulation historique).
  2. 7

    Type · Debugging

    Here is a piece of code that is supposed to calculate the moving average of stock prices, but it has a bug. Find and fix the bug. [Provide buggy code snippet]En français :Voici un extrait de code censé calculer la moyenne mobile des prix des actions, mais il contient un bug. Trouvez et corrigez le bug. [Fournir un extrait de code buggé]
  3. + 2 autres questions dans ce round (inscription pour débloquer)
5

Behavioral / Leadership

5
  1. 8

    Type · Behavioral

    Tell me about a time you had to work with a difficult stakeholder (e.g., a trader, product manager) who had conflicting requirements. How did you manage the situation and reach a resolution?En français :Racontez-moi une situation où vous avez dû travailler avec une partie prenante difficile (par exemple, un trader, un chef de produit) qui avait des exigences contradictoires. Comment avez-vous géré la situation et trouvé une résolution ?
  2. 9

    Type · Behavioral

    Describe a complex technical problem you encountered on a project related to financial systems. What steps did you take to diagnose and solve it, and what did you learn from the experience?En français :Décrivez un problème technique complexe que vous avez rencontré sur un projet lié aux systèmes financiers. Quelles étapes avez-vous suivies pour le diagnostiquer et le résoudre, et qu'avez-vous appris de cette expérience ?
  3. + 3 autres questions dans ce round (inscription pour débloquer)

Débloquez toute la banque Citi

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 Citi

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

Software Engineers at Citi are evaluated on their ability to build robust, scalable, and secure financial systems. The interviews will probe your understanding of distributed systems, data structures, and algorithms, with an emphasis on how these concepts apply to trading platforms, risk engines, or customer-facing applications, ensuring reliability and performance in a high-stakes environment.

Edge Cases

Implement a function that takes a list of financial instrument identifiers and returns their current market prices. Consider potential issues like invalid IDs, network timeouts, and rate limiting from external market data providers.En français :Implémentez une fonction qui prend une liste d'identifiants d'instruments financiers et renvoie leurs prix actuels du marché. Tenez compte des problèmes potentiels tels que les identifiants invalides, les délais d'attente réseau et la limitation de débit des fournisseurs externes de données de marché.

Algorithmic

Implement a function to determine if a given string representing a sequence of financial transactions (e.g., 'BUY AAPL, SELL MSFT, BUY GOOG') is valid according to a set of predefined transaction rules (e.g., cannot sell a stock not previously bought).En français :Implémentez une fonction pour déterminer si une chaîne de caractères donnée représentant une séquence de transactions financières (par exemple, 'ACHETER AAPL, VENDRE MSFT, ACHETER GOOG') est valide selon un ensemble de règles de transaction prédéfinies (par exemple, impossible de vendre une action non achetée précédemment).

+ 1 de plus

Débloquez la grille Software Engineer pour Citi

Voir le guide complet Software Engineer

Comparer Citi avec d'autres entretiens tech

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 Citi de bout en bout

FAQ