Katkat

practice a little every day, paws crossed ♡

Software Engineering Fundamentals 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 271–300 of 1208 results

  • Capital OneMediumSoftware Engineer
    Merchant-Locked Payment Codes: Trade-offs and a Buggy Checker

    A three-part fintech case on merchant-locked, single-merchant payment codes: discuss their trade-offs for cardholder and issuer, hand-validate sample codes against a digit-position rule table, then find and fix three planted bugs in a flawed validator.

    Software Engineering FundamentalsTechnical Screencase-interviewdebuggingvalidation-logic
  • Capital OneMediumSoftware Engineer
    Prepaid Travel Card Case Study: Checks, Trade-offs, Buggy Filter

    A three-part case study on prepaid travel cards: weigh the trade-offs of issuing them, manually check sample numbers against length, Luhn, and prefix rules, then debug Python filter code whose conditionals let invalid numbers through. Tests product reasoning, careful manual rule-checking, and evidence-driven debugging.

    Software Engineering FundamentalsOnsitecase-studyvalidationdebugging
  • Capital OneMediumSoftware Engineer
    Reason About and Validate Virtual Card Transactions

    Implement a policy validation engine for encoded virtual card numbers against incoming transactions, handling rule parsing, Luhn checksum verification, and structured status reporting.

    Software Engineering FundamentalsOnsiteStringsValidationClean Code
  • Capital OneMediumData Scientist
    Test and Run a Reproducible Data Science Pipeline

    Design and implement a robust, testable Python data pipeline class that validates input data schemas, handles feature transformation, logs execution metrics, and produces versioned outputs. Write targeted unit and integration tests ensuring graceful failure on corrupted inputs.

    Software Engineering FundamentalsTechnical ScreenPythonData PipelinesTesting
  • Capital OneMediumSoftware Engineer
    Virtual Card Case Study: Trade-offs, Card Number Rule Checks, and Debugging a Filter

    A three-part virtual credit card case study: weigh the benefits and costs of giving merchants virtual card numbers, check five sample numbers against length, Luhn checksum and prefix rules, and debug a Python filter whose conditionals accept invalid numbers. It tests product reasoning, careful manual analysis and evidence-driven debugging.

    Software Engineering FundamentalsOnsite
  • Capital OneMediumSoftware Engineer
    Virtual Card Numbers Case: Trade-offs, Payment Validation Rules, Debugging

    A three-stage case interview on virtual credit card numbers. It covers the benefits and problems of virtual cards for cardholders and the issuer, a hand walkthrough that validates payments against digit-by-digit card number rules, and debugging messy validator code for inverted boolean operators and boundary errors.

    Software Engineering FundamentalsTechnical Screen
  • CensysMediumFrontend Engineer
    Add Case-Insensitive Search to a Support Ticket Queue UI and Debug Its Behavior

    A frontend exercise on an existing support ticket queue with Unresolved and Archived tabs, a ticket list and an activity panel: make the search box filter tickets by title or assignee regardless of letter case, then debug parts of the app that misbehave. It tests reading unfamiliar code, state design and systematic debugging.

    Software Engineering FundamentalsTechnical Screen
  • Charta HealthMediumSoftware Engineer
    Design a Prefix-Suggestion Search Interface

    Design and implement an in-memory prefix suggestion engine that indexes document titles, provides ranked auto-complete results, and prevents out-of-order race conditions from asynchronous search queries.

    Software Engineering FundamentalsOnsiteTrieSearchConcurrency
  • Charta HealthMediumSoftware Engineer
    Make Token-Bucket Admission Safe Across Threads

    Tests your ability to implement a thread-safe token bucket rate limiter with lazy refill, monotonic time tracking, and blocking admission control.

    Software Engineering FundamentalsTechnical Screenconcurrencymultithreadingrate-limiting
  • Chicago Trading CompanyMediumSoftware Engineer
    Implement a Unique Pointer and Vector

    This problem tests your understanding of C++ RAII, move semantics, template metaprogramming, and manual memory management by requiring the implementation of a scoped unique-ownership pointer and a custom dynamic array container.

    Software Engineering FundamentalsTechnical ScreenC++RAIIMemory Management
  • Chicago Trading CompanyMediumSoftware Engineer
    Trace Virtual Address Translation Through TLBs, Page Tables, and Caches

    This question tests the understanding of memory hierarchy and virtual memory translation, specifically the interactions between TLBs, page tables, and hardware caches.

    Software Engineering FundamentalsOnsiteVirtual MemoryPagingMMU
  • ChimeMediumBackend Engineer
    Design browser history across tabs

    This question tests the ability to design an efficient data structure for navigating browser history, requiring careful management of back/forward states across multiple independent tabs.

    Software Engineering FundamentalsTechnical ScreenData StructuresStacksHash Maps
  • ChimeEasySoftware Engineer
    Explain sync/async, Go concurrency, SQL vs NoSQL

    This question evaluates understanding of execution models (synchronous vs asynchronous and blocking vs non-blocking), Go concurrency patterns (goroutines, channels versus shared-memory with locks), and database paradigms (SQL vs NoSQL) relevant to backend engineering.

    Software Engineering FundamentalsTechnical Screen
  • CircleMediumSoftware Engineer
    In-Memory Bank System With Top-N Activity Ranking and Expiring Pending Transfers

    Implement an in-memory banking class in stages: create accounts, deposit and pay, rank the top n accounts by transaction activity, and support transfers that hold funds until the recipient accepts within a time window or they are refunded. Tests state modeling, validation, and timestamp-driven expiry.

    Software Engineering FundamentalsTechnical Screen
  • CiscoEasySoftware Engineer
    Does a Successful Ping Mean Port 443 Is Reachable? Diagnosing Server Connectivity

    A networking fundamentals question asking whether a successful ping to a server proves that port 443 on it is accessible, and how to check the port directly. It tests the difference between ICMP and TCP, the role of firewalls and listening services, and practical connectivity troubleshooting with command-line tools.

    Software Engineering FundamentalsOnsite
  • CiscoEasySoftware Engineer
    Explain BGP: Sessions, Route Exchange, and Best-Path Selection

    A networking fundamentals question asking the candidate to explain the Border Gateway Protocol: why it exists, how peers form sessions and exchange routes, how a router selects the best path, and how BGP differs from interior protocols such as OSPF. It also probes troubleshooting and testing.

    Software Engineering FundamentalsOnsite
  • CiscoEasySoftware Engineer
    Implement a Python To-Do Task Manager Class with CRUD and Status Rules

    A Python coding question asking for a to-do task manager class with create, read, update, and delete operations, where every task has a status of new, pending, or resolved. It tests data modeling, input validation, status transition rules, error handling for missing tasks, and testable class design.

    Software Engineering FundamentalsOnsite
  • CiscoEasySoftware Engineer
    Python Multiple Inheritance: Which Parent Method Runs When Names Collide

    A Python fundamentals question about multiple inheritance in which two parent classes define a method with the same name and a child class inherits from both. It tests the method resolution order, C3 linearization, how super() follows that order, and when composition is the better design.

    Software Engineering FundamentalsOnsite
  • CiscoEasySoftware Engineer
    Python and pytest Fundamentals: Fixtures, Decorators, and Generators

    A three-part Python and pytest fundamentals question covering how fixtures are injected, scoped, torn down, and shared; how decorators work and how to write one that preserves metadata; and how generators produce values lazily. It tests core language mechanics used in test automation.

    Software Engineering FundamentalsOnsite
  • CiscoEasySoftware Engineer
    Reason About C Pointer and Array Declarations

    This question tests the ability to parse complex C declarations and understand memory layout, pointer arithmetic, and the differences between pointers and arrays.

    Software Engineering FundamentalsTechnical ScreenCPointersMemory
  • CiscoEasySoftware Engineer
    Testing a New Feature: Planning Test Cases and Handling Flaky Tests

    A two-part QA question on how to test a new feature and plan its test cases, and how to find, diagnose, and prevent flaky automated tests. It evaluates requirement analysis, test design techniques, risk-based prioritization, test levels, release exit criteria, and keeping a test suite trustworthy.

    Software Engineering FundamentalsOnsite
  • CitadelEasyFrontend Engineer
    Build a Real-Time Event Feed Dashboard

    Implement a robust React hook to manage a high-frequency, real-time event feed dashboard with pause/resume controls, out-of-order de-duplication, memory bounding, and rolling time-window statistics.

    Software Engineering FundamentalsTechnical Screenreacttypescriptsliding-window
  • CitadelMediumSoftware Engineer
    Design a Thread-Safe Shared Counter

    This question evaluates concurrency and synchronization competencies, including atomicity, race conditions, concurrent data structures, and cross-process coordination for maintaining exact per-key counts.

    Software Engineering FundamentalsTechnical Screen
  • CitadelMediumSoftware Engineer
    Explain JS types, Promises, Maps, WebSockets

    Explain JS types, Promises, Maps, WebSockets evaluates requirements, assumptions, structured reasoning, trade-offs, and verification in a realistic interview setting. A strong answer states assumptions, handles edge cases, explains trade-offs, and shows how to validate the result clearly.

    Software Engineering FundamentalsTechnical Screen
  • CitadelMediumSoftware Engineer
    Harbor Clash: A Two-Captain Terminal Naval Game, Setup Then Combat

    Write a runnable two-player hidden-fleet game for the terminal: captains place vessels via typed commands with full validation, then alternate firing until one fleet is sunk; tests modeling, parsing, turn flow and shipping working code fast.

    Software Engineering FundamentalsTechnical Screenobject-oriented-designgameinput-validation
  • CitadelMediumSoftware Engineer
    In-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 Engineer
    Order 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 Engineer
    Refactor 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
  • CitadelMediumSite Reliability Engineer
    Solve Five Core Python Data-Processing Exercises

    Implement and explain: repeat a message `n` times with blank lines; square a list then reverse it; FizzBuzz; count case-sensitive words; and return the second-largest unique integer or `None`. Make the API or object boundaries explicit, then cover invariants, edge cases, testing strategy, and operational trade-offs.

    Software Engineering FundamentalsTechnical Screen
  • CitadelMediumSoftware Engineer
    Two-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