Coding interview preparation
5.82K subscribers
477 photos
1 video
97 files
168 links
Coding interview preparation for software engineers

Daily interview questions, algorithms, data structures & clean solutions.

Real interview tasks and problems.
Join πŸ‘‰ https://rebrand.ly/bigdatachannels

DMCA: @disclosure_bds
Contact: @mldatascientist
Download Telegram
The Failure Question

πŸ—― Scenario:
Tell me about a time you failed.

This one always feels loaded.

πŸ‘‰ Do this: Choose a genuine example and keep the setup brief. Focus most of your answer on what you changed afterward and the measurable improvement that followed. Use a simple structure: situation, mistake, lesson, growth.

❌ Avoid blaming teammates or circumstances. Interviewers are listening for ownership and self awareness far more than the failure itself.
❀1
❔Interviewer:
How would you detect a memory leak in a production system?


βœ… Answer:

I would start by monitoring memory usage trends over time using application metrics and system level tools. A steadily increasing memory footprint without release is usually a strong signal.

Next, I would capture heap dumps or use profiling tools to identify objects that are not being garbage collected. From there, I would trace back to the code paths retaining those references.

After fixing the root cause, I would add monitoring and alerts to detect abnormal memory growth early in the future. Prevention through observability is just as important as the fix itself.
❀3
πŸ’» Coding Interview Questions

1️⃣ What is recursion?
Answer: When a function calls itself until a base condition is met.

2️⃣ What is iteration?
Answer: Repeating a set of instructions using loops (for, while).

3️⃣ Recursion vs Iteration?
Answer: Recursion uses function calls; iteration uses loops. Recursion may use more memory.

4️⃣ What is a base case?
Answer: The condition that stops recursion.

5️⃣ What is tail recursion?
Answer: A recursion where the recursive call is the last operation.

6️⃣ What is a divide-and-conquer algorithm?
Answer: Break problem into smaller sub-problems, solve recursively, combine results.

7️⃣ What is dynamic programming?
Answer: Solving problems by storing intermediate results to avoid recomputation.

8️⃣ What is memoization?
Answer: Storing function results to speed up future calls.

9️⃣ What is greedy algorithm?
Answer: Make the locally optimal choice at each step to find global optimum.

πŸ”Ÿ What is backtracking?
Answer: Trying all possibilities and discarding invalid paths to find a solution.
❀1
❔Interviewer:
How would you design a cache system?


βœ…Answer:

I would begin by clarifying access patterns, data volatility, and consistency requirements.

At a high level, the system would include a fast in-memory cache layer such as Redis in front of the primary database. I would define an eviction policy like LRU to manage memory usage and implement TTLs for data freshness.

I would also plan for cache invalidation strategies, cache stampede protection, and monitoring of hit rate. The design trade-off typically balances freshness, consistency, and performance.
❀3πŸ‘1
The Sneaky Bug Hunt

πŸ—― Scenario: You are handed a piece of code and told,
Something here is wrong.

No hints.

πŸ‘‰ Do this: Slow down and read the code aloud while explaining what each section is supposed to do. Then create a tiny test case and trace variable values step by step. Pay special attention to boundary conditions and loop exits.

❌ Avoid guessing the bug too early. Interviewers often care more about your debugging discipline than how fast you spot the issue.
πŸ‘3
πŸ’» Coding Interview Questions

1️⃣ What is a linked list?
Answer: A linear data structure where elements point to the next element.

2️⃣ Singly vs Doubly Linked List?
Answer: Singly points forward; doubly points forward and backward.

3️⃣ What is a circular linked list?
Answer: The last node points back to the first node.

4️⃣ What is a stack?
Answer: LIFO data structure (Last In, First Out).

5️⃣ What is a queue?
Answer: FIFO data structure (First In, First Out).

6️⃣ What is a priority queue?
Answer: Elements are dequeued based on priority, not insertion order.

7️⃣ What is a deque?
Answer: Double-ended queue, insert/delete from both ends.

8️⃣ What is a hash map?
Answer: Stores key-value pairs for fast retrieval.

9️⃣ What is collision in hash tables?
Answer: Two keys map to the same index; resolved using chaining or open addressing.

πŸ”Ÿ What is a binary tree?
Answer: Tree data structure where each node has at most two children.
❀3
Tell me about a time you disagreed with a teammate.


🫨Why it is hard:
Many developers either sound confrontational or overly passive.

Use the S B I R framework:

Situation
Behavior (what happened)
Impact
Resolution

βœ… Example answer:
In a previous project, we disagreed on introducing a new caching layer. I raised concerns about cache invalidation complexity and proposed we measure current latency first. We ran benchmarks together and agreed on a simpler optimization that met our needs.


What interviewers look for: collaboration + data driven thinking.
πŸ’» Coding Interview Questions

1️⃣ What is a heap?
Answer: A complete binary tree where parent nodes are greater (max-heap) or smaller (min-heap) than children.

2️⃣ Heap vs Priority Queue?
Answer: A heap is a data structure; a priority queue uses a heap to manage priorities.

3️⃣ What is a trie?
Answer: A tree used to store strings for efficient prefix searches.

4️⃣ What is dynamic array?
Answer: An array that resizes automatically when full (e.g., Python list, Java ArrayList).

5️⃣ What is a hash set?
Answer: Stores unique elements with fast lookup, using a hash table internally.

6️⃣ What is a circular queue?
Answer: A queue where the end connects back to the start to reuse empty space.

7️⃣ What is a sentinel node?
Answer: A dummy node used to simplify boundary conditions in linked lists or trees.

8️⃣ What is a graph adjacency list?
Answer: A list storing all neighbors of each vertex for efficient storage.

9️⃣ What is a graph adjacency matrix?
Answer: A 2D array representing edges; cell[i][j]=1 if edge exists.

πŸ”Ÿ What is complexity of inserting into a hash table?
Answer: Average O(1), worst-case O(n) if many collisions occur.
❀3
Explain a project you are proud of.


🫨Why it is hard:
Most candidates ramble or focus only on features.

Use the STAR plus METRICS framework:

Situation
Task
Action
Result +
Metrics

βœ… Strong example:
I built a booking system that reduced manual processing. I designed the API with Express and optimized database queries with indexing. As a result, average response time dropped from 900 ms to 180 ms and the system handled 3x more concurrent users.


πŸ”‘ Key thing to remember: numbers make your story believable.
πŸ‘4
The Almost Finished but Not Quite Ending

πŸ—―Scenario: Time is nearly up and your solution is mostly there but not fully polished.

πŸ‘‰ Do this: Do not panic code. Clearly state what remains, what works, and what you would finish next with more time. Quickly mention time and space complexity. Interviewers often give partial credit for structured thinking and honesty. A clean wrap up is far better than rushed, silent typing.
❀4
πŸ’» Coding Interview Questions

1️⃣ What is a binary search tree (BST)?
Answer: A tree where left child < parent < right child.

2️⃣ What is tree traversal?
Answer: Visiting all nodes in a tree (inorder, preorder, postorder).

3️⃣ What is a graph?
Answer: A set of nodes (vertices) connected by edges.

4️⃣ Directed vs Undirected graph?
Answer: Directed has edges with direction; undirected has edges without direction.

5️⃣ What is a cycle in a graph?
Answer: A path that starts and ends at the same vertex.

6️⃣ What is BFS (Breadth-First Search)?
Answer: Traverses graph level by level using a queue.

7️⃣ What is DFS (Depth-First Search)?
Answer: Traverses graph by exploring as far as possible along each branch (stack/recursion).

8️⃣ What is a weighted graph?
Answer: A graph where edges have weights (costs).

9️⃣ What is Dijkstra’s algorithm?
Answer: Finds the shortest path from a source to all nodes in a weighted graph.

πŸ”Ÿ What is a topological sort?
Answer: Linear ordering of vertices such that for every directed edge u→v, u comes before v.
πŸ”₯3❀2πŸ‘1
❔Interviewer:
Explain how a hash map works internally.


βœ… Answer:

A hash map stores key value pairs by applying a hash function to the key to compute an index in an underlying array. Ideally, the hash function distributes keys uniformly to minimize collisions.

When collisions occur, common strategies include chaining using linked lists or open addressing. Lookups, insertions, and deletions are O(1) on average but can degrade toward O(n) in worst case collision scenarios.

In modern implementations like Java’s HashMap, when collision chains grow beyond a threshold, they may be converted into balanced trees to maintain efficient performance.
❀4
❔Interviwer:
What happens when you type a URL into the browser?


βœ… Answer:

When a URL is entered, the browser first checks its cache and then performs DNS resolution to translate the domain name into an IP address.

Next, the browser establishes a TCP connection with the server, followed by a TLS handshake if the connection is HTTPS. The browser then sends an HTTP request to the server.

The server processes the request and returns an HTTP response. Finally, the browser parses the HTML, constructs the DOM and CSSOM, executes JavaScript if present, and renders the page to the screen.
πŸ™6
RESTful API Design Checklist
❀4