Hacker News new | ask | show | jobs
by efwfwef 1932 days ago
My latest system design interview was: design this app. Dude was like "I'm expecting you to lead the conversation". I was like, bitch there's a million things to talk about, at some point you have to tell me where you want the convo to go. Needless to say I failed, when I'm probably overqualified for the job, but heh...
3 comments

I don't think you're overqualified. I'm not a systems designer by any means but here's how I'd lead this conversation:

"Ok cool. Before we get started, let me understand some non functional requirements. How many concurrent users do we expect? Is brief downtime acceptable?"

Then you listen to the answer.

Then you say "ok cool. So given what we just estsblished, it's making me lean towards X type of architecture. Here are trade-offs A,B, and C that are involved. Does this make sense to you so far?"

You listen to their answer. They will 100% of the time indicate to you if you are on the right track or missing something.

Then you go "ok cool. So on the high level we are going to have (for example) a client, a server, a proxy, a database, etc . Given what we discussed, I think the most complex part of the system will be X so let me begin by thinking through that and then we can pop back up to other parts. Does that sound good to you?"

Etc.

I am not looking to make you feel bad but being able to have this conversation in this way is a baseline skill of a senior engineer. Compare that to what you actually did and ask yourself if it's you or the "bitch" that has room to improve here.

I had this for my current job. I was asked to design Facebook and it just ended up being nearly entirely about how to design a notification microservice. Got the job so it evidently worked, but I was just going on in a direction until told to stop.
> Needless to say I failed, when I'm probably overqualified for the job, but heh...

Judging by the way you talk, I seriously doubt that.

you failed at inclusivity and bias : )