Interview Prep
Real questions for real interviews. C#, Python, Go. Junior → System Design.
Quiz me →Go
Junior
- What is the difference between a goroutine and an OS thread?
- Write a Go function that fans out HTTP requests using goroutines and collects results via channels
- How do interfaces work in Go? Explain duck typing and implicit satisfaction
- What are slices in Go, and how do they differ from arrays?
- Two Sum in Go — return indices of two numbers that add up to a target
- Tell me about a time you had to quickly learn a new tool or language to deliver something
Mid-level
- Explain Go's error handling pattern. When should you use panic and recover?
- Implement a concurrent worker pool in Go
- Tell me about a time you improved the reliability or performance of a production system
- What is the context package in Go and how do you use it for cancellation and deadlines?
- Explain the select statement in Go — how does it multiplex channels?
- Implement a context-aware system design for a real production challenge you've faced
Senior
System Design
- Design a horizontally scalable push notification service in Go
- What is consistent hashing and when would you use it in a Go distributed system?
- Implement a minimal distributed job queue in Go (workers, retries, dead-letter)
- Describe a time you led a significant technical initiative — architecture, delivery, and trade-offs