prodding them about what type of system you're really building
what kind of functionality your system is gonna have to support
what characteristics we're gonna value in our system
answer to system interview question had a lot to do with subjectivity
a proposed solution to a system design interview question may very well not be objectively correct or objectively incorrect
it is our job to very confidently justify our solution
it is our job to explain to rationalize why i've made certain choices, why i've designed parts of my system in 1 way instead of another
it is our job to make the interviewer understand why my proposed solution is reasonable, why it's sound, and why it might be the best 1, or perhaps why it might not be the best 1, why it may be 1 of many potential solutions
it is our job to eliminate any doubts that the interviewer might have in some of my design choices
it is our job to defend my position or to adapt my position if the interview challenges it
these are design fundamentals where, if you don't understand them, you will at best have severe gaps in knowledge that will undermine your positions or your ability to defend positions in a system design interview
at worst, will make you incapable of even beginning to tackle a system design interview
e.g.:
client server model: need to know what it is to design any modern day systems
network protocols: need to have some understanding of how machines communicate and interact with 1 another in order to be able to properly design a complex system
real existing products or services that you can actually use in a system, either as actual components in a system or to achieve a certain characteristic in a system