0

Office Hours Spillover Question - System Design

Profile picture
Entry-Level Software Engineer at Taro Community6 months ago

Hi!

I had mic issues in the OH and couldn't ask live. How would you recommend I prepare for System Design interview questions, especially since I feel my experience at my previous company didn't prepare me well for these?

I have 2.5 years of experience at a big tech company and was recently laid off. Ideally, I’m aiming for an ~L4 level position as I was L3 in my past role and was nearing promotion. I’m getting more interviews at start-ups now, and they typically focus on system design rather than leetcode questions. At my past company, the tools were so powerful that I didn’t get the same breadth of experience a new grad might get at a smaller company. For example, I never touched or thought about our database or considered scalability for our services. In hindsight, I should have taken the initiative to find projects outside of my team with more scope, but now I know better!

My current plan is to read "System Design Interview" by Alex Xu and go through the Taro System Design Masterclass. Do you have any feedback on this plan? I recently had my first system design interviews and have more coming up. I want to prepare as best as I can with the time I have. I’ve accepted that I may not excel at first, but any feedback to improve my preparation plan and mindset would be greatly appreciated. Thanks!

61
1

Discussion

(1 comment)
  • 2
    Profile picture
    Tech Lead @ Robinhood, Meta, Course Hero
    6 months ago

    System design interviews occupy a broad spectrum:

    • Real: Like what you do on the job. You get asked to build a grounded feature at a high-level and have to explain trade-offs
    • Fake: Effectively a memorization exercise. You get asked a high-level question like "How do you build Netflix?" and you just have to recite the exact components Netflix uses. Doesn't actually test your ability to plan and write good code

    How real or fake a system design interview is depends on the question asked and how the interviewer proctors the question.

    That being said, I think the plan you have concerning resources is good:

    • Alex Xu's book occupies more of the "Fake" spectrum where you are just understanding the surface level components with some explanation behind each one. It's a good start (assuming you read with intensity and follow up on the concepts). You can get a discount on ByteByteGo as part of your Taro Premium perks: https://www.jointaro.com/perks/
    • Taro's system design course is more about real system design, going through a real-life example and diving into concrete trade-offs.

    With startups, I imagine the system design interview will be more on the "Real" side as startups need engineers who can start coding ASAP. This means that I recommend doing side projects as well to practically engage with the concepts: [Taro Top 10] Building Impressive Side Projects

    You don't need 1 million users to start engaging with system design concepts. If you're paying attention to quality and dogfooding regularly, you'll be able to tease out ideas like reliability, scalability, latency/performance, and more.