Introduction
Varients
Big tech care more about the reasoning. Asia expect you to know more about the vocabulary in design pattern
Interview assessment
- Problem analysis
- Strong candidate will extract the key entities, responsibilities and ask clarify questions to lock down scope
- Interviewer don't want to see you jump directly at the coding part
- Class design
- Choose the right responsibities, shape method signatures, defining clear ownerships
- Good class design will make the rest of the interview natural
- Code quality
- Expect to see Encapsulation, well-managed state, sensible use of composition/inheritance, clear separation of concerns
- Extensibility & maintainability
- Most one include a small follow up, whether your deisng can absorb new functionality without being re-written
- Strong candidate build flexible structure with clean boundary
- Communication
- Clear narrative, thoughtful reasoning