Tech IndustryDec 14, 2018
OSIsoftexWV57

Failed second onsite in a row due to system design round

For the second time in a row, I got vetoed by the interviewer responsible for the system design round. I am not very sure what the problem could be so any insight is appreciated. In every single system design round, I have designed large scale distributed systems discussing all of the below topics as and when applicable: Scope and requirements, scaling, CAP theorem, usage of load balancers, SQL vs. NoSQL, Columnar databases, trade-offs between different approaches including asynchronous processing patterns using queues, back-of-the-envelope numbers, options for different consistently levels depending on requirements, etc. Resiliency. Partitioning. Data replication. Hashing. Even discussed distributed consensus using Paxos, including its implementations in different cloud providers. I am starting to wonder if I should simply not bring up any conceptual aspect of distributed computing. Perhaps it would be wise to focus exclusively on the implementation? Is it possible that many interviewers have never heard of distributed consensus or CAP theorem, and simply do not understand things like eventual vs. strong consistency? Maybe they think I am BS'ing? I have read Grokking the System Design Interview, Donne Martin's System Design Primer, Designing Data Intensive Applications, AWS Framework whitepapers, and several other related articles and blog posts. Any thoughts? Are there any pointers on how to go about designing distributed systems during a system design interview round? What am I doing wrong?

Add a comment
New
BetaWhite Dec 14, 2018

Did you ask feedback? Did you compare your answers on internet? Any mock interview? Any mentor? Or may be just unlucky! Ask recruiter possiblity of second round?

OSIsoft exWV57 OP Dec 14, 2018

Recruiters were unwilling to give any specific feedback except that "you got vetoed by the system design interviewer" (paraphrased). Possibility of additional round did not come up. I have given multiple mock interviews and did quite well in almost every single one of them - both online and with interviewing buddies. For what its worth, I have also had offers (that I have declined) from places where I cleared onsites with system design rounds based on distributed systems. But this problem seems to be happening when interviewing at the very places I am targeting. I could still reapply in a few months (and get fast-tracked interviewed, as per recruiter) and there are more target places in the pipeline. But I would like to get a handle on the problem and define some course correction before proceeding any further in the process.

New
BetaWhite Dec 14, 2018

Then looks like you are loosing confidence because you desperate to get into it. You need to work on this part probably.

New
babaramdv Dec 14, 2018

Dude reading is one thing and actually implemeting is another. You perhaps comes across as imposter. I reject many interviewees like you who claim to have implemented feature which they did not. I have no problem recommending a developer who us honest about their past, but I cannot do that to a cheat.

New
BetaWhite Dec 14, 2018

Patanjali conducts interviews?

OSIsoft exWV57 OP Dec 14, 2018

I did not mention in the original post, but I have actually worked on distributed computing for few years now. That includes having to understand and work through many of the topics I have mentioned. The reading is on top of the implementing.

Amazon aSoL84 Dec 14, 2018

Sounds like regurgitation of knowledge than actually thinking through the problem

New
babaramdv Dec 14, 2018

^This.

OSIsoft exWV57 OP Dec 14, 2018

Interesting. I can see how it may be possible for certain interviewers to perhaps misinterpret comfort with a domain as regurgitation. Indeed places that extended me offers had much harder distributed systems problems/questions - not what one might find in Grokking or any primer on GitHub. Meanwhile, the couple of places that vetoed me at the system design round had the usual run-of-the mill design questions. Certainly, food for thought...

LinkedIn Gill Bates Dec 14, 2018

Are you over engineering things? If I ask you to implement a URL shortener and you bring up Paxos, that's definitely unwarranted complexity that's going to bite you in the ass later.

OSIsoft exWV57 OP Dec 14, 2018

Very good feedback. Thanks!

Amazon smsn sns Dec 14, 2018

Your book and prep material is missing customer side of the things. May be you can add "value proposition design" to it

Proofpoint Qa👻 Dec 14, 2018

^^^ this guy

Amazon smsn sns Dec 14, 2018

At senior level I want my engineers to know worth of engineering solution. Otherwise you end up creating chromebook and torture Interview Candidates.

Amazon guyi Dec 14, 2018

Is Paxos the company that made Toy Story? Good movie

New
babaramdv Dec 14, 2018

Yes it’s a Trojan horse story dude!

Amazon buttcake Dec 14, 2018

Nope they made Cars.

OSIsoft exWV57 OP Dec 14, 2018

Many thanks to everyone who provided constructive feedback. Based on comments here, along with my own analysis, I have some pointers for potential course correction. Posting here in case anyone else finds it of any value: 1. Focus lot more on implementation rather than the conceptual aspects of distributed systems, unless specifically questioned. 2. Slow down. It is possible interviewer may be interpreting ease and comfort with the domain as mindless regurgitation without thinking through the problem. 3. Do not over-engineer things. For example, If interviewer asks to implement a URL shortener and you bring up Paxos, that's definitely unwarranted complexity. 4. Consider adding value proposition to design. Do not miss customer side of things.

VMware BobbleHat Dec 15, 2018

Interviews are never about the right answer. They are about making the interviewer think that you think like them. Everything else is just fluff.