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
Deutschebank logo
Deutschebank
Hard
Software Engineer

Explain Java follow-ups after solving coding problem

After you implement an algorithmic solution in Java, the interviewers ask follow-up questions and request modifications. Answer/discuss (and, where re...

Software Engineering Fundamentals
10
0
72 people solved
Aug 25, 2025
Airbnb logo
Airbnb
Medium
Software Engineer

Design an extensible request Retryer

Problem You are building a small library component called a Retryer that wraps an operation (typically a network call) and retries it on failure. Requ...

Software Engineering Fundamentals
6
0
120 people solved
Oct 13, 2025
Uber logo
Uber
Medium
Software Engineer Locked

Design follow/follower classes

This question evaluates object-oriented design and data-structure modeling skills for directed graphs, testing competency in representing follow relat...

Software Engineering Fundamentals
38
0
345 people solved
Mar 1, 2026
Google logo
Google
Easy
Software Engineer Locked

Design a waitlist manager

This question evaluates object-oriented design and data-structure competency—modeling a FIFO waitlist API, managing unique party identifiers and edge ...

Software Engineering Fundamentals
11
0
96 people solved
Mar 1, 2026
Medium
Software Engineer

Explain RF/analog IC interview fundamentals

Explain RF/analog IC interview fundamentals You are interviewing for an RF/analog IC design role. Answer the following conceptual questions (no code r...

Software Engineering Fundamentals
8
0
117 people solved
Aug 5, 2025
Bytedance logo
Bytedance
Medium
Software Engineer

How do you assess database system stability?

You are responsible for a production database (or database platform) used by multiple services. How would you determine whether the database system is...

Software Engineering Fundamentals
2
0
42 people solved
Feb 28, 2026
Robinhood logo
Robinhood
Hard
Data Engineer

Write SQL to analyze CA residency history

You have two SQL tables. Table 1: user_info (current snapshot) - id (user id) - shard (partition column) - name - country - state - created_date Table...

Software Engineering Fundamentals
9
0
93 people solved
Feb 28, 2026
NVIDIA logo
NVIDIA
Medium
Software Engineer Locked

Explain Amdahl’s law and GPU matmul optimization

This question evaluates understanding of systems and performance fundamentals including parallel speedup (Amdahl’s law), GPU memory hierarchy and thre...

Software Engineering Fundamentals
7
0
89 people solved
Jan 14, 2026
Jane Street logo
Jane Street
Medium
Data ScientistIntern

Which Dice Game Wins More Often: One Six in 4 Rolls, or Double Sixes in 24 Rolls?

You are offered two dice games and asked to decide which one gives you a better chance of winning. - Game 1: Roll one fair six-sided die 4 times. You ...

Software Engineering Fundamentals
5
0
42 people solved
Aug 28, 2025
Amazon logo
Amazon
Medium
Software EngineerSenior+

Debug distributed-system performance problems

You are asked: “If a distributed system has a performance problem (latency/throughput regression), how would you approach it?” Describe a practical, s...

Software Engineering Fundamentals
5
0
74 people solved
Dec 17, 2025
Google logo
Google
Medium
Software EngineerNew Grad

Design a Dormitory Room-Assignment System (OOD)

You are asked to design the object-oriented model for a dormitory room-assignment system. You are given a set of students and a set of rooms. Each roo...

Software Engineering Fundamentals
2
0
25 people solved
Feb 22, 2026
Walmart Labs logo
Walmart Labs
Medium
Software Engineer Locked

Answer Spring Boot and Thymeleaf engineering questions

This question evaluates a developer's competency with Spring Boot and Thymeleaf, covering debugging memory and session issues, designing dependency st...

Software Engineering Fundamentals
5
0
67 people solved
Jan 6, 2026
Coinbase logo
Coinbase
Medium
Software Engineer Locked

Implement a blog feed with fetching and state

This question evaluates client-side React skills including state management, asynchronous data fetching, optimistic UI updates, and deterministic sort...

Software Engineering Fundamentals
9
0
99 people solved
Jan 6, 2026
TikTok logo
TikTok
Medium
Software Engineer Locked

Answer core Python, CS, DB, and testing questions

This multi-part prompt evaluates core software engineering competencies including Python fundamentals (OOP, object/model behavior, iterators/generator...

Software Engineering Fundamentals
2
0
39 people solved
Jan 6, 2026
Coinbase logo
Coinbase
Hard
Frontend EngineerSenior+

Implement a Reusable Dropdown Component

Implement a reusable dropdown component for a production frontend application using a modern framework such as React. The component should support a c...

Software Engineering Fundamentals
4
0
42 people solved
Jan 5, 2026
Meta logo
Meta
Easy
Software Engineer Locked

Design a Trade Ledger Class

This question evaluates the ability to design class interfaces, choose and justify data structures for ordered storage, and reason about sorting behav...

Software Engineering Fundamentals
4
0
54 people solved
Feb 18, 2026
Databricks logo
Databricks
Medium
Software Engineer Locked

Design a multithreaded event logger

This question evaluates a candidate's competency in concurrent programming, synchronization primitives, ordering guarantees, and durable logging mecha...

Software Engineering Fundamentals
44
0
351 people solved
Dec 8, 2025
Uber logo
Uber
Medium
Software Engineer

Implement A Concurrent Download De-Duplication Layer

Design and implement a downloader that accepts many URL download requests concurrently. Requests for different URLs should run independently. If sever...

Software Engineering Fundamentals
1
0
12 people solved
Apr 12, 2026
Capital One logo
Capital One
Medium
Software Engineer Locked

Design a transaction class for deposits/withdrawals

This question evaluates understanding of stateful component design, transactional integrity, concurrency control, data modeling for transaction histor...

Software Engineering Fundamentals
11
0
115 people solved
Jan 22, 2026
Bytedance logo
Bytedance
Medium
Site Reliability Engineer Locked

How would you troubleshoot Linux services?

This question evaluates proficiency in Linux system administration and site reliability engineering tasks—specifically troubleshooting disk-full condi...

Software Engineering Fundamentals
9
0
66 people solved
Jan 22, 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