
Citi Software Engineer interviews vary by team. Some start with an HR screen or online assessment, others with a Karat-administered Java or React screen. Candidates who advance face stack-specific technical rounds, system design for senior roles, and direct behavioral questions.
$118K
Avg. Base Comp
$150K
Avg. Total Comp
3-4 rounds
Typical Rounds
Not reported
Process Length
Citi's Software Engineer interviews vary noticeably by team, so treat any single loop as one example rather than a fixed script. Some processes use a Karat-administered technical screen rather than a team-run first round. One candidate's Karat session opened with core Java questions such as interface versus abstract class and the equals() and hashCode() contract. It then moved into fixing failing test cases with string and float formatting issues, solving a toll-booth problem that required counting completed journeys, and spotting a design issue in a class. Another candidate's Karat screen consisted of five React questions and one Java API question, which suggests the screen tracks the stack on your resume. Both of those candidates were rejected, so prepare for this round as a real filter.
Other entry points include an HR screen covering availability and tech comfort, or an online assessment with multiple-choice SQL, basic programming, and bash questions. Later technical rounds focus on the team's stack. Topics include Spring MVC and Spring Boot, exception handling and writing a controller, design patterns, microservices communication and event processing, AWS Availability Zones versus Regions, OOP, and algorithmic tasks such as anagram detection. A senior candidate was pushed into distributed architecture and system design. An intern-track candidate was asked to architect a resume project on a whiteboard and complete a case study.
Behavioral questions are direct. Candidates were asked why Citi should hire them when everyone has the same skills, what they know about Citi's culture, and what they think they qualify for. Communication after interviews can be slow, so follow up politely but keep expectations measured.
Synthesized from 54 candidate reports by our editorial team.
Had an interview recently?
Share your experience. Unlock the full guide.
Real interview reports from people who went through the Citi process.
I went through a multi-stage process at Citi that felt fairly comprehensive. After the initial screening, I had two technical rounds conducted over Zoom. The first technical interview covered a broad range of topics — Java fundamentals, Java 8 features, message queues, SQL, caching strategies, AWS cloud services, Spring Boot, and threading concepts. It was clear they wanted to see depth across the backend stack. The second technical round included a coding challenge: I was asked to solve the Longest Common Subsequence problem in Java, which is a classic dynamic programming problem. Beyond the coding rounds, there were questions on DBMS theory and medium-level SQL queries, along with scenario-based questions tied to my resume projects. One round also touched on object-oriented design principles and system design thinking — they wanted to understand not just my ability to code but my architectural reasoning. I also fielded questions about the programming languages I typically use and had to discuss previous projects in some detail. The process included an online MCQ assessment as well, covering aptitude and core CS fundamentals, which were straightforward. Throughout, there was a clear progression from foundational knowledge checks to more complex problem-solving and system-level thinking. The interviews felt well-structured, though the breadth of topics meant staying sharp across multiple domains was essential.
Prep tip from this candidate
Drill Longest Common Subsequence and other dynamic programming problems thoroughly in Java, and be ready to discuss caching patterns, message queue fundamentals, and AWS services with concrete examples from your past projects. The interviews tested both breadth and depth, so don't just focus on one area.
Share your own interview experience to unlock all reports, or subscribe for full access.
Sourced from candidate reports and verified by our team.
Topics based on recent interview experiences.
Featured question at Citi
Write a query to show the number of users, transactions, and total order amount per month in 2020
| Question | |
|---|---|
| Size of Joins | |
| Real-Time Transaction Streaming | |
| Attribution Rules | |
| Hurdles In Data Projects | |
| Dijkstra implementation | |
| Replace Words with Stems | |
| Concurrent LLM Serving | |
| Offer Matching API Design | |
| Loan Model | |
| Seller Type Modeling | |
| String Palindromes | |
| International e-Commerce Warehouse | |
| Text Editor With OOP | |
| Unified Event Pipeline | |
| Client Solution Pushback | |
| Index Fund Return | |
| Above Average Product Prices | |
| Why Do You Want to Work With Us | |
| Your Strengths and Weaknesses | |
| Singly Linked List | |
| Student Tests | |
| Concentric Circles | |
| Measuring Text Difficulty | |
| 2nd Highest Salary | |
| Employee Salaries | |
| Merge Sorted Lists | |
| Subscription Overlap | |
| Closest SAT Scores | |
| Empty Neighborhoods |
Synthesized from candidate reports. Individual experiences may vary.
Some candidates start with a non-technical HR call covering availability, tech comfort, and timeline; one candidate didn't advance because their availability didn't match the team's schedule. Another began with an online assessment of multiple-choice SQL, basic programming, and bash questions. An intern-track candidate had a preliminary round built around puzzle-style questions, resume discussion, and project walkthroughs.
Some processes use a Karat-administered live screen. One candidate faced core Java questions (interface versus abstract class, the equals and hashCode contract), fixing test cases with string and float formatting issues, a toll-booth problem counting completed journeys, and finding a design issue in a class. Another candidate's Karat screen was five React questions and one Java API question. Both were rejected after this stage, so prepare for it as a real filter.
Later technical rounds track the team's stack. Reports mention Spring MVC, Spring Boot, exception handling, writing a controller, design patterns, microservices communication and event processing, AWS Availability Zones versus Regions, OOP, and an anagram-detection task. One senior candidate had three roughly 40-minute face-to-face rounds that pushed into distributed architecture and system design. One application-development candidate faced a four-person video panel, and an intern-track candidate was asked to architect a resume project on a whiteboard and complete a case study.
Behavioral questions appear as a separate stage or folded into technical rounds. Candidates were asked why Citi should hire them when everyone has the same skills, what they knew about Citi and its culture, and what they thought they qualified for. They were also asked to describe themselves and walk through past projects.
One senior candidate reached an HR round after clearing the technical interviews, then heard nothing despite several follow-ups. Others described long gaps before hearing back, or a rejection a few days after the final interview. Follow up politely, but keep expectations measured.