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
Ramp logo
Ramp
Medium
Software Engineer

Implement Spreadsheet Cells with Dependencies

Design spreadsheet-like get and set operations for cells where formulas can depend on other cells. When a cell changes, dependent cells should reflect...

Software Engineering Fundamentals
6
0
131 people solved
Jul 2, 2026
Capital One logo
Capital One
Medium
Software Engineer

Reason About and Validate Virtual Card Transactions

Reason About and Validate Virtual Card Transactions A virtual-card transaction contains a 16-digit card_number, an 8-digit transaction_id, and an inte...

Software Engineering Fundamentals
8
0
88 people solved
Jul 4, 2026
Amazon logo
Amazon
Medium
Frontend Engineer

Implement an Accessible Autocomplete Search Component

Implement an Accessible Autocomplete Search Component Build a frontend autocomplete search bar from a supplied visual design. As the user enters text,...

Software Engineering Fundamentals
2
0
25 people solved
Jul 7, 2026
Bilt logo
Bilt
Medium
Software Engineer

Repair and Extend a Transaction Reward Processor

Repair and Extend a Transaction Reward Processor An existing layered web service has failing unit tests. Its transaction-processing path must read a t...

Software Engineering Fundamentals
0
0
9 people solved
Jul 21, 2026
Robinhood logo
Robinhood
Medium
Frontend Engineer

Build a Chainable Rectangle Manipulation API

Build a Chainable Rectangle Manipulation API You are given a page containing a 3-by-3 grid of rectangle elements and a JavaScript class whose methods ...

Software Engineering Fundamentals
1
0
10 people solved
Jul 18, 2026
Target logo
Target
Medium
Backend Engineer

Implement a Synchronized First-Available Seat Allocator

Implement a Synchronized First-Available Seat Allocator Implement the core of a concurrent ticket-booking service with N seats numbered 1 through N. S...

Software Engineering Fundamentals
1
0
11 people solved
Jul 15, 2026
NVIDIA logo
NVIDIA
Medium
Software EngineerSenior+

Reason About Endianness, Ring Buffers, and Stack Behavior in Firmware

Reason About Endianness, Ring Buffers, and Stack Behavior in Firmware You are reviewing low-level firmware that receives binary records, buffers them ...

Software Engineering Fundamentals
1
0
19 people solved
Jul 7, 2026
Havery logo
Havery
Medium
Frontend Engineer

Build a Virtualized React Spreadsheet with Cell Formulas

Build and explain a React spreadsheet in four incremental parts. Focus on correct state flow and rendering behavior rather than visual polish. Clarify...

Software Engineering Fundamentals
0
0
10 people solved
Jul 17, 2026
Hudson River Trading logo
Hudson River Trading
Medium
Software Engineer

Minimize Array Amplitude After Removing a Contiguous Block

Given an array of integers and an integer K, remove exactly K contiguous elements so that the amplitude of the remaining array, defined as max(remaini...

Software Engineering Fundamentals
7
1
61 people solved
Jul 2, 2026
Ramp logo
Ramp
Medium
Software Engineer

Implement a Per-IP Sliding Window Rate Limiter

Given sorted request timestamps, matching IP addresses, a request limit, and a time-window length, return an array where 1 means the request is accept...

Software Engineering Fundamentals
13
0
97 people solved
Jul 2, 2026
Cisco logo
Cisco
Easy
Software Engineer

Reason About C Pointer and Array Declarations

Explain the following C declarations and expressions. Assume int objects and ordinary pointer arithmetic. 1. Declare an array of pointers to int. 2. D...

Software Engineering Fundamentals
1
0
10 people solved
Jul 16, 2026
Snowflake logo
Snowflake
Hard
Software Engineer

Clarify and Prune an N-ary Tree to a Depth Limit

You are given a rooted N-ary tree and a nonnegative integer k. First compute the tree's maximum depth. Then discuss how to delete a minimum set of nod...

Software Engineering Fundamentals
2
0
25 people solved
Jun 20, 2026
Hudson River Trading logo
Hudson River Trading
Medium
Software Engineer

Count Matrix Cells Whose Row and Column Neighbors Match

Given a matrix, count how many cells have the property that every other value in the same row and every other value in the same column are all equal t...

Software Engineering Fundamentals
9
0
97 people solved
Jul 2, 2026
Airtable logo
Airtable
Medium
Software EngineerSenior+

Design Extensible Undo and Redo for a Spreadsheet

Design Extensible Undo and Redo for a Spreadsheet A spreadsheet already supports editing one cell and needs undo and redo. Extend the design to row an...

Software Engineering Fundamentals
0
0
6 people solved
Jul 24, 2026
Apple logo
Apple
Medium
Frontend Engineer

Explain JavaScript Scope, Closures, Timers, and the Event Loop

Explain JavaScript Scope, Closures, Timers, and the Event Loop Answer the following JavaScript runtime questions precisely. Distinguish the language e...

Software Engineering Fundamentals
1
0
24 people solved
Jul 13, 2026
Bytedance logo
Bytedance
Hard
Backend EngineerNew Grad Locked

Backend Fundamentals Deep Dive: MySQL Internals, Redis, and the HTTP/HTTPS Request Lifecycle

This question tests deep backend engineering knowledge across three core domains: MySQL InnoDB internals (logging, indexing, isolation), Redis persist...

Software Engineering Fundamentals
7
0
69 people solved
Jun 15, 2026
Squarepoint logo
Squarepoint
Medium
Software Engineer

Use find, ps, top, and kill Safely on Linux

Use find, ps, top, and kill Safely on Linux You are diagnosing a Linux host where an application is consuming unexpected resources and may need to be ...

Software Engineering Fundamentals
2
0
23 people solved
Jul 12, 2026
Squarepoint logo
Squarepoint
Medium
Software Engineer

Explain Core Python Runtime and Language Concepts

Explain Core Python Runtime and Language Concepts Answer the following Python questions as if you were reviewing production code. Use small examples w...

Software Engineering Fundamentals
2
0
22 people solved
Jul 12, 2026
Datadog logo
Datadog
Medium
Software Engineer Locked

Implement DeleteTree With Limited Filesystem APIs

Review a filesystem implementation problem that asks you to delete an entire tree using only limited list, delete, and directory-check APIs. The quest...

Software Engineering Fundamentals
9
0
81 people solved
Jun 11, 2026
Hudson River Trading logo
Hudson River Trading
Medium
Software Engineer

Design Insert/Delete/GetRandom with Weighted Sampling

Design a data structure that supports inserting values, deleting values, and returning a random value. Then extend it so each inserted value has a wei...

Software Engineering Fundamentals
7
0
64 people solved
Jul 2, 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