Software Engineer Software Engineering Fundamentals Interview Questions
Master your tech interview with our curated database of real questions from top companies.
Explain ACID and isolation levels
Explain what a database transaction is, define the ACID properties (Atomicity, Consistency, Isolation, Durability), and describe common transaction is...
Explain debugging methodology for production issues
In a technical interview, you are asked: > What is your methodology when debugging or when something goes wrong? Describe a systematic approach you wo...
Improve chip performance without process advances
Assume you are working on a digital chip, but the semiconductor process node and basic device technology are fixed: there is no new, faster process an...
Describe common RTL lint warnings and errors
You are writing RTL (e.g., Verilog/SystemVerilog) and run a lint tool on your code. The tool reports items such as: - "Treat as black box" - Combinati...
Explain use cases for clock synchronizers
Assume you are designing a digital system with multiple clock domains. The clocks have different frequencies and unknown phase relationships. You can ...
Design CSV upload endpoint with GPT classification
You are building a backend service that needs to process two CSV files and then call an external GPT-like API for classification. Requirements 1. HTTP...
Improve robustness of graph cycle detection code
You have written code to detect cycles in a directed dependency graph of services, where nodes represent services and edges represent dependencies bet...
Design a multithreaded event logger
Design a multithreaded in-memory event logger for a server application. Requirements: - Many worker threads running in the process need to log events ...
Explain worker state machine load balancer design
You are designing a lightweight load balancer for a Python-based backend service that dispatches tasks to a pool of worker processes. Describe how you...
Compare JavaScript == and === operators
In JavaScript, what is the difference between the == and === operators? Explain: 1. How each operator compares two values. 2. What type coercion is an...
Explain the MVC architectural pattern
Explain the Model–View–Controller (MVC) architectural pattern. Include in your answer: 1. What each component is responsible for: - Model - View...
Explain C++ alignment and ABI stability
You are interviewing for a senior C++ / systems role. The interviewer asks two low-level fundamentals questions: 1. C++ memory alignment and padding ...
Explain JS threading and useState vs useRef
Answer the following conceptual questions about JavaScript and React: 1. JavaScript and multithreading - How does JavaScript's execution model wo...
Explain Java ConcurrentHashMap and queues
An interviewer asks you conceptual questions about Java's concurrency primitives. Explain in detail: 1. How Java's ConcurrentHashMap is implemented in...
Explain storing files to disk with concurrency
You are working on the backend of a server that receives file uploads (for example, images or documents) from clients. You need to design and explain ...
Explain core Java and Spring fundamentals
Java and Spring fundamentals You are interviewing for a backend Java/Spring role. Answer the following conceptual questions: 1. Collections & data str...
Explain SLI/SLO/SLA and design monitoring
SLI vs SLO vs SLA for a Web API; Error Budgets; Monitoring and Alerting Design Context: You are designing reliability goals and on-call policies for a...
Demonstrate software engineering fundamentals
Software Engineering Fundamentals: Git, Docker, Python Environments, and C++ Concepts Context: You are interviewing onsite for a software engineering ...
Detect memory leaks in C++
C++ Memory Leaks: Detection, Integration, and Prevention You are building or maintaining a C++ service/library and need a practical approach to find a...
Assess Spring IoC, AOP, JDBC, Security
Spring Framework — Multi-part Questions Context: You are building/maintaining a Spring-based service for a take‑home engineering assessment. Answer th...