practice a little every day, paws crossed ♡
Software Engineer Interview Questions
Practice 9403 coding, system design and machine learning questions from 546 companies, sorted by role, topic and interview round. Every question has step-by-step hints, a code runner that supports 8 languages and an AI mentor; members also get the full solution walkthrough.
- 9403
- Questions
- 546
- Companies
- 11
- Topics
- 8
- Languages
Showing 1471–1500 of 5874 results
- CitadelMediumSoftware EngineerImplement a single-producer multi-consumer ring buffer
This question evaluates understanding of ring-buffer data structures, circular indexing, fixed-capacity storage, and object-oriented design for a single-producer, multi-consumer implementation in C++.
Coding & AlgorithmsTechnical Screen - CitadelEasySoftware EngineerImplement an in-memory order book API
This problem tests your ability to design an in-memory data structure for an order book using efficient data structures to support order management and price-level aggregation.
Coding & AlgorithmsTechnical ScreenData StructuresHash MapTree - CitadelMediumSoftware EngineerImplement array merge, round-robin scheduler, and trading simulator
This problem tests your ability to manipulate data structures efficiently, implement a fair process scheduler, and manage event-driven state transitions.
Coding & AlgorithmsOnsiteArraysQueuesHeaps - CitadelMediumSoftware EngineerImplement task queue with insert, delete, execute
This question evaluates a candidate's ability to design and implement efficient dynamic priority management, including priority ordering, insertion-order tie-breaking, and support for add, remove, and execute operations.
Coding & AlgorithmsOnsite - CitadelMediumSoftware EngineerIn-Memory Spreadsheet with Formulas, Cycle Detection and Read vs Write Computation
Implement a simplified in-memory spreadsheet in Python with set_cell, set_formula and get_cell, where formulas use the four arithmetic operators and may reference other formula cells. Follow-ups test circular-reference detection, legal repeated references, and the trade-offs of computing values on read versus on write, including caching and invalidation.
Software Engineering FundamentalsTechnical Screen - CitadelMediumSoftware EngineerMaximize Earnings by Adding Working Days
Maximize schedule earnings by changing at most k days off into working days, balancing fixed daily pay with bonuses for consecutive working days.
Coding & AlgorithmsTechnical Screen - CitadelMediumSoftware EngineerMaximize Earnings by Converting Days Off
Tests dynamic programming and state tracking to maximize daily earnings and consecutive work streak bonuses under a budget of schedule changes.
Coding & AlgorithmsHR Screendynamic-programmingalgorithmssliding-window - CitadelMediumSoftware EngineerMerge K Drone Telemetry Streams Into a Running Altitude Timeline
Interleave K drones' individually time-ordered altitude logs into a single replay and track the fleet's shared altitude total as each logged change is applied. Tests k-way merging with a heap, a deterministic tie-break across drones, and correct handling of negative deltas and drones with no events.
Coding & AlgorithmsTechnical Screenheapmerge-intervalsstreaming - CitadelMediumSoftware EngineerMerge K Timestamp-Sorted Price Feeds into a Running Absolute Price
Merge K price-event feeds, each already sorted by timestamp, into one chronological stream and return the running absolute price after every event, starting from zero. It tests merging sorted sequences efficiently, a deterministic tie-break for equal timestamps by feed index and then in-feed order, negative deltas, empty feeds, and 64-bit accumulation.
Coding & AlgorithmsTechnical Screen - CitadelMediumSoftware EngineerMerge K timestamped lists with timestamp coalescing
This problem tests your ability to efficiently merge multiple sorted streams of data and aggregate values associated with the same timestamp.
Coding & AlgorithmsTechnical ScreenHeapMerge SortData Streams - CitadelMediumSoftware EngineerMinimize Changes to Make Every Password Block Palindromic
Tests string manipulation and two-pointer techniques to determine the minimum character replacements needed to make independent fixed-length blocks palindromic.
Coding & AlgorithmsHR Screenstringstwo-pointersgreedy - CitadelMediumSoftware EngineerMinimize changes for k-periodic palindrome
This question evaluates understanding of string algorithms and combinatorial reasoning, focusing on palindrome properties combined with k-periodicity and the ability to minimize character changes under global constraints.
Coding & AlgorithmsOnline Assessment - CitadelMediumSoftware EngineerMinimize image processing cost with discount
This question evaluates a candidate's competence in algorithm design and optimization, including interval-based cost aggregation and modular arithmetic for large-number results within the Coding & Algorithms domain.
Coding & AlgorithmsOnline Assessment - CitadelMediumSoftware EngineerOrder Book With Per-Exchange BBO and Cross-Exchange NBBO Queries
Design and implement an in-memory order book that aggregates quantity by exchange, side and price, and answers per-exchange best bid and offer and cross-exchange NBBO queries. It tests heap ordering with lazy deletion, keeping the global view consistent when any exchange's best price moves, and precise amortized complexity analysis.
Software Engineering FundamentalsTechnical Screen - CitadelMediumSoftware EngineerPerform an External Merge Sort with a Heap
Implement an external merge sort simulation that partitions a data stream into memory-bounded sorted runs and merges them using a min-heap.
Coding & AlgorithmsOnsiteExternal SortHeapStreaming - CitadelEasySoftware EngineerRead and Write Files with Shared Content
Design an in-memory file system that shares identical content payloads across multiple file paths to save memory, supporting reads, writes, and deduplication tracking.
Coding & AlgorithmsTechnical ScreenHash TableDesignString - CitadelMediumSoftware EngineerRefactor a Correct but Quadratic C++ Routine Under a Microsecond Budget
Optimize an inefficient, quadratic tree-resolution routine into a linear-time, cache-friendly implementation suitable for ultra-low-latency execution.
Software Engineering FundamentalsOnline AssessmentTreePerformance OptimizationGraph Traversal - CitadelMediumSoftware EngineerReturn a Valid Dependency Order for Named Tasks
Implement a deterministic topological sort for a directed acyclic graph of named tasks with cycle detection and lexicographical tie-breaking.
Coding & AlgorithmsTechnical ScreenGraphTopological SortHeap - CitadelMediumSoftware EngineerReturn nodes on a tree diameter path
This problem tests your ability to perform a two-pass Breadth-First Search (BFS) or Depth-First Search (DFS) on an undirected tree to find the longest path and reconstruct the sequence of nodes that form it.
Coding & AlgorithmsTechnical ScreenTreesGraph TheoryBFS - CitadelMediumSoftware EngineerSimulate 2048 and pack board into uint64
This question evaluates proficiency in implementing deterministic game-state logic and compact binary representations, specifically array manipulation and merge semantics for 2048 slide operations plus bit-level packing/unpacking of 4-bit exponent fields.
Coding & AlgorithmsOnsite - CitadelMediumSoftware EngineerTop-K Largest Elements in Every Sliding Window
Design an algorithm to maintain and extract the top-K largest elements in descending order for each sliding window of size W across an array.
Coding & AlgorithmsTechnical ScreenSliding WindowHeapOrdered Set - CitadelMediumSoftware EngineerTwo-Player Terminal Battleship: Ship Placement From Input, Then Turn-Based Attacks
Build a two-player Battleship game as a class that runs in the terminal, with players taking turns to place ships by typing coordinates and sizes, then extend it so they can attack each other's fleets. It tests object modeling, input parsing and validation, turn handling, and delivering a large amount of working code under time pressure.
Software Engineering FundamentalsTechnical Screen - Citadel SecuritiesMediumSoftware EngineerDefine a Reliable Trade-Reconciliation Library Contract
Define trade-reconciliation contracts and OOP boundaries with exact values, timestamp tolerance, partial-fill questions, deterministic policy ownership, and traceable breaks.
Software Engineering FundamentalsTechnical Screen - Citadel SecuritiesMediumSoftware EngineerDesign a Top-Ten Trade Query with Exact Amounts
Design a top-ten trade query around an explicit ranking contract, exact monetary aggregation, bounded heaps, timestamp boundaries, and mutable-score streaming tradeoffs.
Software Engineering FundamentalsTechnical Screen - Citadel SecuritiesMediumSoftware EngineerDetect Currency Arbitrage and Return a Profitable Conversion Cycle
Given a list of currency conversion rates, determine whether an arbitrage opportunity exists and return a sequence of conversions that ends in the starting currency with more money than it began with. Tests graph modeling, cycle detection, reconstruction of the profitable sequence, and handling of floating-point precision.
Software Engineering FundamentalsOnsite - Citadel SecuritiesMediumSoftware EngineerThread-Safe Producer-Consumer Queue: Mutex, Then Spin Lock, Then Lock-Free
Implement a thread-safe producer-consumer queue in C++, first with a mutex, then with a spin lock, then as a lock-free design with explicit memory ordering. Tests the C++ memory model, contention and cache effects, blocking versus spinning, and where memory is allocated on the hot path.
Software Engineering FundamentalsOnsite - CitiMediumSoftware EngineerExplain OS and networking basics
This question evaluates a candidate's understanding of operating system and networking fundamentals, covering processes, threads and context switching, concurrency versus parallelism, TCP/UDP and flow versus congestion control, and the end-to-end web request and browser rendering pipeline.
System DesignOnsite - CitiMediumSoftware EngineerExplain data structure fundamentals
This question evaluates understanding of data structure fundamentals, specifically hash map internals (hashing, collision resolution strategies, load factor, and resizing), time complexity analysis for search/insert/delete, contrasts between arrays and linked lists for random access and insertion, and typical use cases and complexities for stacks versus queues. It is commonly asked in technical interviews to assess algorithmic thinking and the ability to reason about performance trade-offs and appropriate data structure selection; domain: Coding & Algorithms; level: tests both conceptual understanding and practical application.
Coding & AlgorithmsOnsite - CitiMediumSoftware EngineerSolve two logic brain teasers
This pair of puzzles evaluates logical deduction and optimization competencies—one testing information-theoretic reasoning with constrained ternary comparisons and the other testing sequencing and scheduling trade-offs for minimal total time—and belongs to the Cognitive Ability / Logic category.
Statistics & MathOnsite - CitiMediumSoftware EngineerWalk through resume and impact
This question evaluates a candidate's ability to communicate a coherent career narrative and demonstrate technical ownership, decision-making, trade-off analysis, and metrics-driven impact within a software engineering context, testing competencies in leadership, product sense, and measurable delivery under the Behavioral & Leadership category.
Behavioral & LeadershipOnsite