Hacker News new | ask | show | jobs
by dubbel 1035 days ago
Especially for Senior Developers I think systems design questions are more interesting. They usually don't just have one right answer and you need to discuss the advantages and disadvantages of the different approaches. They require knowledgeable interviewers of course. Then again, I'm not working in a huge corp, so I don't know if this scales.
2 comments

> Then again, I'm not working in a huge corp, so I don't know if this scales.

As a grizzled veteran, I LOVE System Design interviews. I love giving them and I love taking them. At large companies, System Design is definitely part of the process. In the world of FAANG, multiple coding rounds with a System Design is common for more junior developers, where a senior interview would have multiple System Design rounds with a single coding round.

> They require knowledgeable interviewers of course. In my round of FAANG interviews, the best System Design rounds were at Google. One was a more typical "design service x" scenario, and the other was "improve and upgrade service y w/out any downtime". Both were related to technology there and were things the interviewers played major parts in designing. Awesome conversations all around and I'd probably do them again just for the fun of it.

The most awkward one was at Facebook. The first design interview was good. It was a little uncomfortable because it was related to technical area I knew little about, but I enjoyed boiling it down to goals & principals and working from there and having the conversation with the senior engineer giving the interview.

The second was given by someone far more junior who was both an inexperienced interviewer and who had clearly not ever designed a system. It was obvious that they were going from a script, so there was little to no discussion or feedback about anything not covered. As a result, I "succeeded" more through guessing what was on the script vs. having an actual system design discussion.

The issue with system design is that it doesn't always have a perfect answer and a lot of things are arbitrary about it. This leaves a lot of bias with the interviewers as to how to interpret the answer and question. This is less the case with Leetcode where there is usually only one or two optimal ways to solve a problem and you can just argue over time and space complexity as a means of what "optimal" is.

System design has a ton of bias in it and it's my least favorite type of interview because of it.

I guess at this point in my career the soft side of system design questions are a good thing. I'm interviewing the team as much as they're interviewing me. The inability to have a soft discussion about something like system design that shouldn't have one right answer is them failing.