Q1
Design a distributed caching system that handles cache invalidation across multiple services in a microservices architecture. What trade-offs would you consider between consistency and availability?
Why they ask this:* They want to assess your understanding of system design at scale, distributed systems concepts, and your ability to reason about architectural trade-offs that senior engineers regularly make.
Q2
Walk me through your approach to optimizing a SQL query that's currently performing a full table scan on a 100M+ row table. What tools and techniques would you use to diagnose and fix the problem?
Why they ask this:* They're evaluating your depth of database knowledge, practical debugging skills, and whether you understand performance optimization—critical for a senior engineer who mentors others.
Q3
Explain how you would implement automated canary deployments for a critical service handling millions of requests daily. What metrics would you monitor, and how would you automate rollbacks?
Why they ask this:* This assesses your experience with production systems, DevOps practices, risk management, and your ability to design resilient deployment strategies that senior engineers are expected to own.
Q4
Describe your experience with asynchronous programming patterns. Compare callback-based, Promise-based, and async/await approaches, and explain when you'd choose each in a production environment.