Live data from Hacker News

A senior engineer's guide to the system design interview

interviewing.io

311–320 of 399 posts

Re: A senior engineer's guide to the system design interview

#311

Earlier quoted context omitted.

Like other commenter pointed out you were interviewing for what basically amounts to “tech lead” role without relevant experience. I’m not sure other L4-5s on the team would be happy if someone less experienced is hired in a TL role

Was on a team this happened on and a lot of the l4 l5 Eng gossiped about how little our L7 knew

I don't think someone gossiping about how their work superiors are fools is really notably strange to be honest.

Re: A senior engineer's guide to the system design interview

#312

This is, unfortunately, painting an overly rosy view of the interviewer. A lot of the time your interviewer is just going to be some senior person with an interview guide. They'll be asking you to design Netflix, without any experience with video or streaming themselves. Rather than "trying crazy stuff", I've found that an important step is asking a few questions early in the interview to see if they understand relev…

Yeah they want a canned answer, like they want some standard algorithm for leetcode. You need to be as standard as possible so they can check their boxes

Re: A senior engineer's guide to the system design interview

#313
post #284

Earlier quoted context omitted.

> There's a good chance at my career phase I have more experience than the interviewer. This happens a lot. I was once in the process for google and was asked a time series systems design problem. I said, “lets throw this in a time series db”. The interviewer had no idea what a time series’s db was. Mind you this was an interview for Google Cloud and the person worked on SPANNER. They also has been at the company for…

What's the sour taste -- what's the problem? Like, what's wrong with being interviewed by someone with less experience than you?

How can someone less experienced that you gauge your competency for a position that requires more experience than they have?

That’s before wondering why they’re asking a question to gauge my competency when they don’t even understand the nuance of the question themselves.

An interviewer working on google’s enterprise nosql db but not knowing about (at least on a surface level) the breadth of nosql dbs doesn’t seem crazy to you?

The tech interview circuit has really become a bunch of people asking questions that they couldn’t really answer themselves without a rubric in front of them (whether leetcode or system design).

To be crude, it’s a bunch of nerds hazing for jobs.

Re: A senior engineer's guide to the system design interview

#314
post #283

Earlier quoted context omitted.

Yeah, I don't think I want a job that asks such questions. I've done the webscale BS. I've done actual architecture that exists in reality. At this stage in my career there's nothing an interviewer can do but insult me. You might say that this is hubris about my own skill but it has nothing to do with how good I am. My resume has a LOOONG track record of consistent work in the industry. Call my references, do some ac…

If you can't be in a room with a more junior engineer and explain your ideas in simple language by drawing a few boxes on a whiteboard, then yeah you are probably not a good fit for these positions.

If you want to explain what a timeseries db is to someone who has no clue in a 45 minute (already time constrained) systems design interview (where you’re supposed to be actually showing how you would design a system), be my guest.

Re: A senior engineer's guide to the system design interview

#315

Earlier quoted context omitted.

I'm also a former interviewer from Google. I typically interview people for L6+ roles. What's being called "bias" here may simply be "experience" and a fundamentally different understanding of the System Design interview's purpose. Side note: Systems Design interviews are reserved for "senior" level candidates (L5+). It is a significant inflection point for expectations, as senior-level employees are expected to navi…

It would be great if every interview was like this. But I see system design, even at top tier companies, to be similar to leetcode. An algorithmic problem with a standard solution, where the interviewer is looking for that standard solution. There is more degrees of freedom, but not really. Interviewers are looking for memorized answers from the same few prep materials.

Unfortunately, that type of experience is becoming more and more common, and that speaks to the interviewers and their lack of understanding of the whys of the systems design interview process itself...

I suppose this is one more sad byproduct of the title/level-inflation or skill-dilution that has been happening across industry, as well as the 'gamification' of the interview process on both sides.

Some interviewers can also end up being lazy as well.

Re: A senior engineer's guide to the system design interview

#316

Earlier quoted context omitted.

I'm also a former interviewer from Google. I typically interview people for L6+ roles. What's being called "bias" here may simply be "experience" and a fundamentally different understanding of the System Design interview's purpose. Side note: Systems Design interviews are reserved for "senior" level candidates (L5+). It is a significant inflection point for expectations, as senior-level employees are expected to navi…

It would be great if every interview was like this. But I see system design, even at top tier companies, to be similar to leetcode. An algorithmic problem with a standard solution, where the interviewer is looking for that standard solution. There is more degrees of freedom, but not really. Interviewers are looking for memorized answers from the same few prep materials.

[deleted]

Re: A senior engineer's guide to the system design interview

#317

I am on the interviewer side of ~1 system design interview per week and have done probably around 100 of them at Google and other companies. Most of the advice here is good, although it could be condensed quite a bit. The biggest red flag for me as an interviewer is when candidates list off concepts or technologies they don't understand. DO NOT say things like "we can't do this because of the CAP theorem" or "we shou…

> The purpose of the system design interview is to convince me that you could build, or lead a team to build, the thing that we are discussing at a company like the one where you are interviewing. I feel like I can easily see through interview practice or coaching, so I don't recommend spending more than an hour or so "preparing" for system design interviews. Unless you are interviewing somewhere with very inexperien…

> I just didn't know how you're supposed to approach the question.

For your example, I would ask them to define what scale we were operating in, and what the footprint would be, etc.

Then you could start off with a more complex design (which seems like what the interviewer wanted.)

Re: A senior engineer's guide to the system design interview

#318

Earlier quoted context omitted.

I’ll tell you precisely what it says about me: I put in 60 hour weeks at my current job, except for a month before I change jobs, where I put in an additional 2 hours/night to prep for interviews, because that’s what will benefit me for every other company. I care about my career and my family, so I don’t have the luxury of spending it on passion projects outside of work. I’d rather spend the precious little time I h…

Is that 6 AM - 6 PM nonstop work M-F? Or 8 hours on the weekdays and Saturday with a 12 hour sprint on Sunday? How many of those 60 are spent in meetings? Superhuman working hours for someone with a family.

I am not going make judgement on people's loyalty. If someone chooses to do 60 hours works more power to them. If people don't want to do side projects that is perfectly fine too. Seriously my motivation wasn't to suggest id penalize those without a side project. It was more from my observation that (from several l5-l7 candidates):

1. Despite the "let us work together" intent it is still an exam where you are penalized for taking too long or making a "wrong" assumption or missing a few bits,

2. Given above or not when confronted with a random question it can be easy to get very nervous unless you have built a similar system from 1 to 1b user scale or you have done tons of practise interviews with companies.

So apart from interviews being hard and what they are purely because of supply and demand I wanted to see if you can learn just as much from a more open book approach (with either a side project or candidate knowing the question ahead of time say the night before). It could even be more inclusive that way!

Re: A senior engineer's guide to the system design interview

#319
I will read this as it seems really good. However, it always feels like a catch-22 problem to me, in the sense that, if you've never worked at a large company before, you can't claim to have truly used or understood large scale systems properly to work on them or design them in production.

I got rejected from a large tech company after failing system design and this was exactly their reasoning: "you seem to know the concepts and the theory really well, but, it was obvious to the interviewers that you lack the real world experience and hiring you would be a risk".

Obviously I... knew or at least tried to know the theory because I PREPARED. I read books, articles, practiced mock problems, watched YouTube for a few weeks, etc, etc. I just tried to "drill" the knowledge that was not there into my brain for the purpose of passing the interview. I guess that's what a lot of people do.

So yeah, it left me really down for a few months and feeling bad about myself and like the world sucks. So, how are you all out there "faking it till you make it" in a convincing way?

Because I bet that no engineers at a FAANG will alone design a full scale system on their own ever, so I doubt the usefulness of the "signal" these interviews give, but, ofc, that's just me, someone who prepared for months and failed

Re: A senior engineer's guide to the system design interview

#320

Earlier quoted context omitted.

We call this out in our pre-interview handout. If you've got an NDA, choose something that isn't included in your NDA or figure out a way to describe it at a high level. We caution candidates that if we dig in and we run into something blocked by the NDA it creates challenges with our evaluation. It doesn't necessarily have to be something that you're working on. It just has to be something that you understand well e…

>We caution candidates that if we dig in and we run into something blocked by the NDA it creates challenges with our evaluation. So you're penalizing those under NDA and unecessarily limiting your candidate pool.

There's nothing 'unnecessary' about it. If you can't talk about technology in an interview for a software engineer, what else do you have to go on?
Post reply on HN