Appunti per tirocinanti: soluzione passo-passo per le domande ai colloqui di Google

Appunti per tirocinanti: soluzione passo-passo per le domande ai colloqui di Google

L'anno scorso, ho dedicato gli ultimi mesi alla preparazione per un colloquio di tirocinio in Google (Google Internship). È andato tutto bene: ho ottenuto il lavoro e un'esperienza fantastica.

Ora, a distanza di due mesi dal tirocinio, voglio condividere il documento che ho utilizzato per la preparazione ai colloqui. Per me è stato un po' come un promemoria prima dell'esame. Ma il processo di creazione del documento e la costante verifica passo-passo mi hanno aiutato a memorizzare tutto ciò che è più importante.

Sono sicuro che chiunque possa superare con successo i colloqui nelle grandi aziende tecnologiche, è solo necessario un po' di tempo per capire come sono strutturati questi colloqui e prepararsi per essi.

I miei appunti ti basteranno per prepararti a qualsiasi colloquio tecnico, che sia Google, una startup o il tuo primo tirocinio. Ti aiuteranno a sentirti più sicuro sia durante la preparazione che durante il colloquio stesso.

Consigliamo corsi intensivi gratuiti di programmazione per principianti:
Fondamenti di Java in soli 3 giorni — 8–10 agosto;
Scriviamo il nostro primo modello di machine learning — 12–14 agosto;
Sviluppo di un messenger in Python — 15–17 agosto

Appunti per un colloquio tecnico

Siti

Pramp

Su questa piattaforma puoi esercitarti a sostenere colloqui. I partecipanti si intervistano a turno (ci sono canali audio e video) e possono utilizzare un editor di codice condiviso. Probabilmente, all'inizio non sarà facile e ti sentirai in imbarazzo. Ma più ti alleni, più li superi con sicurezza e un vero colloquio dopo questo ti sembrerà semplice.

Codesignal

Buone domande da colloqui reali in Facebook, Google, Microsoft, ecc. Consiglio di utilizzare questo sito insieme a risorse per la pratica della programmazione, compreso lo studio della complessità algoritmica.

Libri

Cracking the Coding Interview

Le mie parti preferite: Interview Preparation Grid (pag. 32), la sezione dedicata al comportamento durante il colloquio, e Interview Questions: Data Structures (pag. 88–107). Se non hai mai sentito parlare di "complessità algoritmica", è il momento giusto, il libro introduce l'argomento in modo eccellente.

Cosa fare durante un colloquio?

  • Non scollegatevi dalla comunicazione e rispondete con sincerità. Quando riflettete su una domanda, pensate ad alta voce e descrivete il vostro ragionamento.
  • Aggiungete un po' di umorismo nella comunicazione, non abbiate paura di scherzare. Provate a divertirvi durante la conversazione.
  • Annotate le informazioni importanti.
  • Fate domande e cercate di utilizzare ciò che avete appreso dall'intervistatore.

Colloquio passo dopo passo

Ecco un checklist per prepararsi a rispondere durante il colloquio. Non è necessario utilizzare tutti i punti; saltate quelli che vi sembrano irrilevanti. L'importante è basarsi sul buon senso. Anche se non raggiungete la fine della lista, non succederà nulla di grave.

  1. Leggete la domanda.
  2. Analizzate tutti i dati, sia in ingresso che in uscita, e prestare attenzione agli effetti collaterali.
  3. Chiarite il senso del compito e comunicate le vostre ipotesi, in modo che l'intervistatore comprenda il vostro modo di pensare. Ad esempio, quali saranno i volumi di dati e chi sarà l'utente.
  4. Cercate un esempio e condividerlo con l'intervistatore per essere certi di aver compreso correttamente il compito. Non abbiate paura di dedicare tempo a comprendere le condizioni del problema. Più lo capirete, più velocemente troverete la soluzione ottimale.
  5. Sviluppate un algoritmo. Provate a risolvere un compito simile, ma meno complesso. Annotate le vostre riflessioni e analizzate esempi su un foglio di lavoro.
  6. Ripercorrete il vostro algoritmo con esempi per assicurarvi che il codice funzioni correttamente. Controllate tutti i casi critici e al limite.
  7. Valutate la complessità dell'algoritmo sia in termini di tempo che di memoria.
  8. Se siete riusciti a trovare una soluzione più efficace al problema, tornate al punto 4.
  9. Scrivete la soluzione utilizzando l'algoritmo scelto. Suddividete il problema in più metodi, se possibile nel caso specifico.
  10. Controllate il codice per errori.
  11. Pensate a come l'implementazione dell'algoritmo gestisce i casi critici e ai limiti.
  12. Verificate l'implementazione con un esempio, esaminando il codice per errori.
  13. Una volta che siete certi che il codice funzioni correttamente, controllatene la pulizia e lo stile.

Ecco, tutto qui!

Fonte: habr.com

Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server 🔥 Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server | ProHoster