InterviewStack.io LogoInterviewStack.io

Concurrency and Synchronization Questions

Covers the principles and practical techniques for safely coordinating concurrent execution and access to shared resources. Topics include models of concurrency such as threads, processes, interrupt handlers, and tasks in a real time operating system; differences between preemptive and cooperative scheduling; shared data hazards including race conditions and read modify write hazards; critical sections and approaches to protect them including disabling interrupts in embedded contexts and scoped locks. Synchronization primitives and patterns are included: mutexes, binary semaphores, counting semaphores, condition variables, message queues, atomic operations and lock free primitives such as compare and swap. Memory ordering concerns and memory barrier usage on multi core systems are covered, along with priority inversion and priority inheritance. Also addressed are deadlock, livelock, and starvation concepts and avoidance strategies, granularity and performance trade offs of locking, and practical synchronization patterns. Preparation should include identifying and fixing races in code, designing correct concurrent interfaces, and debugging and testing techniques such as stress testing, instrumentation, deterministic replay, race detectors, static analysis, and code review strategies.

MediumTechnical
0 practiced
Explain read-modify-write hazards and illustrate with a C code example where non-atomic increments cause lost updates across threads. List atomic primitives available in modern C/C++ standards and mention which hardware instructions typically implement them.
HardTechnical
0 practiced
Design a reconciliation strategy when replicas diverge due to a concurrent update race in a multi-master system. Given vector clocks or version vectors as available metadata, propose a deterministic merge approach suitable for key/value updates and discuss how to handle conflicting binary blob writes and minimize downtime during reconciliation.
MediumTechnical
0 practiced
During a release, an intermittent race causes data corruption in production. You're the on-call SRE: describe immediate mitigation steps to reduce customer impact, how you'd determine whether to rollback or patch, and practical steps to reconcile corrupted data if necessary.
EasyBehavioral
0 practiced
Tell me about a time you participated in a post-incident review where a concurrency bug caused an outage. Describe your role, how you identified the root cause, what technical remediation you implemented, and what process changes you recommended to prevent recurrence.
MediumSystem Design
0 practiced
Design a distributed locking service to coordinate leader election across 1,000 microservice instances. Requirements: support 1,000 lock operations/sec, survive leader/node failures, avoid deadlocks, and provide a lease TTL to recover from failed holders. Outline architecture options (e.g., consensus-based vs lease-based), explain how to handle clock skew, and describe failure scenarios and mitigations.

Unlock Full Question Bank

Get access to hundreds of Concurrency and Synchronization interview questions and detailed answers.

Sign in to Continue

Join thousands of developers preparing for their dream job.