Engineering Manager System Design Interview (Wealthfront EM): Design YouTube

Ойын-сауық

Don't leave your system design interview to chance. Sign up for Exponent's system design interview course today: bit.ly/3qMqMyX
Watch our mock engineering management system design interview. Kevin asks Hozefa, Wealthfront Engineering Manager, a question on how to design KZread.
Chapters -
00:00:00 - Introduction
00:00:36 - Question
00:00:55 - Clarifying questions
00:04:17 - Design
00:09:03 - Scale
00:14:56 - Data types
00:20:57 - Interview analysis
Watch more videos here:
- Amazon SDE answers binary tree question: • Amazon Software Engine...
- Google SWE answers algorithms interview question: • Google Software Engine...
- Google TPM answers Tiktok system design interview question: • System Design Mock Int...
- Microsoft SWE answers algorithms interview question: • Microsoft Software Eng...
👉 Subscribe to our channel: bit.ly/exponentyt
🕊️ Follow us on Twitter: bit.ly/exptweet
💙 Like us on Facebook for special discounts: bit.ly/exponentfb
📷 Check us out on Instagram: bit.ly/exponentig
📹 Watch us on TikTok: bit.ly/exponenttikttok
ABOUT US:
Did you enjoy this interview question and answer? Want to land your dream career? Exponent is an online community, course, and coaching platform to help you ace your upcoming interview. Exponent has helped people land their dream careers at companies like Google, Microsoft, Amazon, and high-growth startups. Exponent is currently licensed by Stanford, Yale, UW, and others.
Our courses include interview lessons, questions, and complete answers with video walkthroughs. Access hours of real interview videos, where we analyze what went right or wrong, and our 1000+ community of expert coaches and industry professionals, to help you get your dream job and more!
#systemdesign #wealthfront #youtube #engineeringmanagement #tech #entrepreneurship #exponent #tpm

Пікірлер: 75

  • @tryexponent
    @tryexponent2 жыл бұрын

    Don't leave your system design interview to chance. Sign up for Exponent's system design interview course today: bit.ly/3qMqMyX

  • @harisbeg7026

    @harisbeg7026

    2 жыл бұрын

    What tool was he using to draw?

  • @tryexponent

    @tryexponent

    2 жыл бұрын

    @@harisbeg7026 It's called Whimsical! We use it across all our system design interviews

  • @totsubo2000

    @totsubo2000

    2 жыл бұрын

    I do not recommend Exponent. I signed up and paid for Exponent's system design course - it is not worth it. It's very generic and the material very shallow. This video is proof :)

  • @antonantochi8498
    @antonantochi84982 жыл бұрын

    This design based on thought that all videos are single blob, but actual KZread preloads videos partially and each of their resolutions can vary independently.

  • @ashishcheema
    @ashishcheema2 жыл бұрын

    Few things talked are not clear: - Blob is shared. ... thats little surprising.. - adaptive streaming and non-adaptive streaming.. bandwidth estimation and request for corresponding chunk is done by client not server.. - does shard by video makes good utilization of resources instead of user id?

  • @zeenathkatta7480
    @zeenathkatta74802 жыл бұрын

    Good info.Impressed with the content delivered.

  • @shyama5612
    @shyama56122 жыл бұрын

    First make sure to add the feature to remind users to subscribe to premium version, endlessly without opt out. Just kidding. Great details, very useful. Thanks.

  • @tryexponent

    @tryexponent

    2 жыл бұрын

    Sign up here 😉 bit.ly/2Nl5Bn5

  • @fusionsanghi7046
    @fusionsanghi7046 Жыл бұрын

    Got lost towards the end of the discussion when the Q was how to funnel the "Superbowl" live broadcast via this solution. Didn't understand the caching part of it. How reliable that will be?🥵

  • @vavenugo
    @vavenugo2 жыл бұрын

    He talks about sharding the video metadata DB and then says "Corresponding the same thing could happen to the blob storage as well". So let me get this straight, we use S3 for blob storage and then we shard it? What a load of BS!

  • @miale3593
    @miale35932 жыл бұрын

    How to avoid hot partition when sharping by user Id?

  • @krisdestruction

    @krisdestruction

    3 ай бұрын

    You shouldn’t shard by user id to avoid hotshards . But if you have to, replication and random reads will help mitigate

  • @goku6272
    @goku6272 Жыл бұрын

    Hey bro how youtube uploads work if the video is large like 500mb or 1gb. Is the upload happens directly on frontend on s3 then link is given to backend or http call is made to backend and wait for its upload

  • @architchauhan7870

    @architchauhan7870

    11 ай бұрын

    Video compression is done and every video is split into three major tasks: Video Transcoding, Audio transcoding and metadata persistence. Talking about video transcoding, Videos are split into multiple chunks of files and a DAG of tasks is generated, workers pick parallel nodes and sequential nodes.

  • @ManishKumar-mo6gx
    @ManishKumar-mo6gx2 жыл бұрын

    Lost interest the moment he started comparing web socket with REST for uploading data.

  • @kumarmanish9046

    @kumarmanish9046

    2 жыл бұрын

    Why? It is a valid criteria to compare. They are different simplex vs duplex, so a valid comparison to choose one vs another, right? What am I missing ?

  • @joo02

    @joo02

    2 жыл бұрын

    @@kumarmanish9046 Manish Kumar vs Kumar Manish

  • @learnersparadise7492

    @learnersparadise7492

    2 жыл бұрын

    you are right, this guy doesn't know websocket vs REST difference, when to use what.

  • @redditia3202

    @redditia3202

    2 жыл бұрын

    @@joo02 You won it, bro🤣

  • @seriousbees

    @seriousbees

    2 жыл бұрын

    @@joo02 a showdown for the ages

  • @khaino6828
    @khaino68282 жыл бұрын

    what is white boarding tool used?

  • @ArunKumar-dv2jn

    @ArunKumar-dv2jn

    2 жыл бұрын

    Whimsical

  • @rajeevrp1500
    @rajeevrp15002 жыл бұрын

    Which tool is he using for writing those design diagrams ? Good info by the way, thank you Exponent.

  • @89DerChristian

    @89DerChristian

    2 жыл бұрын

    i believe it’s whimsical

  • @nikhilmakkad7880

    @nikhilmakkad7880

    Жыл бұрын

    Yes

  • @armenarz4062
    @armenarz40622 жыл бұрын

    device agnostic? better to ask - do we need mobile app or users will use only web application?

  • @mystikyogi
    @mystikyogi2 жыл бұрын

    I read that you can't scale SQL horizontally, why are we using SQL?

  • @yuanhengzhao4188

    @yuanhengzhao4188

    2 жыл бұрын

    The SQL you mentioned is relational database right? It's hard to scale rds, but not possible, beside, solutions like aws aurora can take care of the scale for you. Here is an exmaple that I think rds is better than nosql in this case. When you want to know people who replies your comments(join operations), you will find out that implementing rds db is very simple and elegant, all you need to have are userDB, CommentDB, and a join can take care of the request. But if you choose nosql, like mongodb or dynamo, you have to store user info(e.g. name) into CommentDB because nosql doesn't support join. And you will run into problem when user update there profile. The name saved in the CommentDB also needs to be updated to prevent the inconsistency. Clearly it's not a good approche . Of course you can only save the user_id and do another query to mock the join operation, but why not using a solution with join at the first place?

  • @mystikyogi

    @mystikyogi

    2 жыл бұрын

    ​@@yuanhengzhao4188 yes thats one of pro but i think it would difficult when you shard data which require joins have to be on same shard so I'm not sure if we can scale that way so in that case nosql is easier

  • @srijankumarsamanta5579

    @srijankumarsamanta5579

    2 жыл бұрын

    That's the reason sharding logic was discussed, needed to keep in mind how the recommendation systen will use joins between rows etc. Though the answer is not satisfactory to me, bcos it can create a lot of load on shards which has users with millions of subs, more diff strategies to explore

  • @prashantsalgaocar
    @prashantsalgaocarАй бұрын

    For streaming of videos (uploaded) which we know would become popular. We default cache them in the CDN. We know that these are popular videos so we cache them and access the videos via CDN's from various regions based on geography, type of event. We would have a list of popular events like SuperBowl, TaylorSwift, Soccer matches which are popular based on region (country) and those we cache directly once the video is uploaded. Live events streaming is out of scope for this design. Do let me know if this is a good approach and what would be some changes if we went for live streaming events.

  • @tryexponent

    @tryexponent

    27 күн бұрын

    I like your approach of region and event-based caching. It should give improved performance! 💪 For live streaming, we could potentially be looking at implementing real-time transcoding, using low-latency protocols, adding origin shields, developing dynamic scaling capabilities and some security measures.

  • @DamjanDimitrioski
    @DamjanDimitrioski9 ай бұрын

    What happens on a real product like this if you cannot afford to scale more blob storage in a mid of few years of the product, would you tell the users from now on you have limited numbers of videos or other limitations or this more business decision?

  • @tryexponent

    @tryexponent

    9 ай бұрын

    Hey DamjanDimitrioski, thanks for the question! While there could be technical solutions to slow down the need to scale, this is ultimately a business decision. If you can't afford to scale, it may likely mean that your business model isn't profitable enough, or you aren't monetising it well. The question then becomes "is it worth it to keep this product up and running?" (considering accounting profits, opportunity cost etc.) Hope this helps!

  • @AbhishekBalani93
    @AbhishekBalani932 жыл бұрын

    Is there ever a wrong answer in system design interview?

  • @japanboy31415

    @japanboy31415

    2 жыл бұрын

    I think as long as u justify ur good to go

  • @sunny-14689
    @sunny-146892 жыл бұрын

    Can we shard by title and description?

  • @RajdeepBorgohainRajdeep

    @RajdeepBorgohainRajdeep

    Жыл бұрын

    Why you want to do that? There will be very less similar titles and forget about the description.

  • @tommysuriel
    @tommysuriel2 жыл бұрын

    No load balancers?

  • @srijankumarsamanta5579

    @srijankumarsamanta5579

    2 жыл бұрын

    Its understandable at this level, if scaling a service horizontally its mostly by use of load balancers

  • @armenarz4062
    @armenarz40622 жыл бұрын

    eventual consistency? for what? video? user profile?

  • @srijankumarsamanta5579

    @srijankumarsamanta5579

    2 жыл бұрын

    Video since its on blob storage, user data is ACID compliant

  • @miale3593
    @miale35932 жыл бұрын

    Server to talk to CDN and get back to users, hmm

  • @alicezhang3504
    @alicezhang3504 Жыл бұрын

    What software is this? Is it Figma?

  • @tryexponent

    @tryexponent

    Жыл бұрын

    Hi Alice! The whiteboard being used here is “Whimsical”. They have a free and paid version so do check them out if you are interested!

  • @harisbeg7026
    @harisbeg70262 жыл бұрын

    What software was he using to draw?

  • @antoncaballes1846

    @antoncaballes1846

    2 жыл бұрын

    waiting for an answer

  • @devanshgarg31

    @devanshgarg31

    2 жыл бұрын

    Notion

  • @bikkina

    @bikkina

    2 жыл бұрын

    Whimsical is the tool

  • @antoncaballes1846

    @antoncaballes1846

    2 жыл бұрын

    @@bikkina thank you.

  • @antoncaballes1846

    @antoncaballes1846

    2 жыл бұрын

    @@devanshgarg31 No, It's Whimscal.

  • @ankitsrivastav6363
    @ankitsrivastav63632 жыл бұрын

    Good fun, close to Kapil sharma show.

  • @83kumarvishal
    @83kumarvishal2 жыл бұрын

    i guees when sharding , the right indexer should be genre/ country of origin.. isnt it

  • @gauravrawat8959

    @gauravrawat8959

    2 жыл бұрын

    Yes indexing by user doesn't make any sense. It should always by the most common trait of a video.

  • @RajdeepBorgohainRajdeep

    @RajdeepBorgohainRajdeep

    Жыл бұрын

    Same thought here. User-based sharding will help in indexing only the particular creator's videos. But geographic based sharding will help in indexing, and it will be more efficient in building recommender Systems

  • @RajdeepBorgohainRajdeep

    @RajdeepBorgohainRajdeep

    Жыл бұрын

    Correct me if I am wrong somewhere

  • @rajsekhar28
    @rajsekhar282 жыл бұрын

    You don't need websocket for uploading video

  • @kumarmanish9046

    @kumarmanish9046

    2 жыл бұрын

    for large videos would http rest work ?

  • @rajsekhar28

    @rajsekhar28

    2 жыл бұрын

    @@kumarmanish9046 yes it depends on what the server can support but technically you can upload at least 1GB or you can break the video in small files and then upload. You can leverage blob store like S3 here

  • @executer77

    @executer77

    Жыл бұрын

    @@rajsekhar28 Here web-sockets are not just used to upload vedio , he must be trying to say that he would be keeping connection alive while uploading videos i guess..

  • @kaushalsad6953
    @kaushalsad69532 жыл бұрын

    Hey I'm preparing for APM roles, is there anyone who wants to join to take interview of eachother.

  • @imsrivatsa

    @imsrivatsa

    Ай бұрын

    Hi Kaushal I'm 2 years late in responding :D and I would like to do that!

  • @shivaprasad.v.g7526
    @shivaprasad.v.g75262 ай бұрын

    Very high level . use less for any senior engineer interview s .

  • @insearchofvalue8034
    @insearchofvalue80342 жыл бұрын

    Are FB manager system design interviews as easy to pass as this guy presents? I am sure an engineer will not pass on this answer.

  • @logicboard7746

    @logicboard7746

    2 жыл бұрын

    Well, he only took ~20mins. I think he went to the sufficient level of detail given the short time for this mock session

  • @ankitkumarjain8896
    @ankitkumarjain88962 жыл бұрын

    I would say analytics is as important as the main functionality(video upload and streaming).It drives revenues and system efficiency

  • @Funsiestype
    @Funsiestype2 жыл бұрын

    My first question is WHY? What’s wrong with KZread. 🤣 exponent interviews are so basic.

  • @learnersparadise7492
    @learnersparadise74922 жыл бұрын

    one suggestion, please do system design with experienced Architect, not engineering managers who hardly have 10 years experience and wouldn't master technology as such, people management is easy but grinding for technology is hard. please do this much favour for us and avoid such shallow contents

  • @amirnamdar8942
    @amirnamdar8942 Жыл бұрын

    23 minutes of non-sense

  • @ngneerin
    @ngneerin2 жыл бұрын

    Too shallow a solution. Good enough for freshers maybe

  • @learnersparadise7492
    @learnersparadise74922 жыл бұрын

    This guy doesn't know when to use websocket vs REST? I am surprised how try exponent is using this person for all demo interview. Too shallow

  • @sur83848

    @sur83848

    11 ай бұрын

    +1

Келесі