Go · recruiter script
Go screening questions for recruiters
A recruiter script for screening Go engineers. Read the prompt; use the rubric to gauge depth without writing code yourself.
1. What is a goroutine, and how is it different from an operating-system thread?
- Junior
- Lightweight concurrency; cheaper than a thread.
- Senior
- Multiplexed onto OS threads by the runtime scheduler; thousands are cheap; mentions the scheduler.
- Red flag
- Equates goroutine with a thread or cannot explain the difference.
2. When would you use a channel versus a mutex in Go?
- Junior
- Channels pass data between goroutines; mutex protects shared state.
- Senior
- "Share memory by communicating"; channels for ownership handoff, mutex for simple shared counters.
- Red flag
- No idea, or claims one always replaces the other.
3. How does error handling work in idiomatic Go?
- Junior
- Functions return an error value you check.
- Senior
- Explicit `if err != nil`, error wrapping with `%w`, no exceptions; discusses trade-offs.
- Red flag
- Expects try/catch and dislikes returning errors without understanding why.
Want StepUP to run the whole screen?
These questions are the free version. StepUP runs the full structured Go interview and returns a scored report.