Intern to senior · Frontend, backend, full stack

Software Engineer Interview Questions and Answers

Real questions candidates type into Google, with short answers you can say out loud and a longer explanation with code. Browse by technology, role or experience level, or download the whole set as a PDF.

Download all questions (PDF)115 questions · 10 technologies
Intern / Fresher
27
Junior (0-2 years)
39
Mid-level (2-5 years)
33
Senior (5+ years)
16

Browse by technology

JavaScript

JavaScript interview questions and answers from beginner to senior: var vs let vs const, closures, hoisting, this, the event loop, promises, async/await, prototypes and more, with code examples.

13 questions

React

React interview questions and answers from beginner to senior: virtual DOM, props vs state, hooks, useEffect, keys, useMemo vs useCallback, re-rendering, SSR vs CSR and performance optimization.

12 questions

HTML & CSS

HTML and CSS interview questions and answers from beginner to senior: semantic HTML, the box model, Flexbox vs Grid, positioning, specificity, rem vs em, responsive design, the critical rendering path and Core Web Vitals.

12 questions

TypeScript

TypeScript interview questions and answers from beginner to senior: interface vs type, any vs unknown, generics, union types, utility types, type narrowing, enums vs unions, mapped types and inference.

10 questions

SQL

SQL interview questions and answers from beginner to senior: joins, WHERE vs HAVING, DELETE vs TRUNCATE, indexes, normalization, ACID, second highest salary, duplicate rows, isolation levels and query optimization.

13 questions

C#

C# and .NET interview questions and answers from beginner to senior: value vs reference types, string vs StringBuilder, const vs readonly, abstract class vs interface, LINQ, IEnumerable vs IQueryable, dependency injection, async/await and garbage collection.

12 questions

Java

Java interview questions and answers from beginner to senior: JDK vs JRE vs JVM, equals vs ==, String vs StringBuilder, abstract class vs interface, ArrayList vs LinkedList, how HashMap works, exceptions, Java 8 streams, JVM memory and multithreading.

12 questions

Python

Python interview questions and answers from beginner to senior: list vs tuple, is vs ==, *args and **kwargs, decorators, generators, shallow vs deep copy, mutable default arguments, the GIL, memory management, and threading vs multiprocessing vs asyncio.

11 questions

Node.js

Node.js interview questions and answers from beginner to senior: single-threaded event loop, require vs import, Express middleware, process.nextTick vs setImmediate, streams, error handling, JWT vs sessions, API security and scaling.

9 questions

System Design

System design interview questions and answers: horizontal vs vertical scaling, load balancing, caching, SQL vs NoSQL, CAP theorem, sharding vs replication, rate limiting, REST idempotency, microservices vs monolith and how to design a URL shortener.

11 questions

People also ask

  1. Q1Intern / FresherJavaScript
    What is the difference between var, let and const in JavaScript?

    var is function-scoped and can be redeclared; let and const are block-scoped, and const cannot be reassigned after it is set.

  2. Q2Intern / FresherReact
    What is the virtual DOM in React and how does it work?

    The virtual DOM is a lightweight JavaScript copy of the UI that React compares with the previous version after each update, so it only changes the parts of the real DOM that actually differ.

  3. Q3Intern / FresherHTML & CSS
    What are semantic HTML elements and why do they matter?

    Semantic elements describe their meaning in the name, such as header, nav, main, article and footer, so browsers, assistive technology and search engines can understand the page structure.

  4. Q4Intern / FresherTypeScript
    What is TypeScript and why do we use it?

    TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. It catches type errors in the editor and at build time, and it documents the shape of data for the next person who reads the code.

  5. Q5Intern / FresherSQL
    What is the difference between INNER JOIN and LEFT JOIN in SQL?

    INNER JOIN returns only rows that have a match in both tables, while LEFT JOIN returns every row from the left table and fills the right table's columns with NULL when there is no match.

  6. Q6Intern / FresherC#
    What is the difference between a value type and a reference type in C#?

    A value type variable holds its data directly and is copied on assignment, while a reference type variable holds a reference to an object, so assignment copies the reference and both variables see the same object.

  7. Q7Intern / FresherJava
    What is the difference between JDK, JRE and JVM in Java?

    The JVM runs Java bytecode, the JRE is the JVM plus the standard libraries needed to run Java programs, and the JDK is the JRE plus the development tools such as the compiler (javac).

  8. Q8Intern / FresherPython
    What is the difference between a list and a tuple in Python?

    A list is mutable and can be changed after creation, while a tuple is immutable; tuples are slightly faster, use less memory and can be used as dictionary keys when their items are hashable.

Every question is a separate page so search engines can match the exact wording candidates use, such as “what is a closure in JavaScript” or “difference between INNER JOIN and LEFT JOIN”.