Advanced Coding Interview Involving Concurrency / Multi-threading / Distributed System Design Topics
Ever since 2025, there has been an increasing number of in-depth problems involved in the seemingly resolvable coding interviews, which used to be very uncommon. It’s worthwhile noting that being unprepared for such topics but merely showing a problem-solving mindset may not always lead to a desirable passing-level result, given the extremely-competitive job market, while it’s also not recommended to learn by rote - memorizing the answer without thorough understanding could be easily recognized as imposter by the interviewers.
Discord Screen Challenge - Chat Server
Problem Statement
Functional Requirements:
- The chat server should be capable of handling multiple clients connecting at the same time.
- Disconnection should be handled in a clean way.
- Should be able to receive and forward messages among clients (message is not echoed back to sender).