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
❔Interviewer:
How do you prioritize tasks when everything seems urgent?


βœ… Answer:

When multiple tasks are urgent, I first evaluate impact and urgency separately. I prioritize work that affects customers or production stability the most.

I also communicate early with stakeholders to align expectations and avoid silent trade offs. If necessary, I break work into smaller deliverables to show progress quickly.

This structured prioritization helps ensure that the most critical issues are addressed first while maintaining transparency with the team.
❀4
The Clarification You Forgot to Ask

πŸ—― Scenario: Halfway through coding, the interviewer says,
What about negative numbers?

Your solution breaks. You knew you should have asked more questions.

πŸ‘‰Do this: Before writing code, lock in the habit of asking at least three clarifying questions. Confirm input ranges, data types, and whether duplicates or negatives are possible. Technically, this protects you from hidden constraints that often change the entire approach. Strong candidates reduce surprises early.
❔Interviewer:
What is the difference between REST and RPC?


βœ… Answer:

REST is an architectural style that models interactions around resources using standard HTTP methods such as GET, POST, PUT, and DELETE. It emphasizes stateless communication and resource oriented design.

RPC, or Remote Procedure Call, focuses on invoking actions or functions on a remote server as if they were local calls. It is typically more operation focused rather than resource focused.

REST is generally preferred for public web APIs due to its simplicity and cache friendliness, while RPC based approaches like gRPC are often used in internal microservices where performance and strong contracts are more important.
❀3
πŸ’» Coding Interview Questions

1️⃣ What is an API?
Answer: A set of rules that allows software to communicate with other software.

2️⃣ What is REST?
Answer: An architectural style for building web services using HTTP.

3️⃣ What is HTTP?
Answer: A protocol for transferring data over the web.

4️⃣ GET vs POST?
Answer: GET retrieves data; POST sends data to the server.

5️⃣ What is a status code 404?
Answer: Resource not found.

6️⃣ What is JSON?
Answer: A lightweight data-interchange format.

7️⃣ What is authentication?
Answer: Verifying user identity.

8️⃣ What is authorization?
Answer: Granting permissions after authentication.

9️⃣ What is a cookie?
Answer: Small data stored in the browser.

πŸ”Ÿ What is a session?
Answer: Server-side storage of user data during interaction.
❀2
❔Interviewer:
How do you approach debugging a system you did not build?


βœ… Answer:


When debugging an unfamiliar system, I start by understanding the high level architecture and the data flow between components.

Next, I reproduce the issue in a controlled environment and use logs, metrics, and traces to narrow down where the failure occurs. I form hypotheses and validate them incrementally rather than making broad changes.

Throughout the process, I document findings and communicate with team members who have context. This structured approach helps reduce guesswork and speeds up root cause identification.
πŸ‘2
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