Katkat

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 2161–2190 of 5874 results

  • GeneralmotorsMediumSoftware Engineer
    Meet a 10-second latency and 99% availability target across 3-5 dependent services

    An open-ended design discussion about an application that calls three to five dependent services and must keep latency under 10 seconds and availability at 99% or better. It tests objective definitions, availability and tail-latency math, timeouts, retries, fallbacks, and adapting as requirements change.

    System DesignOnsite
  • GigaMediumSoftware Engineer
    Design an Agentic Ticket Support System

    This question evaluates a candidate's ability to design ML-driven production systems that combine agentic AI, browser-based automation for services without an API, and external user-data APIs to produce personalized support responses.

    ML System DesignOnsite
  • GleanMediumSoftware Engineer
    Delete the Fewest Parentheses to Balance a String of Only Open and Close Brackets

    Given a string of only open and close parentheses, delete the fewest characters so the rest is balanced and return the resulting string, using standard left-to-right matching to define a unique answer. Tests bracket matching, linear-time scanning and careful handling of leftover unmatched characters.

    Coding & AlgorithmsOnsite
  • GleanMediumSoftware Engineer
    Design a Test Strategy for a System That Counts the Leaves on a Large Tree

    An open-ended testing scenario: design a test strategy for a system that counts the leaves on a large tree. Tests clarifying an ambiguous system, finding a test oracle, functional and boundary cases, scale and robustness testing, and setting release criteria for counts that may be estimates.

    Software Engineering FundamentalsOnsite
  • GleanMediumSoftware Engineer
    Find Which Words From a List Can Be Traced Through Adjacent Cells of a Letter Grid

    Given a letter grid and a list of words, return every word that can be spelled by a path of edge-adjacent cells without reusing a cell, sorted lexicographically. Covers the single-word search and its many-words follow-up, and tests backtracking and pruning on a large word list.

    Coding & AlgorithmsOnsite
  • GleanMediumSoftware Engineer
    Find the Kth Largest in Two Sorted Arrays

    This question evaluates proficiency with array manipulation and selection algorithms, specifically understanding order statistics and working with two sorted sequences.

    Coding & AlgorithmsTechnical Screen
  • GleanMediumSoftware Engineer
    Find the k-th Largest Value Across Two Sorted Arrays Without Fully Merging Them

    Given two arrays sorted in non-decreasing order and an integer k, return the k-th largest value among all their elements, counting duplicates separately. Tests reasoning about ranks across two sorted sequences, careful handling of empty arrays and duplicates, and moving past a linear scan toward logarithmic time.

    Coding & AlgorithmsOnsite
  • GleanMediumSoftware Engineer
    Group Words into Transitive Synonym Sets by Shared Two-Words-Before-and-After Context

    Given a list of sentences, treat two words as synonyms when they share the same two words before and two words after, close the relation transitively, and return every synonym group in a canonical sorted order. Tests context hashing, union-find or connected components, and exact output formatting.

    Coding & AlgorithmsOnsite
  • GleanMediumSoftware Engineer
    How Would You Test a System That Counts the Leaves on a Tree?

    This problem evaluates your ability to design a comprehensive testing strategy for an ambiguous, real-world system where an exact 'ground truth' is difficult to obtain.

    Software Engineering FundamentalsTechnical ScreenSoftware TestingQA StrategyComputer Vision
  • GleanMediumSoftware Engineer
    How a Tester Prioritizes and Organizes Work Under Project Deadline Pressure

    A behavioral question for a QA engineer: how you handle and organize testing work when a project deadline creates pressure. Tests risk-based prioritization, use of automation and collaboration, transparent communication of remaining risk, and a structured STAR answer with measurable results.

    Behavioral & LeadershipOnsite
  • GleanMediumSoftware Engineer
    Implement 2048 Board Tilts in Four Directions with Merging and Game-Over Detection

    Implement the move logic of the 2048 sliding-tile game on a 4x4 board: slide and merge tiles for left, right, up and down swipes so each tile merges at most once, then decide when no swipe can change the board. Tests edge-case precision, code reuse across directions and a correct game-over rule.

    Software Engineering FundamentalsOnsite
  • GleanMediumSoftware Engineer
    Implement 2048 Game Logic

    This question evaluates array and matrix manipulation, stateful simulation of game mechanics, and handling edge cases such as merge constraints, single-merge-per-move rules, and empty-cell management.

    Coding & AlgorithmsTechnical Screen
  • GleanHardSoftware Engineer
    Implement 2048 tilt move

    This question evaluates a candidate's ability to implement array and matrix manipulation, deterministic state-transition logic, and rule-based merging behavior in a grid-based simulation.

    Coding & AlgorithmsTechnical Screen
  • GleanMediumSoftware Engineer
    Implement 2048-Style Tile Slides and Merges for All Four Board Directions

    A software engineer phone-screen coding exercise: implement the slide-and-merge move of a 2048-style tile board, first to the left with working tests, then for all four directions. It tests careful array manipulation, the single-merge rule, and the trade-off between rotating the board and remapping row and column indices.

    Software Engineering FundamentalsTechnical Screen
  • GleanMediumSoftware Engineer
    Implement a Byte Pair Encoding (BPE) Tokenizer

    Implement a Byte Pair Encoding (BPE) tokenizer with training, encoding, and decoding capabilities using frequency-based iterative merging.

    Coding & AlgorithmsTechnical ScreenNLPStringsDesign
  • GleanMediumSoftware Engineer
    Implement a Byte-Pair Encoding Tokenizer: Threshold Training, Encode and Decode

    Implement a byte-pair encoding tokenizer with train, encode and decode, where training repeatedly merges the most frequent adjacent token pair whose count reaches a threshold, breaking ties lexicographically. Tests precise reading of the merge rules, round-trip correctness and the complexity of training on long text.

    Software Engineering FundamentalsOnsite
  • GleanMediumSoftware Engineer
    Prioritizing QA Work Under Deadline Pressure

    This behavioral question assesses your ability to apply risk-based prioritization, manage quality trade-offs, and communicate transparently with stakeholders when engineering deadlines constrain testing capacity.

    Behavioral & LeadershipTechnical ScreenBehavioralQA & TestingRisk Management
  • GleanMediumSoftware Engineer
    Rank Every Cell of a Distinct-Value Matrix Consistently Within Its Row and Column

    Replace every value in a matrix of distinct integers with the smallest rank such that larger values outrank smaller ones within each row and column. Tests processing values in sorted order, tracking per-row and per-column state, and the one-dimensional special case.

    Coding & AlgorithmsOnsite
  • GleanMediumSoftware Engineer
    Restore an Array with One Displaced Element

    Restore a nearly sorted array where at most one element has been removed and reinserted elsewhere, in linear time and without mutating the input array.

    Coding & AlgorithmsTechnical Screenarraystwo-pointerssorting
  • GleanMediumSoftware Engineer
    Return Top Department Suggestions

    Design an in-memory prefix search system that returns the top-k department suggestions based on popularity scores, with deterministic tie-breaking.

    Coding & AlgorithmsTechnical ScreenTrieHeapPrefix Search
  • GleanMediumSoftware Engineer
    Robust Selenium Code to Extract Text from Two Elements

    This problem tests your ability to write robust browser automation code using Selenium, focusing on handling dynamic content, timing issues, and basic error handling.

    Software Engineering FundamentalsTechnical ScreenSeleniumTest AutomationPython
  • GleanHardSoftware Engineer
    Search Words in a Character Grid

    This question evaluates algorithmic problem-solving in grid traversal and multi-word string search, targeting competencies in pathfinding, string matching, efficient use of data structures for shared prefixes, and time/space complexity analysis within the Coding & Algorithms domain.

    Coding & AlgorithmsTechnical Screen
  • GleanMediumSoftware Engineer
    Serve Top-k Prefix Suggestions Filtered by Department Within a Tight Memory Budget

    Return the top k suggestions whose ngram starts with a query and whose department matches the user, from a static list that already fills half of the server's memory. Tests prefix indexing, top-k extraction without scanning all matches, and explicit memory accounting against latency.

    Software Engineering FundamentalsOnsite
  • GleanMediumSoftware Engineer
    Shortest Manhattan Distance Between Any X and Any Y in a String or Grid

    Find the shortest distance between any X and any Y, first in a string and then in a 2D grid using Manhattan distance, returning -1 when one letter is missing. Tests moving from a linear scan to multi-source breadth-first search and reasoning about efficiency on large grids.

    Coding & AlgorithmsOnsite
  • GleanMediumSoftware Engineer
    Simulate Modulo-Assigned Document Indexers with Wrap-Around and Rank the Busiest

    Simulate documents assigned to indexers by index modulo m, falling through to the next free indexer with wrap-around and dropping documents when all are busy, then report processed totals, the busiest indexer and the top-k share. Tests event simulation, finding the next free slot efficiently and precise tie rules.

    Coding & AlgorithmsOnsite
  • GleanHardSoftware Engineer
    Simulate document assignment to indexers

    This question evaluates simulation of parallel worker scheduling, time-based queue processing, modular assignment logic, and aggregation/ranking (top-k and percentage) competencies for tracking per-worker workloads.

    Coding & AlgorithmsTechnical Screen
  • GleanMediumSoftware Engineer
    Sort in Linear Time an Array Where At Most One Element Was Moved Out of Place

    Given an array that was sorted until one element was moved to another position, return it sorted again in linear time without a full sort. Tests locating the displaced element in either direction, handling duplicates and already-sorted input, and reasoning about O(n) time with constant extra space.

    Coding & AlgorithmsOnsite
  • GlovoMediumSoftware Engineer
    Why Glovo, Strengths and Weaknesses, People Management and Disagreeing with a Manager

    A behavioral question set from a mid-level software engineer loop at Glovo: introduce yourself and your recent work, explain why you want to join, describe your strengths and weaknesses, discuss any experience managing people, and recount a disagreement with your manager. It tests self-awareness, motivation and professional judgment.

    Behavioral & LeadershipOnsite
  • GofundmeEasySoftware Engineer
    Explain React and Firebase data interaction

    This question tests your understanding of data synchronization patterns between a React frontend and Firebase, specifically focusing on the trade-offs between real-time listeners and manual data fetching.

    Software Engineering FundamentalsTechnical ScreenReactFirebaseFrontend
  • Goldman SachsEasySoftware Engineer
    Cache Trade-offs and a Constant-Time Least-Recently-Used Cache

    Tests understanding of caching trade-offs (latency, freshness, memory overhead) and the implementation of a fixed-capacity Least Recently Used (LRU) cache supporting constant-time operations.

    Software Engineering FundamentalsOnsitelru-cachehash-tabledoubly-linked-list