Design an async job system and cache layer
Company: Salesforce
Role: Software Engineer
Category: System Design
Difficulty: hard
Interview Round: Technical Screen
Quick Answer: This question evaluates system design competencies including asynchronous job orchestration, reliable background processing (state transitions, retries, idempotency), and high-throughput in-memory caching (eviction, sharding, consistency, hot-key mitigation) within the System Design domain, requiring both conceptual understanding and practical application details. It is commonly asked to assess an engineer's ability to define clear APIs and data models, reason about scaling, fault-tolerance, observability, and trade-offs between consistency, latency, and reliability in large-scale production environments.