Topic
Software Engineering Fundamentals interview questions
1208 Software Engineering Fundamentals questions from 253 companies, with hints, runnable code and solution walkthroughs.
123 easy887 medium198 hard
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
Most mentioned in interview experiences
- 1.Plant Infection Grid Simulation: Days to Stabilize, Immune Plants, Expiring Immunity5 reports
- 2.Bootstrap Service: Aggregate Downstream Services and Return the Right HTTP Status4 reports
- 3.Crawl an HTTP-served maze to its exit with 503 retries, dead ends and cycles4 reports
- 4.Find the Exit of an HTTP URL Maze Despite Flaky 503s and Bad JSON4 reports
- 5.In-Memory Workspace Credit System With Transfers, Top-K and Scheduled Transfers4 reports
- 6.Virtual Card Case Study: Trade-offs, Card Number Rule Checks, and Debugging a Filter4 reports
- 7.Virtual Card Numbers Case: Trade-offs, Payment Validation Rules, Debugging4 reports
- 8.Workspace Credit Ledger: Transfers, Top-K, Scheduled Transfers, Merges, Balance History4 reports
- 9.Build a UVM testbench: driver, monitor, scoreboard and coverage-driven closure3 reports
- 10.Debug a Layered Book Search Service Against Five Search Rules3 reports
Counted from 425 candidate interview experiences on Katkat. How we collect and count
Showing 241–270 of 1208 results
This question tests the ability to evaluate communication protocols based on specific architectural requirements, including bidirectional signaling, state recovery, and infrastructure overhead.
ByteDanceSoftware EngineerSoftware Engineering FundamentalsTechnical ScreenThis question tests the ability to distinguish between distributed data processing frameworks, storage engines, and relational databases, evaluating your understanding of trade-offs in large-scale data infrastructure.
ByteDanceData EngineerSoftware Engineering FundamentalsHR ScreenThis question tests your understanding of thread-safe synchronization primitives, priority queues, and robust resource management in a multi-threaded Python environment.
ByteDanceSoftware EngineerSoftware Engineering FundamentalsOnsitePractice defending a database design by connecting schema choices, indexes, consistency behavior, and concurrency controls to concrete access patterns. The solution explains how to reason about CAP trade-offs, lost-update prevention, transaction boundaries, and the operational cost of each index.
ByteDanceSoftware EngineerSoftware Engineering FundamentalsTechnical ScreenExplain shared-pointer control blocks, copy and move semantics, lifetime invariants, exception safety, and the limits of reference counting.
ByteDanceSoftware EngineerSoftware Engineering FundamentalsTechnical ScreenThis problem tests your ability to design a flexible, extensible rule-processing engine that handles sequential and interdependent validation logic.
ByteDanceSoftware EngineerSoftware Engineering FundamentalsTechnical ScreenFrom a TikTok backend intern interview: explain how the Elasticsearch index and field mappings in a resume project were designed and why, then explain how an inverted index works. It tests whether a candidate understands the search technology they list, from mapping trade-offs to how queries are answered.
ByteDanceSoftware EngineerSoftware Engineering FundamentalsTechnical ScreenThis question tests foundational knowledge across systems engineering, database design, version control, and modern AI integration strategies.
ByteDanceBackend EngineerSoftware Engineering FundamentalsHR ScreenThis question tests your understanding of Kafka's distributed messaging architecture, specifically how message distribution, ordering guarantees, and consumer scalability interact during consumer group operations.
ByteDanceSoftware EngineerSoftware Engineering FundamentalsTechnical ScreenThis question tests fundamental knowledge of distributed systems theory, database storage structures, concurrency control, and recovery mechanisms.
ByteDanceSoftware EngineerSoftware Engineering FundamentalsTechnical ScreenThis question tests the understanding of MySQL B-tree index structures, specifically how composite index ordering affects query performance, selectivity, and disk I/O.
ByteDanceSoftware EngineerSoftware Engineering FundamentalsTechnical ScreenThis question tests your understanding of distributed messaging patterns, focusing on the architectural differences between log-based and queue-based systems and the trade-offs involved in ensuring reliable message delivery.
ByteDanceSoftware EngineerSoftware Engineering FundamentalsTechnical ScreenThis question tests the conceptual understanding of how an operating system abstracts memory management through virtual address spaces, demand paging, and hardware-assisted translation.
ByteDanceSoftware EngineerSoftware Engineering FundamentalsTechnical ScreenTests in-depth understanding of the TCP three-way handshake, state transitions, sequence/acknowledgment arithmetic, and failure modes such as dropped final ACKs.
ByteDanceSoftware EngineerSoftware Engineering FundamentalsTechnical ScreenThis problem tests the ability to adapt graph traversal algorithms (like BFS or DFS) to scenarios where the dataset exceeds primary memory, requiring disk-based processing or tiling strategies.
ByteDanceSoftware EngineerSoftware Engineering FundamentalsTechnical ScreenTests an SRE candidate's ability to design proactively stable services and execute structured, mitigation-first production incident management under high-throughput conditions.
ByteDanceSite Reliability EngineerSoftware Engineering FundamentalsTechnical ScreenThis question evaluates operational troubleshooting and incident management competencies — system observability, severity assessment, blast-radius and user-impact analysis, dependency and performance diagnostics, mitigation decision-making, and incident communication.
ByteDanceSite Reliability EngineerSoftware Engineering FundamentalsTechnical ScreenA two-part coding question: implement a binary min-heap with push, pop, peek and linear-time construction without library helpers, then use it to order courses with prerequisites, always taking the smallest-numbered available course and detecting circular prerequisites. Tests heap mechanics and dependency ordering.
ByteDanceSoftware EngineerSoftware Engineering FundamentalsTechnical ScreenTests your ability to design and implement a concurrency-safe, idempotent record update operation using optimistic concurrency control and deduplication keys.
ByteDanceSoftware EngineerSoftware Engineering FundamentalsTechnical ScreenThis question tests your understanding of Linux process management, memory utilization, and the practical troubleshooting steps required to handle a production service experiencing memory exhaustion.
ByteDanceSoftware EngineerSoftware Engineering FundamentalsOnsiteFrom a TikTok backend intern interview: compare TCP and UDP, including connection setup, reliability, ordering, flow and congestion control, message boundaries and overhead, and explain which applications suit each protocol. It tests tying transport-layer guarantees and their costs to real application needs.
ByteDanceSoftware EngineerSoftware Engineering FundamentalsTechnical ScreenThis question tests your structured approach to incident response and root cause analysis in a distributed production environment.
ByteDanceSite Reliability EngineerSoftware Engineering FundamentalsTechnical ScreenImplement a minimal in-process signaling system with register_callback, unregister_callback and signal functions that all return None. Tests requirement clarification, callback storage and hashability, execution order, isolation of failing callbacks, and prevention of reentrant signal loops.
Candid HealthSoftware EngineerSoftware Engineering FundamentalsTechnical ScreenImplement and debug a rule-validation engine for virtual card authorization that accurately parses currency strings into integer cents and evaluates spending boundaries and merchant restrictions.
Capital OneSoftware EngineerSoftware Engineering FundamentalsOnsiteA three-part fintech case: weigh the trade-offs of disposable card numbers, check sample numbers by hand against format, Luhn and issuer-range rules, then find three bugs in a filter that rejects valid numbers and accepts invalid ones.
Capital OneSoftware EngineerSoftware Engineering FundamentalsOnsiteDesign efficient nearest-pickup search for latitude-longitude data and a time-aware extension while clarifying distance, ties, result order, and temporal ranking.
Capital OneSoftware EngineerSoftware Engineering FundamentalsOnline AssessmentDesign an in-memory banking service supporting account creation, deposits, atomic transfers, and activity rankings driven by a string-based command interface.
Capital OneSoftware EngineerSoftware Engineering FundamentalsOnsiteThis problem tests your ability to design a robust, thread-safe class for managing bank account transactions, focusing on atomicity and data consistency.
Capital OneSoftware EngineerSoftware Engineering FundamentalsTechnical ScreenThis question tests your ability to design a modular and maintainable classification system that identifies credit card networks (e.g., Visa, Mastercard) based on raw input data while considering validation and error handling.
Capital OneMachine Learning EngineerSoftware Engineering FundamentalsOnsiteAn object-oriented coding exercise that builds an in-memory banking system in stages: creating accounts and deposits, transfers between accounts, and ranking the top N accounts by activity. It also tests writing a harness that runs string-array test commands, and confirming whether activity means operation count or amount moved.
Capital OneSoftware EngineerSoftware Engineering FundamentalsTechnical Screen