Vad är det bästa sättet att förbereda sig för en systemdesignintervju för Amazon?

Bästa svaret

Systemdesign är obligatoriskt för att förbereda intervjuer för alla erfarna kandidater. Systemdesign betyder skalbara systemdesignproblem (som Uber, Facebook Newsfeed, webbcrawler-design osv.). Som du kan se i alla dessa system har miljarder användare tillgång. Företagen vill också ha en ingenjör som kan utforma systemet som kan hantera miljontals begäran åt gången och systemet ska alltid vara robust med mycket låg latens. Generellt tar det två månader att förbereda systemdesignen om du är en nybörjare. Men ja du måste anstränga dig för att lära dig det.

Innan du går vidare, låt mig ge dig en rättvis uppfattning om hur systemintervju ser ut

Systemdesignrundan ska alltid börja med

  1. En detaljerad diskussion om kraven och vilka alla saker som vårt system stöder och vilka saker vi kan ignorera
  2. Efter kravet är det bättre att ge intervjuaren en rättvis uppfattning om uppskattningen av hur många som ska använda systemet
  3. Diskutera API: et (REST API) Involvera i systemet genom vilket användaren får tillgång till vår tjänst
  4. Försök att rita Slut till slut flödet av hög nivå Design av designen
  5. Tänk och kom med systemkomponenter involverar i systemet och också flödet mellan systemkomponenterna
  6. I slutändan, komma med en låg nivå design av systemet

Det är mycket viktigt att göra en hälsosam diskussion med intervjuaren och försök att ta hjälp från honom / henne wh ile lösa ett problem. Det kommer att göra ett gott intryck av att kandidaterna också är en bra lagspelare . Även om du känner till lösningen börja aldrig lösa designproblemet utan att diskutera det med intervjuaren. Intervjuaren ger en rättvis uppfattning om kravet och ger dig tips. Om du försöker lösa det direkt kommer intervjuaren att tro att du redan känner till lösningen och att ”det är du kommer att avvisas .

Innan du börjar lösa ett problem baserat på systemdesign är det mycket viktigt att förbereda grunderna. Nedan följer några ämnen för grunderna

För att förbereda ett systemdesignproblem är de första sakerna naturligtvis din upplevelse hjälper dig . Som du kanske har varit med om flera livscykler för projektutveckling så hjälper det att svara under intervjuprocessen.

Men de flesta av kandidaterna kommer inte att få mycket exponering i branschen främst för att faktum är 70-75\% av IT-personerna arbetar med ett underhållsprojekt där de behöver lägga till Api och utveckla små komponenter. Så slut till slutbilden av alla projekt de inte fick. För dem kan du lära dig systemdesign genom att gå med i några trevliga Onlinekurser / utbildning . Dessa online-resurser hjälper mig att förbereda mig för intervjuer.

  • Du kan lära dig systemdesign från Logicmojo Kurs. Detta är online-kursen med videoföreläsningar för förberedelse av systemdesign samt algoritmer. Kursen ger dig en god inblick i alla systemdesignkomponenter och den täcker nästan alla designfrågor som ställts i intervjuer. De har inkluderat några 40+ designproblem vilket är bra nog tycker jag.
  • Sedan har vi en mycket känd blogg som heter Högskalbarhet . Dessa bloggar ger dig information om systemkomponenter, API och uppskattningar av de berömda systemdesignproblemen. Även om det täcker enorma detaljer i systemet men du måste också extrahera användbara och relevanta detaljer
  • Det finns också en bra onlinekurs pedagogisk kurs för design av grokking-system. Detta är också en bra samling av systemdesignproblem. Du måste gå igenom helheten och läsa den som dess textbaserade resurser

Du måste också delta i alla designmöten händer i ditt nuvarande projekt på kontoret för att de som möter seniorarkitekten diskuterar designdiskussionen och brister i den befintliga designen av systemet. Detta ger en rättvis uppfattning om hur man väljer design för alla system. Försök också att läsa och förstå designdokumentet för tidigare projekt. Detta hjälper dig också under intervjuer med systemdesign

Svar

Låt dig inte bli överväldigad. Förbered dig steg för steg och dela upp det under din förberedelse, och gör detsamma när du är i den riktiga intervjun. Systemdesign är knepigt – du måste ta itu med intervjustrukturen, men med extra övning är du beredd att hantera allt de kastar åt dig .

  • Förstå målen för intervjun – Att tydliggöra tvetydigheter är tidigt. Se till att du vet vad de vill veta.
  • Upprätta omfattningen – Försök att definiera alla funktioner i designen som du tänker på av deras betydelse för användaren för det tillhandahållna scenariot.
  • Design för rätt skala – Samma funktionsuppsättning kräver en helt annan strategi för olika skalor. Det är viktigt att bestämma skalan så att du vet om dina data kan passa på en maskin eller om du behöver skala läsningarna.
  • Starta hög nivå , arbeta dig sedan ner – Börja med att täcka hela processen, baserat på de mål du har upprättat. Detta kan innehålla detaljer om olika klienter, API: er, backend-tjänster, offline-processer, nätverksarkitektur, datalager och hur de alla samlas för att uppfylla kraven
  • Datastrukturer och algoritmer – Glöm inte att ta hänsyn till dina skalningskrav, där analys av körtid och minneskomplexitet blir praktiskt.

Öva så mycket som möjligt under veckorna fram till ditt möte på Amazon. Att vara konsekvent med din intervjuförberedelse och schemalägga den i din veckorutin under veckorna fram till din intervju kommer att vara den största hjälpen med att göra säker på att du är redo. Kvalitetsutövning är också viktigare än kvantitet också. Se till att du inte distraheras under dina sessioner och att du är fokuserad på de problem som finns och arbetar med saker som är utmanande för dig. Om du bara tränar på de enkla grejerna kommer du att få obehagliga överraskningar och stress under den riktiga intervjun.

Ett utmärkt sätt att förbättra dina färdigheter för en intervju är med mock intervju sessioner. Upplevelsen vänjer dig vid hur det kommer att kännas när du träffar anställningschefen. Kolla in Pramp , en peer-to-peer-intervjuplattform, för att komma igång.

Pramp erbjuder intervjupraxis för mock-systemdesign för användare att arbeta med en kamrat. Tillsammans kommer du att utföra både intervjuarens och intervjuarens roll så att du också kan lära av deras styrkor och svagheter. Det är fördelaktigt att se någon annan slutföra sin systemdesignintervju och se den ur intervjuarens perspektiv. Du får också feedback efter upplevelsen, som du kan använda för att identifiera vilka komponenter du behöver arbeta med innan du träffar anställningschefen på Amazon.

Lämna ett svar

Din e-postadress kommer inte publiceras. Obligatoriska fält är märkta *