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 1831–1860 of 5874 results
- DecagonMediumSoftware EngineerDesign the Security Architecture for an LLM Chatbot Product
A system design question on securing a chatbot built on a large language model that talks with people outside the company. It tests threat modeling for prompt injection and data leakage, user authentication and tool authorization outside the model, tenant isolation, sensitive-data handling, abuse controls, auditing and incident response.
System DesignOnsite - DecagonMediumSoftware EngineerEnumerate 4x4 Tic-Tac-Toe Games
This question evaluates understanding of recursion and backtracking, exhaustive game-tree enumeration, and state representation for combinatorial game analysis.
Coding & AlgorithmsOnsite - DecagonMediumSoftware EngineerImplement CSAT tracking and call timing
This problem tests your ability to manage stateful data during event processing and calculate exclusive execution times from a stream of nested function logs.
Coding & AlgorithmsOnsiteStackSimulationData Structures - DecagonEasySoftware EngineerImplement a CSAT Sliding Window Tracker
This question evaluates the ability to design and implement efficient data structures and algorithms for a sliding time-window tracker, covering time-based expiration, stateful updates, rolling averages with rounding, and nearest-rank percentile computation.
Coding & AlgorithmsTechnical Screen - DecagonMediumSoftware EngineerSend Requests in Batches of Five and Retry Failures After a Per-Request Delay
A practical coding exercise: send a list of requests to an API that accepts at most five per call, then retry failed requests only after the per-request delay returned by the API. It tests batching, retry scheduling with timestamps, waiting without busy loops and clean handling of partial failures.
Software Engineering FundamentalsTechnical Screen - DecagonMediumSoftware EngineerShopping Cart with Undo and Redo for Add and Remove Operations
A coding exercise to build a shopping cart class whose add and remove operations can be undone and redone. It tests how history entries are represented, how capped removals and deleted lines are reversed exactly, what a new change does to the redo history, and how empty-history cases are handled.
Software Engineering FundamentalsOnsite - DecagonMediumSoftware EngineerSolve 3x3 Tic-Tac-Toe with Backtracking: Perfect-Play Result and Best Move
Write a backtracking solver for 3x3 tic-tac-toe that determines the result of a given position under perfect play by both sides and returns a best move for the player to move. It tests win detection, recursive game-tree search, undoing moves correctly, and reasoning about search cost, memoization and pruning.
Software Engineering FundamentalsTechnical Screen - DecagonMediumSoftware EngineerWalk Through One Past Project
This question assesses the candidate's ability to communicate complex technical work, demonstrate ownership over the development lifecycle, and justify architectural trade-offs made during a past project.
Behavioral & LeadershipTechnical ScreenSystem DesignLeadershipCommunication - DecagonMediumSoftware EngineerWalk Through a Project, a Project That Went Wrong, and How You Use AI
A culture-focused behavioral interview with three questions: describe a project you worked on, describe a project that went wrong, and explain how you use AI tools in your work. It tests clear ownership of decisions, honest reflection on failure, and practical judgment about verifying AI output and respecting its limits.
Behavioral & LeadershipOnsite - DeshawHardSoftware EngineerCompare Fixed and Variable Train Gaps Without a Timetable
Compare two train services for a commuter who arrives without consulting a timetable. Explain the assumptions and derivation clearly, check edge cases, and show how the result changes when those assumptions no longer hold.
Statistics & MathTechnical Screen - DeshawMediumSoftware EngineerCompare Linux Containers and Virtual Machines
Tests in-depth understanding of Linux operating system virtualization mechanisms, contrasting hardware-level hypervisors with OS-level container isolation primitives across security, performance, and operational dimensions.
Software Engineering FundamentalsTechnical ScreenLinuxOperating SystemsDocker - DeshawMediumSoftware EngineerExplain What Happens When a Linux Shell Runs ls
Tests end-to-end understanding of Linux OS fundamentals, systems programming concepts, system calls, and how a POSIX shell interacts with the kernel to execute a command.
Software Engineering FundamentalsTechnical ScreenLinuxOperating SystemsSystem Calls - DeshawHardSoftware EngineerExplain and Compare SGD and Adam
Explain how stochastic gradient descent updates model parameters and how Adam modifies those updates using moving estimates of first and second gradient moments. Cover data and labels, leakage-safe features, baselines and model choice, offline evaluation, deployment constraints, monitoring, and drift.
Machine LearningTechnical Screen - DeshawMediumSoftware EngineerMaximum L1 Distance Between Equal-Length Subarrays
Tests recognizing that non-negative L1 terms allow reducing subarray search to full diagonal overlaps across two arrays, requiring O(n * m) time and 64-bit integer handling.
Coding & AlgorithmsTechnical Screenarraysmathtwo-pointers - DeshawMediumSoftware EngineerTeach a New Technical Concept to an Undergraduate
This exercise tests your ability to distill complex technical information, adapt to an audience's knowledge level, and maintain logical flow in a structured explanation.
Behavioral & LeadershipTechnical ScreenCommunicationMentorshipTechnical Explanation - Deutsche BankHardSoftware EngineerAnswer mixed behavioral and technical deep-dive questions
This question evaluates a software engineer's combined behavioral and technical competencies, including communication, leadership, conflict resolution, system integration and API contracts, debugging, testing strategies, documentation practices, and use of AI tools.
Behavioral & LeadershipOnsite - Deutsche BankHardSoftware EngineerExplain Java follow-ups after solving coding problem
This question evaluates proficiency in Java programming and software engineering fundamentals, covering competencies such as refactoring for changing requirements, input validation, performance analysis for large datasets, selection of Java collections, generics, exception design, and unit testing.
Software Engineering FundamentalsOnsite - Deutsche BankHardSoftware EngineerSolve tree equality and valid parentheses
This problem set evaluates core skills in data structures and algorithmic reasoning, specifically binary tree structural equality and bracket-matching for strings, testing understanding of tree traversal, recursion, and stack-based parsing.
Coding & AlgorithmsOnsite - DigitaloceanMediumSoftware EngineerClarify a Longest-Repeating-Character Replacement Problem
Clarify replacement and substring semantics, then analyze the conditional sliding-window criterion based on window size and maximum character frequency.
Software Engineering FundamentalsOnsite - DigitaloceanMediumSoftware EngineerDesign a Multi-Organization Advertising Platform with Performance Statistics
Design ad management, serving, event collection, deduplicated statistics, and fair performance comparisons across organizations and campaigns.
System DesignOnsite - DigitaloceanMediumSoftware EngineerSpecify House-Selection Constraints Before Choosing a Robbery Dynamic Program
Clarify house layout and selection conflicts, derive a conditional linear dynamic program, and explain how circular or graph constraints change it.
Software Engineering FundamentalsOnsite - DiscordMediumSoftware EngineerDemonstrate effective AI-assisted coding workflow
This question evaluates a candidate's proficiency with AI-assisted coding workflows, including prompt formulation, tool and library selection, design critique, testing approaches, and iterative feature development to demonstrate engineering judgment and ownership.
Software Engineering FundamentalsOnsite - DiscordEasySoftware EngineerDesign Slack-like chat system
An onsite system-design interview question asking you to design the chat subsystem for a Slack/Discord-like app: workspaces, channels, 1:1 and group DMs, full message history, real-time updates, and edit/delete. It tests data modeling, storage and partitioning, fanout strategy, real-time WebSocket delivery, and per-conversation ordering and consistency.
System DesignOnsite - DiscordMediumSoftware EngineerDesign a TCP Discord-like chat server
This question evaluates a candidate's skills in system design, TCP-based protocol design, real-time messaging, data modeling, persistence, session/reconnection handling, and concurrency control for backend services.
System DesignOnsite - DiscordMediumSoftware EngineerDesign leader election using Redis leases
This question evaluates a candidate's understanding of distributed coordination and leader election using a central in-memory datastore, focusing on lease-based leadership, failover, and correctness under partitions and clock skew.
System DesignOnsite - DiscordHardSoftware EngineerExplain C++ alignment and ABI stability
This question evaluates mastery of C++ low-level memory concepts—memory alignment, padding and struct/class layout—and understanding of ABI stability, including calling conventions, name mangling, vtable layout and other binary compatibility concerns, reflecting competence in systems-level C++ and binary interfacing.
Software Engineering FundamentalsHR Screen - DiscordHardSoftware EngineerExplain your database experience and debugging approach
This question assesses the candidate's depth in database architecture, specifically regarding isolation levels and race conditions, while testing their methodology for validating code generated by AI or external tools.
Software Engineering FundamentalsHR ScreenDatabasesConcurrencyDebugging - DiscordHardSoftware EngineerImplement User Sessionization From Event Stream
This question evaluates proficiency in stream processing, stateful sessionization, time-based aggregation, and per-user metric computation, focusing on competencies such as tracking user activity across unbounded ordered event streams and computing top-channel aggregates.
Coding & AlgorithmsTechnical Screen - DiscordMediumSoftware EngineerImplement an asyncio-based chat server
This question tests practical knowledge of Python's asyncio library and concurrent programming by requiring the implementation of a TCP chat server. It evaluates a software engineer's ability to manage multiple simultaneous connections, handle resource cleanup, and apply event-driven concurrency patterns — core competencies commonly assessed in backend and systems-focused interviews.
Coding & AlgorithmsOnsite - DiscordHardSoftware EngineerWalk through your background and proud project
This question evaluates communication, ownership, and technical leadership related to persistence and database-infrastructure, including on-call incident handling, impact measurement, and trade-off justification.
Behavioral & LeadershipHR Screen