Katkat

Topic

Software Engineering Fundamentals interview questions

1208 Software Engineering Fundamentals questions from 253 companies, with hints, runnable code and solution walkthroughs.

Questions1208

123 easy887 medium198 hard

Your progress0/1208

Software Engineering Fundamentals interview questions by the numbers

Last updated

Katkat has 1,208 Software Engineering Fundamentals interview questions from 253 companies; the most come from OpenAI (5%), Stripe (4%) and Amazon (3%). By difficulty: 10% easy, 73% medium and 16% hard. The most common round is Technical Screen (52%). Frequent concepts include Data Structures, Concurrency, System Design and Algorithms.

Companies (253)

Difficulty

  • Easy10% · 123
  • Medium73% · 887
  • Hard16% · 198

Interview rounds

  • Technical Screen52% · 625
  • Onsite37% · 448
  • Online Assessment8% · 96
  • HR Screen2% · 28
  • Other1% · 11

Roles

  • Software Engineer85% · 1026
  • Frontend Engineer4% · 51
  • Machine Learning Engineer2% · 30
  • Backend Engineer2% · 25
  • Data Scientist1% · 17

Frequent concepts

  • Data Structures8% · 97
  • Concurrency8% · 96
  • System Design8% · 93
  • Algorithms3% · 42
  • API Design3% · 42
  • Object-Oriented Design3% · 35

Showing 271–300 of 1208 results

  • 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.

    Capital OneSoftware EngineerSoftware Engineering FundamentalsTechnical Screen
  • 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.

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

    Capital OneSoftware EngineerSoftware Engineering FundamentalsOnsite
  • 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.

    Capital OneData ScientistSoftware Engineering FundamentalsTechnical Screen
  • 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.

    Capital OneSoftware EngineerSoftware Engineering FundamentalsOnsite
  • 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.

    Capital OneSoftware EngineerSoftware Engineering FundamentalsTechnical Screen
  • 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.

    CensysFrontend EngineerSoftware Engineering FundamentalsTechnical Screen
  • 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.

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

    Charta HealthSoftware EngineerSoftware Engineering FundamentalsTechnical Screen
  • 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.

    Chicago Trading CompanySoftware EngineerSoftware Engineering FundamentalsTechnical Screen
  • This question tests the understanding of memory hierarchy and virtual memory translation, specifically the interactions between TLBs, page tables, and hardware caches.

    Chicago Trading CompanySoftware EngineerSoftware Engineering FundamentalsOnsite
  • 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.

    ChimeBackend EngineerSoftware Engineering FundamentalsTechnical Screen
  • 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.

    ChimeSoftware EngineerSoftware Engineering FundamentalsTechnical Screen
  • 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.

    CircleSoftware EngineerSoftware Engineering FundamentalsTechnical Screen
  • 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.

    CiscoSoftware EngineerSoftware Engineering FundamentalsOnsite
  • 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.

    CiscoSoftware EngineerSoftware Engineering FundamentalsOnsite
  • 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.

    CiscoSoftware EngineerSoftware Engineering FundamentalsOnsite
  • 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.

    CiscoSoftware EngineerSoftware Engineering FundamentalsOnsite
  • 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.

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

    CiscoSoftware EngineerSoftware Engineering FundamentalsTechnical Screen
  • 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.

    CiscoSoftware EngineerSoftware Engineering FundamentalsOnsite
  • 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.

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

    CitadelSoftware EngineerSoftware Engineering FundamentalsTechnical Screen
  • 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.

    CitadelSoftware EngineerSoftware Engineering FundamentalsTechnical Screen
  • 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.

    CitadelSoftware EngineerSoftware Engineering FundamentalsTechnical Screen
  • 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.

    CitadelSoftware EngineerSoftware Engineering FundamentalsTechnical Screen
  • 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.

    CitadelSoftware EngineerSoftware Engineering FundamentalsTechnical Screen
  • Optimize an inefficient, quadratic tree-resolution routine into a linear-time, cache-friendly implementation suitable for ultra-low-latency execution.

    CitadelSoftware EngineerSoftware Engineering FundamentalsOnline Assessment
  • 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.

    CitadelSite Reliability EngineerSoftware Engineering FundamentalsTechnical Screen
  • 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.

    CitadelSoftware EngineerSoftware Engineering FundamentalsTechnical Screen

More topics