Interview wiki — Guida per gli ingegneri del software

Nov 27 2022
In generale, un'intervista per un ingegnere del software ha 4 tipi di round:- - Round tecnico - Round di progettazione di alto livello (HLD) - Round di progettazione di basso livello (LLD) - Round comportamentale Il numero di round per ciascun ruolo dipende dall'azienda. Ad esempio Amazon, di solito hanno 4 round in cui i primi 2 round sarebbero correlati a Data Structure (DS) e algoritmi, e il resto sarebbe round di progettazione se è per il ruolo SDE2 +.

In generale, un'intervista per ingegneri del software ha 4 tipi di round: -

- Turno tecnico

- Design di alto livello (HLD) rotondo

- Design a basso livello (LLD) rotondo

- Giro comportamentale

Il numero di turni per ogni ruolo dipenderà dall'azienda. Ad esempio Amazon, di solito hanno 4 round in cui i primi 2 round sarebbero correlati a Data Structure (DS) e algoritmi, e il resto sarebbe round di progettazione se è per il ruolo SDE2 +. Per loro, invece, non tengono un round separato per il comportamento, fanno un paio di domande sulla leadership in ogni round.

Ogni round è importante e dovremmo dedicare tempo a ciascuno. Di solito, le matricole che sono fuori dal college non avranno turni HLD e LLD. Ma possono aspettarsi invece un round OO (Object Oriented), dove mettono alla prova le tue abilità Object Oriented.

Qui in questo wiki, condividerò tutti i contenuti che ho trovato durante la mia preparazione al colloquio. Condividerei corsi, libri, blog e repository GitHub che mi sono stati molto utili durante la preparazione del colloquio. Questo non significa che devi seguire lo stesso per le tue interviste poiché ognuno ha il proprio stile di apprendimento. Ma puoi usare questo wiki come guida o riferimento per la preparazione. Alla fine, sei tu che partecipi al colloquio.

Coprirò ogni round separatamente. Iniziamo con il round tecnico.

Turno tecnico

Uno dei round più importanti sia per i neofiti che per i più esperti. Qui mettono alla prova la tua conoscenza della struttura dei dati e degli algoritmi. Questi round non mettono alla prova la tua conoscenza degli algoritmi avanzati che esistono per risolvere problemi complessi. Ma dovresti almeno conoscere quelli più comuni. Ho visto persone ottenere problemi molto strani e spazzatura che possono essere risolti solo con alcuni algoritmi unici. Ma è molto raro. Non suggerirò di trascorrere del tempo lì perché dovremmo fidarci della probabilità di base di affrontarlo. Se vuoi vedere lo schema comune delle domande dell'intervista, puoi visitare il seguente sito web (https://algo.monster/problems/stats)

Le cose che non dovresti saltare:

Struttura dati,

Array, Elenco collegato, Stack, Queue, Heap, Map, Set, Trie, Tree, BST

Algoritmi

Algoritmi di ordinamento, programmazione dinamica, Greedy, ricerca, divide et impera e grafico.

Design di alto livello

Mette alla prova la tua conoscenza della progettazione dell'architettura complessiva di un sistema. Include una descrizione dell'architettura del sistema, della struttura del database e una breve descrizione di sistemi, servizi, piattaforme e relazioni tra i moduli. Le domande erano molto vaghe come progettare WhatsApp, progettare Redbus, ecc. Qui è necessario elaborare un progetto in meno di 30-45 minuti a seconda dell'intervistatore. Qui l'intervistatore non si aspetta che tu codifichi, ma dovresti essere in grado di progettare i database, l'API, ecc. Se richiesto.

Design di basso livello

Descrive una descrizione dettagliata di ogni modulo, il che significa che include la logica effettiva per ogni componente del sistema e approfondisce le specifiche di ciascun modulo. Qui devi codificare le classi, le interfacce, ecc. Dovresti anche avere un'ottima conoscenza dei modelli di progettazione. Se conosci un linguaggio orientato agli oggetti, allora sarebbe un punto in più.

Turni comportamentali

Credo che qui non sia necessario fare alcuna presentazione. Questo è uno dei turni che la gente saltava ma, secondo me, impiegava almeno una giornata per la preparazione. La maggior parte degli intervistatori si preoccupa davvero di ciò che dici in questo round. Amazon, Google, ecc. prendono davvero molto sul serio questi round e dovresti essere consapevole delle domande poste e quale strategia dovrebbe essere seguita per rispondere a tali domande.

Risorse:

Turno tecnico

1.https://www.geeksforgeeks.org/top-algorithms-and-data-structures-for-competitive-programming/(Più importante)

2.https://takeuforward.org/interviews/strivers-sde-sheet-top-coding-interview-problems/(I problemi)

3.https://www.youtube.com/user/purpongie(Tutorial)

4.https://cses.fi/problemset/list(I problemi)

5.https://github.com/donnemartin/interactive-coding-challenges(Apprendimento)

6.https://leetcode.com/discuss/interview-question/2001789/Collections-of-Important-String-questions-Pattern(I problemi)

7.https://github.com/jwasham/coding-interview-university(Apprendimento)

8.https://leetcode.com/discuss/interview-question/2069641/the-only-lists-you-need-for-your-interview-preparation(Apprendimento)

HLD Rotondo

1.https://www.youtube.com/c/SystemDesignInterview/videos(Tutorial)

2.https://www.youtube.com/watch?v=0163cssUxLA&list=PLA8lYuzFlBqAy6dkZHj5VxUAaqr4vwrka(Tutorial)

3.https://www.youtube.com/watch?v=xpDnVSmNFX0&list=PLMCXHnjXnTnvo6alSjVkgxV-VH6EPyvoX(Tutorial)

4.https://blog.bytebytego.com/?utm_source=linkedin_post(Blog)

5.https://leetcode.com/discuss/general-discussion/125038/system-design-interview-prep(Apprendimento)

6.https://www.educative.io/courses/grokking-modern-system-design-interview-for-engineers-managers(Corso a pagamento)

7.https://github.com/donnemartin/system-design-primer(Apprendimento)

8.https://github.com/checkcheckzz/system-design-interview(Apprendimento)

LLD Rotondo

1.https://workat.tech/machine-coding/practice(Problemi di codifica della macchina)

2.https://www.youtube.com/playlist?list=PL564gOx0bCLouDCUMtmj6hMEu1JS7QYEr(Tutorial)

3.https://github.com/prasadgujar/low-level-design-primer/blob/master/questions.md(I problemi)

4.https://betterprogramming.pub/how-to-ace-the-low-level-design-interview-3f1be6401070(blog)

Giro comportamentale

1.https://www.youtube.com/watch?v=RzlUQCy84rQ(Principio di leadership di Amazon)

2.https://leetcode.com/discuss/interview-question/1729926/a-guide-for-behavioral-round(guida)

3.https://drive.google.com/file/d/1sb6Kll5enH3H70uaNwnjWPkN9pNtSu9-/view(PDF)

4.https://igotanoffer.com/blogs/product-manager/behavioral-interview-questions-tech-companies#techniques(Domande su Facebook)

5.https://leetcode.com/discuss/interview-question/437082/Amazon-Behavioral-questions-or-Leadership-Principles-or-LP(Domande su Amazon LP)

6.https://www.techinterviewhandbook.org/behavioral-interview-questions/(Domande)

7.https://www.principle.cards/(Mettiti alla prova)

Per gli ultimi aggiornamenti di interviste-wiki, puoi seguire il mio repository GitHubhttps://github.com/aashan007/Interview-wiki