DataZip Interview Experience – SDE 2 (Golang)
Anonymous User
278

📅 Round 1: DSA + Golang Fundamentals
Topics Discussed:
🔹 Questions based on past projects
🔹 Golang-specific concurrency concepts:

What is a WaitGroup and how does it manage goroutine lifecycle?

Difference between Concurrency vs Parallelism

What is the Worker Pool Pattern in Go?
→ Common concurrency pattern where multiple goroutines (workers) pull tasks from a shared job queue for efficient task distribution

What is the purpose of a done channel and how it signals goroutines to stop?

🧠 Coding Questions:
Q1: Word Transformation
Convert one word into another using minimum operations.
Operations allowed:

  • Add a character
  • Replace a character
  • Delete a character

⏱ Time: 20 minutes

Q2: Flatten Nested JSON
Given a deeply nested JSON payload, return a flattened version without any nesting.
⏱ Time: 15 minutes


📅 Round 2: Internal Team (Goroutines + Go LLD)
🧩 Question 1: Concurrent Scheduler
Problem Context:

  • A scheduler needs to execute N SQL queries concurrently
  • System constraint: Warehouse crashes if more than 5 queries are run at once
  • Max memory usage: 16 GB

✅ Expected:

  • Run at most 5 queries in parallel
  • Ensure efficient and safe execution using goroutines
  • Each query should be executed via a function like: Execute(query) → prints result

🧩 Question 2: Document Service (Low-Level Design)
Requirements:

  • Users can create documents (default: private)

  • Owner can:

    • Edit the document
    • Grant access to specific users
  • A document can also be marked as public

  • Implement logic for:

    • Read
    • Write
    • Access control

❌ Result: Rejected in Round 2

Comments (0)