← Blinkit Interview Insights

Blinkit·Software Engineer·Onsite - Multi Round·Junior

JuniorRejected
May 2026Remote

Summary

Three rounds at Blinkit for an SDE role: a DSA round, a system design round, and a so-called culture fit round that turned out to be a brutal resume interrogation. First two went well enough to get strong hire verdicts, but the third round exposed some resume padding and that was that.

Questions Asked (4)

Q1

Count the number of islands in a matrix.

Algorithms & Data Structures
Author's notes

Talked through it orally in about five minutes which felt fine.

Create a free account to read the full note

AI HintsAI Generated

Suggested Approach

Clarify the problem definition (e.g., 4-directional vs 8-directional connectivity, matrix dimensions, and whether the matrix can be modified). Then, explain a graph traversal approach (DFS or BFS) to explore each island, marking visited cells to avoid revisiting. Finally, discuss time and space complexity and potential optimizations like Union-Find or handling large matrices.

Pro tip: Mention that you can solve it in-place by modifying the matrix (e.g., changing '1' to '0') to save space, but confirm with the interviewer if mutation is allowed. Also, be prepared to discuss iterative vs recursive DFS to avoid stack overflow for large matrices.

1. Clarify the problem

Ask about connectivity (4 or 8 directions), matrix size, and whether the matrix can be modified. Confirm input format (e.g., '1' for land, '0' for water).

2. Choose an approach

Decide between DFS, BFS, or Union-Find. DFS/BFS are simpler and efficient for most cases; Union-Find is good for dynamic connectivity but overkill here.

3. Implement traversal

Iterate through each cell. When encountering unvisited land, increment island count and traverse all connected land cells, marking them visited (e.g., set to '0' or use a visited matrix).

4. Analyze complexity

Time complexity is O(rows * cols) since each cell is visited once. Space complexity is O(rows * cols) for visited matrix or O(min(rows, cols)) for BFS queue, or O(rows * cols) for DFS recursion stack in worst case.

5. Test and optimize

Test with edge cases (empty matrix, all land, all water). Discuss optimizations like using BFS with a queue to avoid recursion depth issues, or Union-Find for streaming data.

Key Points to Mention

  • Definition of an island: connected component of land cells (usually 4-directional).
  • Traversal algorithms: DFS (recursive/iterative) and BFS.
  • Marking visited cells: in-place modification vs auxiliary visited matrix.
  • Time and space complexity analysis.
  • Edge cases: empty matrix, single row/column, all land/water.
  • Alternative approach: Union-Find (disjoint set) for dynamic connectivity.

AI-generated suggestions, not part of the candidate's original notes. May be inaccurate — verify before relying on them.

Q2

Why would you break up a large file into chunks before uploading it to object storage?

System DesignTechnical Trade-offs
Author's notes

Pretty straightforward once I realized what they were actually asking.

Create a free account to read the full note

AI HintsAI Generated

Suggested Approach

Start by explaining the core benefits of chunking: improved upload reliability, parallelism, and resumability. Then discuss trade-offs like increased complexity and potential overhead, and tie it back to real-world scenarios such as large media uploads or backups. Conclude with how this applies to Blinkit's scale and use cases.

Pro tip: Mention that chunking enables efficient use of multipart upload APIs (e.g., S3 Multipart Upload) and allows you to pause/resume uploads, which is crucial for mobile or unreliable networks—a common scenario for Blinkit's delivery partners.

1. Define the problem

Explain why uploading a large file as a single request is problematic: timeouts, memory usage, and inability to resume on failure.

2. List benefits of chunking

Cover improved reliability (retry only failed chunks), parallelism (faster uploads), and resumability (pause/resume).

3. Discuss trade-offs

Acknowledge increased complexity, need for chunk management (ordering, metadata), and potential overhead from smaller chunks.

4. Relate to object storage features

Mention how object storage services support multipart uploads, and how chunking aligns with their APIs.

5. Apply to real-world context

Give examples like uploading large images/videos from delivery partners or backups, and how chunking improves user experience.

Key Points to Mention

  • Network reliability and retry mechanisms
  • Parallelism and speed improvements
  • Resumable uploads and fault tolerance
  • Memory efficiency (avoid loading entire file into memory)
  • Multipart upload APIs in object storage (e.g., S3, GCS)
  • Trade-offs: complexity, chunk size optimization, metadata overhead

AI-generated suggestions, not part of the candidate's original notes. May be inaccurate — verify before relying on them.

Q3

You have an append-only table with an auto-incrementing ID, a timestamp, and a payload. Design a purge mechanism to delete records older than 30 days.

System DesignData ModelingAlgorithms & Data Structures
Author's notes

This one took a while.

Create a free account to read the full note

AI HintsAI Generated

Suggested Approach

Start by clarifying requirements: data volume, write rate, acceptable purge latency, and whether deletes must be transactional. Then propose a batched, throttled deletion strategy using the timestamp index, and discuss how to avoid performance pitfalls like long transactions and table bloat.

Pro tip: Emphasize that purging should be decoupled from the write path and run as a background job with small batches to avoid lock contention and replication lag. Also mention that in append-only systems, you might consider partitioning by time to make purges a metadata operation instead of row-by-row deletes.

1. Clarify requirements and constraints

Ask about data volume, write throughput, acceptable purge latency, and whether the purge must be atomic. Understand if the table is used for analytics or OLTP, as this affects the approach.

2. Choose a purge strategy

Decide between batched DELETE with a timestamp filter, partition-based dropping, or a soft-delete + background hard-delete. Consider using an index on timestamp to make deletes efficient.

3. Design the purge job

Outline a scheduled job that runs periodically (e.g., hourly), deletes in small batches (e.g., 1000 rows) with a LIMIT, and sleeps between batches to avoid overloading the database. Include error handling and idempotency.

4. Address performance and operational concerns

Discuss how to avoid long transactions, table bloat, and replication lag. Mention monitoring, alerting, and the ability to pause/resume the purge. Consider using partitioning to make purges instant.

5. Evaluate trade-offs and alternatives

Compare row-by-row deletes vs. partition dropping vs. TTL features in databases. Discuss the impact on indexes, vacuuming, and storage reclamation. Mention any need for archiving before deletion.

Key Points to Mention

  • Use an index on the timestamp column to efficiently find old records.
  • Batch deletes with a LIMIT and sleep between batches to reduce lock contention and replication lag.
  • Consider table partitioning by time (e.g., daily or monthly) to make purging a metadata operation (DROP PARTITION).
  • Avoid long-running transactions that can cause bloat and block other operations.
  • Monitor purge job performance and database health; implement alerting for failures or slowdowns.
  • If data must be retained for compliance, archive old records before deletion.

AI-generated suggestions, not part of the candidate's original notes. May be inaccurate — verify before relying on them.

Q4

Deep-dive questions into resume projects and past experience.

Adaptability & Ambiguity
Author's notes

This is where the whole thing unraveled.

Create a free account to read the full note

AI HintsAI Generated

Suggested Approach

For each project, use the STAR method to concisely describe the situation, task, action, and result, emphasizing the ambiguity you faced and how you adapted. Focus on your specific contributions and the impact, and be ready to dive deeper into technical details and decision-making processes.

Pro tip: Quantify results and highlight trade-offs you considered; this shows you think like a senior engineer who balances multiple factors under uncertainty.

1. Set the Context

Briefly describe the project, your role, and the team's goal, highlighting any ambiguous requirements or constraints.

2. Define the Challenge

Explain the specific problem you tackled, why it was ambiguous, and what made it difficult (e.g., unclear specs, changing priorities).

3. Describe Your Actions

Detail the steps you took to resolve ambiguity, such as gathering data, prototyping, or collaborating with stakeholders, and the technical decisions you made.

4. Highlight the Outcome

Share the measurable results (e.g., performance improvements, user impact) and what you learned from the experience.

5. Connect to Blinkit

Relate the experience to Blinkit's fast-paced environment, showing how you can handle similar challenges there.

Key Points to Mention

  • Specific examples of ambiguity (e.g., unclear requirements, shifting priorities) and how you navigated them.
  • Technical decisions and trade-offs you made, with reasoning.
  • Collaboration with cross-functional teams to clarify and align on goals.
  • Quantifiable results and impact of your work.
  • Lessons learned and how you applied them to future projects.
  • Adaptability to changing circumstances and willingness to iterate.

AI-generated suggestions, not part of the candidate's original notes. May be inaccurate — verify before relying on them.