This was the first screen for a senior full stack position at Discord. The coding exercise was to build a chat server that could support multiple chat clients. A prompt was provided with the MVP clearly defined. Candidates were allowed to use Google, Stack Overflow, API docs, etc., to come up with their solution.
The screen was approximately 75 minutes long. The interviewer was nice, helpful, and very collaborative. My only negative feedback is that the interviewer seemed to expect me, as the candidate, to go above and beyond the MVP. He asked me to implement follow-up scenarios and cases after I had completed the defined MVP. I thought these were just extra tasks since we had finished the MVP, however, I was rejected a day later. This led me to think that the interviewer's expectation was to successfully implement all the follow-ups.
I believe it would be helpful if this was explicitly stated in the prompt, therefore setting objective expectations for the candidate.
I would also consider what type of screen is appropriate for the position the candidate is applying for. As a full stack engineer, unless you have previous experience building a chat server or protocol, you probably don't use socket programming, connections/disconnections, or event emitters on a frequent basis. The exercise/project should be tailored to the specific position.
Build a chat server that can support multiple clients.
The following metrics were computed from 31 interview experiences for the Discord Senior Software Engineer role in United States.
Discord's interview process for their Senior Software Engineer roles in the United States is extremely selective, failing the vast majority of engineers.
Candidates reported having negative feelings for Discord's Senior Software Engineer interview process in United States.