Details

Interview Time:  
August 5, 2025 5:00 PM
Targeted Company:  
Targeted Level:  
Junior/Mid/Senior

Record

Record Link:  
Record

Feedback

Coach Tony has provided the following feedback on your session:

Jing Yan demonstrated a solid grasp of distributed systems fundamentals and showed strong potential for senior-level roles, particularly in designing a distributed cache or key-value store system. Their thought process was structured, and they were able to articulate both core components and advanced design trade-offs effectively.

Areas of Strength:

  • Quickly and clearly outlined functional and non-functional requirements without needing much prompting.

  • Strong technical illustration using correct data structures like hash maps and doubly linked lists.

  • Introduced asynchronous expiration checking jobs to manage stale entries.

  • Thoughtfully addressed availability and fault-tolerance, including replica handling, primary-secondary dynamics, and election mechanisms.

  • Discussed network partition challenges and touched on reconciliation strategies using timestamp-based conflict resolution.

  • Demonstrated a firm grasp of horizontal scaling through consistent hashing and explained its value in dynamic key allocation.

  • Able to describe write-ahead logging (WAL) usage to ensure consistency during data migrations.

  • Introduced concepts like health checks, coordinators (Zookeeper), and state tracking for hash nodes.

Areas for Improvement:

  • Estimation logic should start from business use cases and workload assumptions—not infrastructure like EC2. Lead with intent, then model scale.

  • Clarify the mapping from business scenarios to the underlying data model, rather than working backwards from the tech.

  • Remember that cache should focus only on high-cost computation results, not all metadata in a KV store.

  • The set flow needs to differentiate between cases where a key exists vs. does not exist. Each has different update implications.

  • Rather than storing TTL, consider computing expiration time directly and evaluating it when needed.

  • For health checks, asynchronous jobs may be insufficient—lean into real-time heartbeat mechanisms for service-level guarantees.

  • Continue refining the role of Zookeeper in your system as a coordination and consensus tool.