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 4951–4980 of 5874 results
- SnapchatMediumSoftware EngineerFind index of first unique character
Find index of first unique character evaluates algorithm design, data structures, correctness, complexity, edge cases, and implementation details in a realistic interview setting. A strong answer states assumptions, handles edge cases, explains trade-offs, and shows how to validate the result clearly.
Coding & AlgorithmsTechnical Screen - SnapchatMediumSoftware EngineerFind max node-value range across components
This problem tests your ability to traverse an undirected graph to identify connected components and perform aggregations over the nodes within each component.
Coding & AlgorithmsTechnical ScreenGraphDFSBFS - SnapchatMediumSoftware EngineerFind top co-purchased products
This question evaluates algorithmic problem-solving and data engineering skills, focusing on computing and ranking co-occurrence frequencies, choosing efficient data structures for pairwise counts, and contrasting offline batch implementation with streaming updates.
Coding & AlgorithmsOnsite - SnapchatMediumSoftware EngineerHandle cards, islands, Trie, median
These problems evaluate proficiency in core data structures and algorithmic problem-solving, covering grouping/counting techniques, grid-based island detection, trie (prefix tree) design, and streaming median computation within the domain of data structures and algorithms.
Coding & AlgorithmsTechnical Screen - SnapchatMediumSoftware EngineerHow do you deliver when time is tight?
This question evaluates a candidate's project management, prioritization, risk identification, trade-off negotiation, and stakeholder-communication skills when working under aggressive deadlines.
Behavioral & LeadershipTechnical Screen - SnapchatHardSoftware EngineerImplement LRU cache and prime products array
This question evaluates proficiency in implementing efficient mutable data structures and in enumerating combinatorial results, specifically testing understanding of LRU cache eviction behavior and generation of all non-empty subset products from a set of primes.
Coding & AlgorithmsOnsite - SnapchatHardSoftware EngineerImplement a Leaky Bucket Limiter
This problem tests your ability to implement a thread-safe rate limiter using the Leaky Bucket algorithm, requiring careful management of timestamps and shared state.
Coding & AlgorithmsOnsiteConcurrencyRate-LimitingAlgorithms - SnapchatMediumSoftware EngineerImplement a Timestamped Counter
This problem tests your ability to design a data structure that handles time-series data and performs efficient range-based queries using binary search.
Coding & AlgorithmsTechnical ScreenBinary SearchData StructuresTime Series - SnapchatMediumSoftware EngineerImplement a custom list with iterator and map
This problem tests your understanding of linked list internals, the Iterator design pattern, and the application of higher-order functions in a custom data structure.
Coding & AlgorithmsTechnical ScreenLinked ListsDesign PatternsIterator - SnapchatHardSoftware EngineerImplement a size-bounded LRU cache
This problem tests your ability to extend the standard LRU cache pattern to support items with heterogeneous 'weights', requiring a data structure that maintains access order while managing a cumulative capacity constraint.
Coding & AlgorithmsOnsiteLRUHash MapDoubly Linked List - SnapchatHardSoftware EngineerImplement an iOS scrollable grid with navigation
This question tests the ability to build a responsive, performance-optimized grid interface in iOS using modern frameworks like SwiftUI, focusing on layout constraints, state management, and navigation flow.
Software Engineering FundamentalsOnsiteiOSSwiftUILayout - SnapchatMediumSoftware EngineerImplement binary search for boundary index
This question evaluates a candidate's ability to implement binary search for boundary indices, including correct handling of duplicates, providing iterative and recursive variants, and reasoning about time and space complexity.
Coding & AlgorithmsOnsite - SnapchatMediumSoftware EngineerImplement sin(x) with precision constraints
This question evaluates understanding of numerical methods, floating-point arithmetic, and algorithmic implementation in the Coding & Algorithms domain by requiring an approximation of the sine function under explicit error bounds.
Coding & AlgorithmsTechnical Screen - SnapchatMediumSoftware EngineerMaximize correct guesses in a hat line puzzle
This problem tests your ability to devise a deterministic strategy for a group of people to maximize correct guesses about their own attributes based on observed information from others.
Coding & AlgorithmsOnsiteLogicParityGreedy Strategy - SnapchatHardSoftware EngineerParallelize the lock BFS safely
Parallelize the lock BFS safely evaluates requirements, scale assumptions, API/data design, architecture, trade-offs, failure modes, and rollout in a realistic interview setting. A strong answer states assumptions, handles edge cases, explains trade-offs, and shows how to validate the result clearly.
System DesignTechnical Screen - SnapchatMediumSoftware EngineerRadar Overlaps and Undetected Crossing of a Rectangular Room
Two-part geometry coding problem about circular radars placed inside a rectangular room. For each radar, list every other radar whose coverage overlaps it, then decide whether a point object can travel from the left wall to the right wall without entering any radar's coverage.
Coding & AlgorithmsOnsite - SnapchatMediumSoftware EngineerRemove the Maximum Number of Connected Stones
Determine the maximum number of stones that can be removed from a 2D grid where a stone may only be removed if another stone shares its row or column. This tests graph modeling, connected components, and Union-Find or BFS/DFS traversals.
Coding & AlgorithmsTechnical ScreenGraphUnion-FindDFS - SnapchatMediumSoftware EngineerSolve Open the Lock BFS
This question evaluates the ability to model the lock as a state-space and apply graph traversal and shortest-path techniques (breadth-first search) to determine minimal move sequences under constraints.
Coding & AlgorithmsTechnical Screen - SnapchatHardSoftware EngineerSolve Three Algorithmic Tasks
This set of three problems evaluates competencies in algorithm design and data structures, specifically efficient range counting on timestamped events, constrained selection/matching from double-sided cards, and merging multiple sorted lists.
Coding & AlgorithmsOnsite - SnapchatMediumSoftware EngineerSolve Three Coding Problems
This problem tests your ability to efficiently manage dynamic, sliding-window data streams and geometric grid traversal using graph search techniques.
Coding & AlgorithmsOnsiteHeapsSliding WindowBFS - SnapchatMediumSoftware EngineerSolve a two-jug measuring problem
This question evaluates algorithm design, state-space modeling, graph-search techniques (BFS/DFS) and number-theoretic reasoning (gcd), along with handling edge cases and analyzing time and space complexity in the Coding & Algorithms domain.
Coding & AlgorithmsTechnical Screen - SnapchatMediumSoftware EngineerStream Records into Clusters and Track Each Cluster's Maximum and Median
Design and implement an in-memory component that assigns each record of a data stream to an existing or a new cluster and returns the maximum value of every cluster. Follow-ups probe read and write optimizations, concurrent ingestion, and how to report each cluster's median.
Software Engineering FundamentalsOnsite - SnorkelMediumSoftware EngineerDesign SnapshotMap with Sparse Histories and Constant-Time Snapshots
Design an in-memory key-value store supporting point-in-time snapshots, sparse version histories, binary-search historical reads, tombstones, and write coalescing.
Software Engineering FundamentalsTechnical Screendata-structuresbinary-searchsystem-design - SnowflakeMediumSoftware EngineerAdapt Throne Inheritance When Initialization Does Not Supply a King
Design a throne inheritance system with an uninitialized monarch, handling dynamic root establishment, pre-order succession, and edge-case validation.
Software Engineering FundamentalsTechnical Screentreedesigndfs - SnowflakeMediumSoftware EngineerAnswer Repeated Lookup Queries Efficiently
This problem tests binary search proficiency and the ability to optimize performance for repetitive computational tasks using memoization.
Coding & AlgorithmsTechnical ScreenBinary SearchCachingEfficiency - SnowflakeEasySoftware EngineerAnswer conflict, tight deadline, and mentorship prompts
This Behavioral & Leadership question evaluates conflict resolution, prioritization and risk-communication under tight deadlines, and mentorship or coaching ability within cross-functional software engineering teams.
Behavioral & LeadershipOnsite - SnowflakeMediumSoftware EngineerAssign Each Person the Nearest Cake in a One-Dimensional Row
Given a one-dimensional row marking empty spots, people and cakes, return for each person the index of the nearest cake, breaking ties toward the smaller index. It tests linear scanning techniques for nearest-neighbor queries on a line and careful handling of ties and boundaries.
Coding & AlgorithmsTechnical Screen - SnowflakeMediumSoftware EngineerBehavioral Stories on Ownership, Ambiguity, Deep Dives and Conflict
A behavioral round for an entry-level software engineer that probes four competencies: taking ownership, making progress under ambiguity, digging deep into a problem, and handling conflict with a colleague. It tests whether candidates give specific, structured stories with a clear personal role and concrete results.
Behavioral & LeadershipOnsite - SnowflakeMediumSoftware EngineerBehavioral: Proudest Project, Conflict, and Failure
This question assesses the candidate's ability to articulate professional experiences regarding personal growth, interpersonal navigation, and self-reflection. It focuses on how the candidate handles success, manages disagreement, and processes failure to iterate on their working style.
Behavioral & LeadershipTechnical ScreenBehavioralSoft SkillsCommunication - SnowflakeHardSoftware EngineerBuild a Tiered Rate Limiter With Runtime-Updatable Limits, Then Test and Scale It
Build an in-memory rate limiting service in Python where clients belong to tiers such as free, pro and enterprise, tier limits change at runtime without a restart, and clients with missing or invalid tiers fall back to a global default policy. Follow-ups probe algorithm trade-offs, deterministic tests for refill timing, and a distributed design.
Software Engineering FundamentalsTechnical Screen