Programming
Operating systems
Databases
Networking
Data structures & Algorithms
100

This is the term for a named location in memory that stores a value.

A variable

100

The part of the OS that manages hardware and resources.

Kernel

Bonus Question:

What are the different types of kernels?

100

This type of memory stores data temporarily while the computer is on.

RAM

100

This model has 7 layers, including transport and application.

OSI

100

This data structure works on the principle of First In, First Out.

Queue

200

Features of OOP language?

Abstraction, Inheritance,  Encapsulation, Polymorphism

200

What is the difference between a thread and process?




A process is an executing program with its own distinct memory space and resources, while a thread is a smaller unit of execution within a process that shares the process's memory, code, and resources but has its own program counter and stack


Bonus question:
What are the mechanisms to ensure only one thread uses a resource at a time?

200

What is the difference between SQL and NoSQL databases?

SQL uses structured, relational tables with schemas. NoSQL stores data in flexible formats like documents, key-value pairs, graphs, or wide-columns.


Bonus Question:
What are the real life applications where you would choose SQL vs NoSQL databases?

200

This is the maximum data size a network layer can pass to the data link layer without fragmentation.

MTU

200

The average time complexity of searching in a balanced binary search tree.

O(log n)

300

Shallow vs Deep copy

 A shallow copy copies references to objects, while a deep copy creates new independent copies of nested objects.

300

A process that appears to be useful but actually contains malicious code.

Trojan Horse

300

What are the ACID properties of a database transaction?

  • Atomicity – all or nothing

  • Consistency – maintains database rules

  • Isolation – transactions don’t interfere

  • Durability – committed changes persist even after failure

300

What is DNS and what is its role?

Translates user friendly domain names into IP addresses

300

How does Hashtable handle collisions?

A hash table handles collisions using Chaining method or open addressing by storing multiple items at the same position.

400

Difference between a stack and a heap in memory management?

Stack - local variables and functional calls

Heap - Dynamic objects 

400

What is the difference between paging and segmentation in memory management?

Paging divides memory into fixed-size blocks (pages), segmentation divides it into variable-size blocks based on logical units (functions, arrays, etc.).

400

What is indexing in databases, and what is the trade-off?

Indexing speeds up data retrieval by creating lookup structures, but it uses extra storage and slows down write operations (INSERT, UPDATE, DELETE).

400

What is the difference between IPv4 and IPv6?

  • IPv4: 32-bit addressing (~4.3 billion addresses).

  • IPv6: 128-bit addressing (virtually unlimited), better security and efficiency.

400

What is the best sorting algorithm and what is its time complexity?

Quick sort. O(nlogn)

500

What is memory leak?

A memory leak occurs when allocated memory is not freed. 

500

What is context switching and why is it an overhead?

Context switching is saving the state of one process/thread and loading another’s. It’s overhead because it consumes CPU cycles but does not perform useful work.

500

Explain the difference between INNER JOIN and OUTER JOIN in SQL.

  • INNER JOIN: returns rows with matching values in both tables.

  • OUTER JOIN: returns all rows from one table and matching rows from the other (NULL where no match).

500

What is the difference between the OSI model and the TCP/IP model?

  • OSI: 7 layers (Application → Physical).

  • TCP/IP: 4 layers (Application, Transport, Internet, Network Access).
    TCP/IP is practical and widely used; OSI is more theoretical.

500

Explain the difference between greedy algorithms and dynamic programming.

  • Greedy: makes the locally optimal choice at each step (e.g., Kruskal’s, Prim’s).

  • Dynamic programming: solves problems by breaking into overlapping subproblems (e.g., knapsack, Fibonacci, shortest path with Bellman-Ford).