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 1–11 of 11 results

  • AirwallexMediumBackend Engineer
    AI-Assisted Build: Tic-Tac-Toe Logic Grown Into a Frontend and Backend App

    An AI-assisted coding exercise: build a two-player Tic-Tac-Toe game, then grow it into an application with a frontend and a backend while using AI tools. Tests correct game rules, server-side validation, API design, and the ability to understand, debug and verify AI-generated code.

    Software Engineering FundamentalsOther
  • AsanaMediumSoftware Engineer
    Object-Oriented Design of a Two-Player Chess Game and Its Move Rules

    A low-level design exercise asking for the classes, responsibilities and core code of a two-player chess program. It tests object modeling of pieces, board and game state, move validation including check and special moves, checkmate and stalemate detection, and keeping the design open to undo, network play or a computer opponent.

    Software Engineering FundamentalsOther
  • GoogleMediumSoftware Engineer
    Design Extensible Spreadsheet Aggregation APIs

    Design reusable spreadsheet sum, minimum, and maximum APIs with operator state, shared cell evaluation, error policies, and extensible aggregation.

    Software Engineering FundamentalsOther
  • MicrosoftMediumSoftware Engineer
    Design and Implement a Worker Thread Pool with Futures and Shutdown

    Low-level design and concurrency question: design and implement a fixed-size thread pool with task submission, futures that return results or errors, and graceful or cancelling shutdown. It tests lock and condition variable use, lost wake-ups, policies for rejected work, pool sizing and deadlocks between dependent tasks.

    Software Engineering FundamentalsOther
  • MicrosoftMediumSoftware Engineer
    Implement a Priority Queue from Scratch with Custom Ordering and Stable Ties

    Data structures question that asks you to build a priority queue from scratch with insert, peek, remove-top and size operations, a caller-supplied ordering and stable ties. It tests the choice of underlying structure, invariant-preserving insertion and removal, complexity analysis and edge-case handling.

    Software Engineering FundamentalsOther
  • MicrosoftMediumSoftware Engineer
    Low-Level Design of a Logging Library Shared by Many Threads

    Low-level design question about an in-process logging library that many threads call at the same time. It tests class modeling for loggers, records, formatters and output destinations, plus thread safety, the hand-off to a background writer, ordering, overflow behavior, failure isolation and clean shutdown.

    Software Engineering FundamentalsOther
  • NetflixMediumSoftware Engineer
    Recommend New Friends from a Mutual-Friendship Graph and Scale the Approach

    A problem-solving question about recommending new friends from a mutual friendship graph, worked mostly through discussion with a little code and pseudocode. It tests candidate generation and scoring with deterministic tie-breaks, cost in terms of node degree, handling highly connected users, and precomputing and refreshing suggestions at scale.

    Software Engineering FundamentalsOther
  • NielsenMediumSoftware Engineer
    Spring Boot Internals and Java 21 Features Behind a Machine Coding Solution

    A machine coding follow-up that drills into a Spring Boot service built during the round: startup, auto-configuration, dependency injection and proxies, then the Java 21 features that could improve it, such as sealed types with pattern matching and virtual threads. It tests framework depth and version-aware modern Java knowledge.

    Software Engineering FundamentalsOther
  • RevolutMediumSoftware Engineer
    Build a Java restaurant table booking service that prevents double bookings

    A live Java coding exercise to build a restaurant table booking system while an AI assistant is allowed. It tests domain modeling, correct interval overlap logic for tables, a clear table allocation policy, thread safety, and how the candidate tests and stays in control of generated code under time pressure.

    Software Engineering FundamentalsOther
  • SalesforceMediumSoftware Engineer
    Multi-tenant resource allocator: entity model, lifecycle state machine, optimistic locking

    Low-level design question for a senior backend role: model a multi-tenant resource allocation module where customers request and release resources. It tests compact class design, an explicit resource lifecycle state machine, optimistic locking under concurrent requests, and tenant isolation enforced in code.

    Software Engineering FundamentalsOther
  • StripeMediumSoftware Engineer
    Review a Production Pull Request and Calibrate Feedback to the Author's Seniority

    A staff-level Stripe code review exercise: review a realistic production pull request, decide what blocks the merge, and write the actual comments. It tests review prioritization, scrutiny of tests and failure modes, comment severity labeling, and how you adapt the delivery of feedback for early-career versus senior authors.

    Software Engineering FundamentalsOther