top | item 45681586

(no title)

weavie | 4 months ago

Yes, a discussion of the tradeoffs of different solutions is exactly what I want to hear in an interview.

discuss

order

thelittlenag|4 months ago

I've now done probably close to 100 system design interviews. One of the main things I've looked for in candidates is their ability to identify, communicate, and discuss trade-offs. The next thing on my checklist is their ability to move forward, pick an option, and defend that option. Really nimble candidates will pivot, recognizing when to change approaches because requirements have changed.

The goal here is to see if the candidate understands the domain (generic distributed systems) well enough on their own. For more senior roles I look to make sure they can then communicate that understanding to a team, and then drive consensus around some approach.

sgarland|4 months ago

> For more senior roles I look to make sure they can then communicate that understanding to a team, and then drive consensus around some approach.

This is why I’m stuck at Senior lol. I can craft incredibly deep technical documents on why X is the preferred path, but when inevitably someone else counters with soft points like DX, I fall down. No, I don’t care that the optimal solution requires you to read documentation and understand it, instead of using whatever you’re used to. If you wanted to use that, why did you ask me to do a deep-dive into the problem?

AnimalMuppet|4 months ago

In the real world, the answer almost always is "it depends".

hrimfaxi|4 months ago

This only seems to be in software engineering. When I was told me wanted to evaluate a new task queue service, I asked what our constraints were. I was told to survey all options and present a roundup and ignore constraints. Contrast with something like, I don't know, building a house. Do architects consider all possible material choices for a given location, or do they instead limit their consideration to materials that would be suitable to the given environment?

Making the dependencies of "it depends" explicit is the whole point.