Software Engineering Fundamentals Interview Questions

Practice 603 real Software Engineering Fundamentals interview questions for 2026. Covers core coding, data structures, complexity analysis, debugging, and implementation best practices — real questions from actual interviews with detailed solutions to support focused interview preparation. This category tests the engineering basics interviewers rely on to predict on-the-job performance: correct and efficient algorithms, clean and maintainable code, complexity trade-offs, edge-case reasoning, and the ability to turn requirements into a working implementation under time pressure. Expect heavy weighting at companies like Amazon, Google, and OpenAI, where fundamentals often gate candidates before system design or product rounds. To prepare, prioritize timed problem practice that enforces clear communication, complexity justification, and test-case coverage; drill common data structures and complexity patterns until they become second nature; and rehearse coding on a whiteboard or shared editor to simulate real loop conditions.

603 Questions 194 Companies08.04.2026
Showing 20 results
Role
Apple logo
Apple
Medium
Frontend Engineer

Build an Accessible Recursive Expand-and-Collapse Tree in React

Build an Accessible Recursive Expand-and-Collapse Tree in React Implement a React component that renders hierarchical data with + and - controls for c...

Software Engineering Fundamentals
1
0
20 people solved
Jul 13, 2026
Jump Trading logo
Jump Trading
Easy
Software Engineer

Design Stack Evaluators and Low-Latency Memory Primitives

Work through the following systems-programming exercises. State the memory and concurrency model you assume before writing pseudocode. Part 1: Stack M...

Software Engineering Fundamentals
2
0
21 people solved
Jun 14, 2026
OpenAI logo
OpenAI
Medium
iOS EngineerSenior+

Implement A Mobile Chat Interface In An Existing Codebase

You are given an existing mobile codebase and asked to implement a ChatGPT-style chat screen in about 40 minutes. Describe how you would read the proj...

Software Engineering Fundamentals
8
0
61 people solved
Jul 3, 2026
Jane Street logo
Jane Street
Medium
Software EngineerIntern

Turning Interview Code into a Reusable Library or API

You have just finished implementing a small game engine during a coding interview: a board data structure for a two-player piece-dropping game, a func...

Software Engineering Fundamentals
47
0
378 people solved
Nov 6, 2025
Hudson River Trading logo
Hudson River Trading
Medium
Software Engineer

Split a Message into Length-Limited Parts with Numbered Suffixes

Given a message string and a length limit, split the message into ordered parts. Each part must end with a suffix like <X/Y>, where X is the 1-based p...

Software Engineering Fundamentals
2
0
48 people solved
Jul 2, 2026
Ramp logo
Ramp
Medium
Software Engineer

Design a Bank Account OOP Simulation with Transfers, Payments, and Merges

Design an object-oriented banking simulation. Accounts can be created, balances can be queried, money can be transferred, payments can be recorded, an...

Software Engineering Fundamentals
6
0
87 people solved
Jul 2, 2026
Zoox logo
Zoox
Medium
Software Engineer Locked

Explain GPU Memory And Matrix Transpose Optimization

Study GPU software engineering fundamentals through concepts like warps, registers, shared memory, coalescing, cache behavior, tiling, and matrix tran...

Software Engineering Fundamentals
8
0
55 people solved
Jun 22, 2026
Asana logo
Asana
Medium
Software Engineer

Design a 2048 Game

Design the object model and core game logic for a 2048 game on an N x N grid. This is an object-oriented design problem: focus on the classes, their r...

Software Engineering Fundamentals
71
0
470 people solved
Apr 2, 2026
Wells Fargo logo
Wells Fargo
Medium
Software EngineerSenior+ Locked

Java, Spring & Kafka Fundamentals Deep-Dive

This question tests depth of knowledge across core Java, Spring Boot, and Kafka fundamentals commonly required for senior backend engineering roles. I...

Software Engineering Fundamentals
35
0
452 people solved
Jun 24, 2026
Databricks logo
Databricks
Medium
Software Engineer Locked

Build a Durable Key-Value Cache

This question evaluates understanding of data durability and recovery mechanisms, including write-ahead logging, in-memory caching, operation ordering...

Software Engineering Fundamentals
101
1
754 people solved
May 14, 2026
Ramp logo
Ramp
Medium
Software Engineer

Implement a Single-Screen Tic-Tac-Toe Game with State Management

Implement a single-screen Tic-Tac-Toe game. Maintain game state, support player moves, detect wins and draws, prevent invalid moves, and keep the impl...

Software Engineering Fundamentals
14
0
102 people solved
Jul 2, 2026
Bytedance logo
Bytedance
Easy
Software Engineer

Debug and Extend a Priority-Aware Python Thread Pool

Debug and Extend a Priority-Aware Python Thread Pool You inherit a Python thread-pool implementation that accepts callables and runs them on a fixed n...

Software Engineering Fundamentals
2
0
24 people solved
Jul 11, 2026
OpenAI logo
OpenAI
Medium
Machine Learning Engineer

Explain KV cache in Transformer inference

Question In Transformer-based large-language-model inference, what is a key-value (KV) cache? Give a complete, systems-level explanation that covers: ...

Software Engineering Fundamentals
223
1
1522 people solved
Jan 6, 2026
Headway logo
Headway
Medium
Software EngineerSenior+ Locked

Implement Layered Endpoint and Global Rate Limits

Design an in-process rolling-window rate limiter that enforces both per-endpoint and backend-wide limits atomically. Examine boundary semantics, concu...

Software Engineering Fundamentals
3
0
36 people solved
Jun 15, 2026
Apple logo
Apple
Medium
Frontend Engineer

Diagnose Cold-Load and Massive-Table Performance in a Web App

Diagnose Cold-Load and Massive-Table Performance in a Web App You are reviewing two frontend performance problems. Explain how you would measure each ...

Software Engineering Fundamentals
2
0
20 people solved
Jul 13, 2026
OpenAI logo
OpenAI
Medium
Machine Learning Engineer

Debug a Concurrent Job Scheduler

You are handed a buggy Python job scheduler that runs many independent jobs concurrently. Each job has an ID, a callable to execute, a maximum retry c...

Software Engineering Fundamentals
46
0
374 people solved
Apr 3, 2026
Waymo logo
Waymo
Medium
Software Engineer

Design and Implement a Cross-System Object Tracker

Design and Implement a Cross-System Object Tracker Prompt Two independent systems, A and B, observe real-world objects. Each system assigns its own un...

Software Engineering Fundamentals
4
1
55 people solved
May 13, 2026
Kikoff logo
Kikoff
Easy
Software Engineer

Validate a Third-Party Identity Payload

Validate a Third-Party Identity Payload A third-party service returns a JSON payload with a fixed documented structure. The first subject contains a V...

Software Engineering Fundamentals
0
0
12 people solved
Jun 27, 2026
Instacart logo
Instacart
Hard
Software Engineer

Process Delimited Product, Promotion, and Shelf Records

Process Delimited Product, Promotion, and Shelf Records You are given product records such as a100|apple|6|123, where the fields are SKU, name, quanti...

Software Engineering Fundamentals
1
0
11 people solved
Jun 30, 2026
The Trade Desk logo
The Trade Desk
Medium
Software Engineer Locked

Design a Versioned Recipe Store with Search and Rollback

Prepare for a The Trade Desk software engineering interview question about design a versioned recipe store with search and rollback. The prompt highli...

Software Engineering Fundamentals
2
0
37 people solved
Jun 15, 2026

Frequently Asked Questions

How difficult are Software Engineering Fundamentals interview questions?
Software Engineering Fundamentals questions range from easy implementation checks to challenging medium-hard problems that probe algorithmic thinking, data structures, and code quality. Most interview banks for this category skew toward medium difficulty: expect problems that require correct, efficient code plus clear complexity analysis and robust edge-case handling. For entry-level roles the focus is correctness and basic patterns; for senior roles interviewers layer in constraints like concurrency, memory limits, or novel input shapes to evaluate depth. Interviewers are less interested in trivia and more in how you reason, iterate, and communicate tradeoffs while producing clean, testable code.
Where in a typical interview loop do Software Engineering Fundamentals questions appear and which companies emphasize them?
Fundamentals questions appear early and repeatedly: they show up in online assessments or phone screens, in the technical rounds of the onsite loop, and sometimes in take-home tasks. Companies that weight this category heavily include Amazon, Google, and OpenAI, where coding interviews are used as a consistent gate to assess core engineering ability. Smaller firms may combine fundamentals with domain-specific problems, while some loops repeat fundamentals to confirm consistency across rounds. Expect one to three focused coding or fundamentals problems per technical loop, with additional rounds evaluating design or system-level skills.
How long should I prepare for Software Engineering Fundamentals before interviewing?
Preparation time depends on baseline skills and role level. If you already know basic data structures, plan 4–8 weeks of focused practice to reach interview readiness; novices often need 8–12 weeks to build fluency. Senior candidates should allow 8–12+ weeks for deeper practice on complex variants, concurrency, and large-scale tradeoffs. Aim for consistent short sessions rather than last-minute cramming, with weekly goals that combine new problems, timed mocks, and review of solved solutions. Companies like Amazon and Google reward consistent, demonstrated mastery over a range of patterns rather than one-off problem memorization.
What are the key subtopics to master within Software Engineering Fundamentals?
Master core data structures and algorithm families: arrays and strings, hash maps, linked lists, stacks and queues, trees and graphs, heaps, and sorting. Be fluent with patterns like two pointers, sliding windows, divide and conquer, BFS/DFS, greedy methods, and dynamic programming. Know complexity analysis, space-time tradeoffs, null and edge-case handling, and basic memory or concurrency considerations. Also practice writing clean, testable code, explaining invariants, and reasoning about performance. Interviewers expect candidates to move from brute-force to optimized approaches while clearly explaining each step.
What standout tips and common pitfalls should I know when practicing Software Engineering Fundamentals?
Standout tips: clarify requirements before coding, talk through your plan, start with a correct brute-force solution, then iterate to optimize while explaining tradeoffs. Write concise, readable code and test representative edge cases aloud. Practice in a real editor to reduce syntactic errors and time pressure. Common pitfalls include skipping complexity analysis, ignoring nulls and boundary conditions, premature optimization without a clear bottleneck, and poor communication. For companies like Amazon and Google, failing to narrate decisions or to test your code are frequent reasons candidates fall short; prioritize clarity and correctness first, then optimize.

Explore more Software Engineering Fundamentals interview questions

Jump straight to Software Engineering Fundamentals questions at a specific company or for a specific role.

By company
By role