JavaRush /Java Blog /Random-IT /Pausa caffè #77. Come ho affrontato la grave sindrome del...

Pausa caffè #77. Come ho affrontato la grave sindrome dell'impostore. Come superare un colloquio di programmazione: consigli di uno sviluppatore senior

Pubblicato nel gruppo Random-IT

Come ho affrontato la grave sindrome dell'impostore

Fonte: Medium All'università, ho scelto l'informatica come specializzazione perché presumevo che chiunque potesse farlo, indipendentemente dal livello di istruzione o di intelligenza. Ero anche incuriosito dalla possibilità di utilizzare la tecnologia per risolvere problemi del mondo reale. Ma se avessi saputo in anticipo cosa significa diventare un informatico, non mi sarei mai avventurato in questo campo. Mi squalificherei automaticamente per incompetenza.Pausa caffè #77.  Come ho affrontato la grave sindrome dell'impostore.  Come superare un colloquio di programmazione - consigli di uno sviluppatore senior - 1La maggior parte delle persone che scelgono l’informatica credono di avere un’intelligenza superiore alla media, quindi sono all’altezza della sfida. Ma nella maggior parte dei casi non riescono a risolvere il problema. Nella mia università, il tasso di abbandono per le specializzazioni in informatica era del 75%. Tuttavia, coloro che hanno avuto successo nell'informatica erano persone eccezionali e di grande talento, che lo sapessero o no. Quanto a me, mi consideravo piuttosto mediocre, ma ho comunque deciso di dedicarmi all'informatica. Dopo il primo anno di università, durante l'estate ho completato uno stage di ingegneria del software. Ero felice di fare soldi, ma mi sentivo un impostore. Sapevo di essere stato assunto nonostante la mia incompetenza. E non capivo perché assumere qualcuno che non sa programmare? Quando l'estate è finita ed è arrivato il momento di tornare all'università, il mio capo ha prolungato lo stage per altri 6 mesi. Ha detto che gli piaceva il mio lavoro e voleva che lavorassi in azienda mentre studiavo. Onestamente, sapevo che era una bugia. Sentivo che gli piaceva parlare con me e che mi adattavo alla cultura aziendale, quindi era disposto a supportarmi. Da ciò sono giunto alla conclusione che molte aziende mantengono dipendenti incompetenti finché piacciono al capo. Adesso ero uno di loro. Dopo il mio secondo anno, ho fatto un altro stage estivo. Alcune settimane dopo, il mio capo mi ha nominato tirocinante responsabile tecnico. Pensava che potessi essere un grande leader per gli altri tirocinanti. Questo mi ha reso scettico riguardo alla sua opinione. Come poteva sapere dopo sole 3 settimane che tipo di leader ero? Non ho mai supervisionato nessuno in nessun lavoro. Ho rinunciato a scrivere codice nella speranza che funzionasse. Allora avrà un motivo per licenziarmi. All'inizio del terzo anno ho fatto domanda per un posto di assistente di ricerca presso uno dei professori del dipartimento. Non pensavo di potermi qualificare, ma pensavo che non potesse far male provarci. Alla fine, ho ottenuto il lavoro. Si trattava di un progetto di ricerca finanziato dalla National Science Foundation (NSF) con un rinomato professore. Molti studenti del master che volevano lavorare per lui furono rifiutati: li considerava incompetenti. Ma ha scelto me. Studente universitario del terzo anno. Ciò ha peggiorato i miei attacchi di ansia. Ero assolutamente sicuro che sarei stato licenziato nella prima settimana. Non sapevo cosa stavo facendo. Non sapevo nulla della ricerca informatica. Non ho nemmeno scritto un buon codice per i miei compiti. Ero sicuro al 99% di essere diventato un vero bugiardo perché continuavano ad assumermi. Poco dopo aver terminato la mia ricerca, ho iniziato a fare domanda per uno stage perché avevo bisogno di un piano di riserva. Ho inviato diverse candidature. Negli anni passati mi richiamavano solo le piccole aziende. Questa volta era tutto strano. Le richieste di interviste sono arrivate da Google, Facebook, Bloomberg e molte altre società tecnologiche solo nella prima settimana di presentazione dei documenti. Di solito le persone sono felicissime di queste notizie. Ma io non sono. Sono andato molto nel panico. Dopotutto, non sono io. Mi sentivo come se avessi abbellito così tanto il mio curriculum che ora la gente pensava che fossi qualcos'altro. Avevo molta paura che queste aziende scoprissero che non ero così intelligente come sembravo sulla carta e mi licenziassero immediatamente. Pertanto, ho rifiutato tutte le interviste con le grandi aziende. Dopo un colloquio in una piccola startup, mi sono reso conto che non mi avrebbero assunto neanche lì. Sapevo che il codice che avevo scritto durante l'intervista era terribile, pieno di bug (il che significa che aveva dei bug) e non c'era modo che mi chiamassero. Ho anche chiesto più tempo per completare l'algoritmo. Perché qualcuno dovrebbe assumere un programmatore lento? Il giorno successivo ho ricevuto un'e-mail con un'offerta. Sono rimasto scioccato quando mi è stato offerto il lavoro. Ho anche chiesto all'ingegnere che mi ha intervistato perché mi ha assunto. Ha detto: "Il tuo curriculum è stato il migliore che abbiamo ricevuto per stagisti quest'estate e, dopo aver parlato con te, sapevo che avremmo dovuto assumerti senza dubbio". Che cosa? Mi sentivo come se stessi mentendo tutto il tempo. Dopo avermi assunto, avrebbero scoperto cosa potevo fare, e io ho mentito, non sapendo cosa stavo facendo. Ma ho ancora un lavoro. Allo stesso tempo, ho lavorato part-time all'università. Un paio di mesi dopo, Google mi ha contattato di nuovo. Questa volta si trattava di un lavoro a tempo pieno dopo la laurea. Non ho mai fatto domanda a Google per un lavoro a tempo pieno. Perché il loro reclutatore mi ha contattato per un potenziale lavoro di sviluppatore di software dopo la laurea? Non ho nemmeno finito il mio ultimo anno di scuola. Inoltre, non hanno nemmeno aperto ufficialmente le candidature per questo posto vacante. Ho chiesto al reclutatore come mi hanno trovato? Non ho fatto assolutamente domanda per questa posizione. Ha detto: “Google invia ogni anno reclutatori in alcune scuole per assumere ingegneri laureati. Sono stato nominato nel tuo college. Esaminiamo i profili degli studenti, il loro LinkedIn, il sito web personale e i loro curriculum pubblici e contattiamo i migliori candidati. Il tuo curriculum è stato selezionato appositamente per la classe di laurea del prossimo anno." Se ti interessa, eccolo qui Perché qualcuno dovrebbe assumere un programmatore lento? Il giorno successivo ho ricevuto un'e-mail con un'offerta. Sono rimasto scioccato quando mi è stato offerto il lavoro. Ho anche chiesto all'ingegnere che mi ha intervistato perché mi ha assunto. Ha detto: "Il tuo curriculum è stato il migliore che abbiamo ricevuto per stagisti quest'estate e, dopo aver parlato con te, sapevo che avremmo dovuto assumerti senza dubbio". Che cosa? Mi sentivo come se stessi mentendo tutto il tempo. Dopo avermi assunto, avrebbero scoperto cosa potevo fare, e io ho mentito, non sapendo cosa stavo facendo. Ma ho ancora un lavoro. Allo stesso tempo, ho lavorato part-time all'università. Un paio di mesi dopo, Google mi ha contattato di nuovo. Questa volta si trattava di un lavoro a tempo pieno dopo la laurea. Non ho mai fatto domanda a Google per un lavoro a tempo pieno. Perché il loro reclutatore mi ha contattato per un potenziale lavoro di sviluppatore di software dopo la laurea? Non ho nemmeno finito il mio ultimo anno di scuola. Inoltre, non hanno nemmeno aperto ufficialmente le candidature per questo posto vacante. Ho chiesto al reclutatore come mi hanno trovato? Non ho fatto assolutamente domanda per questa posizione. Ha detto: “Google invia ogni anno reclutatori in alcune scuole per assumere ingegneri laureati. Sono stato nominato nel tuo college. Esaminiamo i profili degli studenti, il loro LinkedIn, il sito web personale e i loro curriculum pubblici e contattiamo i migliori candidati. Il tuo curriculum è stato selezionato appositamente per la classe di laurea del prossimo anno." Se ti interessa, eccolo qui Perché qualcuno dovrebbe assumere un programmatore lento? Il giorno successivo ho ricevuto un'e-mail con un'offerta. Sono rimasto scioccato quando mi è stato offerto il lavoro. Ho anche chiesto all'ingegnere che mi ha intervistato perché mi ha assunto. Ha detto: "Il tuo curriculum è stato il migliore che abbiamo ricevuto per stagisti quest'estate e, dopo aver parlato con te, sapevo che avremmo dovuto assumerti senza dubbio". Che cosa? Mi sentivo come se stessi mentendo tutto il tempo. Dopo avermi assunto, avrebbero scoperto cosa potevo fare, e io ho mentito, non sapendo cosa stavo facendo. Ma ho ancora un lavoro. Allo stesso tempo, ho lavorato part-time all'università. Un paio di mesi dopo, Google mi ha contattato di nuovo. Questa volta si trattava di un lavoro a tempo pieno dopo la laurea. Non ho mai fatto domanda a Google per un lavoro a tempo pieno. Perché il loro reclutatore mi ha contattato per un potenziale lavoro di sviluppatore di software dopo la laurea? Non ho nemmeno finito il mio ultimo anno di scuola. Inoltre, non hanno nemmeno aperto ufficialmente le candidature per questo posto vacante. Ho chiesto al reclutatore come mi hanno trovato? Non ho fatto assolutamente domanda per questa posizione. Ha detto: “Google invia ogni anno reclutatori in alcune scuole per assumere ingegneri laureati. Sono stato nominato nel tuo college. Esaminiamo i profili degli studenti, il loro LinkedIn, il sito web personale e i loro curriculum pubblici e contattiamo i migliori candidati. Il tuo curriculum è stato selezionato appositamente per la classe di laurea del prossimo anno." Se ti interessa, eccolo qui Il tuo curriculum è stato selezionato appositamente per la classe di laurea del prossimo anno." Se ti interessa, eccolo qui Il tuo curriculum è stato selezionato appositamente per la classe di laurea del prossimo anno." Se ti interessa, eccolo quiil mio curriculumdal college. Al terzo anno stavo pensando di avviare una startup IT dopo la laurea invece di trovare un lavoro a tempo pieno. Quando Google mi ha contattato di nuovo, mi sono fermato e ho riflettuto davvero. E se davvero non fossi un cattivo programmatore come pensavo? E se avessi delle abilità che gli altri potrebbero vedere, ma io non le noterei? L'invito di Google è ciò che mi ha davvero dato la spinta finale e la fiducia necessaria per lanciare la mia startup. Se un'azienda del genere pensa che io sia potenzialmente un buon sviluppatore, allora dovrei verificarlo. Creerò il mio software aziendale che risolva i problemi reali che mi stanno a cuore. Vediamo come funziona. Quindi ho rifiutato l'offerta di Google. Ho iniziato a lavorare alla mia startup dopo la laurea. Sentivo che se fossi riuscito a far interessare i clienti al mio prodotto, allora valevo davvero qualcosa. Forse sono davvero dotato, talentuoso e incredibilmente brillante. Un anno dopo, abbiamo effettuato il beta test dell'app. A volte i clienti possono essere i critici più severi e le persone più difficili. Tuttavia, la maggior parte dei nostri clienti target è rimasta colpita dal mio software. Un utente ha commentato una delle nostre funzionalità nell'app e ha detto: "Wow, è innovativo". Un altro ha testato l’app e ha detto: “Pagherei sicuramente per questo. Quanto posso pagare per usarlo? E quando posso iniziare a usarlo?” Poi chiamò il suo socio in affari e gli disse: “Questa ragazza ha fatto qualcosa che ci farà risparmiare un sacco di soldi. Abbiamo bisogno di lei." È così che ho capito di essere riuscito a superare la mia sindrome dell'impostore. Uno dei miei professori ha parlato della sindrome dell'impostore durante il mio ultimo anno di college. Dopo il discorso, ha detto che oltre l'80% della classe (io facevo parte di quell'80%) lo ha contattato per ringraziarlo di aver parlato dell'argomento perché si sentivano stupidi. Sto parlando di studenti eccezionali ed eccezionalmente dotati che ho ammirato e che, a quanto pare, hanno anche lottato con i loro sentimenti di inferiorità. Ho imparato come affrontare la sindrome dell'impostore. La mia percezione di me stesso era basata sul confronto con gli altri. Ma avevo bisogno di confrontarmi con le mie esperienze passate. Imparare ad apprezzare il mio lavoro mi ha aiutato a capire che ero abbastanza bravo nel mio lavoro. Non sapevo come scrivere il codice migliore durante il mio primo tirocinio, ma avevo una conoscenza adeguata della progettazione dell'interfaccia utente (UI). Il mio capo in seguito mi ha detto che mi avevano trattenuto perché avevo sviluppato un buon prototipo per aggiornare il loro sito web e hanno deciso di utilizzarlo per riprogettare la piattaforma. Anche se all'epoca non sapevo programmare correttamente, possedevo un'abilità preziosa che non tutti gli sviluppatori possiedono: una buona progettazione dell'interfaccia utente. Durante uno stage in cui ero manager stagista, il mio capo non doveva più coordinare gli stagisti perché potevo farlo io per lui. Quindi ho reso il suo lavoro più semplice. Gestire le persone affinché svolgano il proprio lavoro è un'abilità incredibile e io ce l'avevo. Mi sottovalutavo pensando che il mio lavoro fosse semplicemente scrivere codice. C'erano altri requisiti in cui eccellevo meglio di altri. Il professore con cui ho svolto la ricerca ha detto che durante il colloquio è rimasto colpito dalla mia conoscenza delle tecnologie e su quali volevo concentrarmi nel mio lavoro. Ha detto: "Molti studenti vengono qui cercando di creare analoghi di applicazioni popolari, e tu sei qui perché vuoi creare qualcosa che capisci e sai come usare". Era impressionato. Mentre ero al college, ho lavorato su molti progetti personali e da lì ho imparato molto. Non capita tutti i giorni di imbattersi in uno studente universitario che ha completato sei stage con progetti personali e ricerche indipendenti prima della laurea. Ciò dimostra che sono uno studente motivato con una forte etica del lavoro. Non è una sorpresa che Google sia interessato a me. Chi non vorrebbe un dipendente del genere? Mi ci è voluto un po' di tempo per imparare veramente ad apprezzare l'enorme sforzo e il lavoro che faccio durante gli straordinari. Ora ha dato i suoi frutti. Non avevo bisogno di paragonarmi agli altri. Avevo già affrontato tutto e la gente lo vedeva. Avevo anche bisogno di vederlo con i miei occhi. Ora, quando mi siedo con i principianti che hanno appena iniziato il loro viaggio nella programmazione, sembra che pensino che io sappia magicamente tutte queste cose. Ma in realtà ho passato molto tempo a studiarli. Ho lavorato su almeno dieci progetti negli ultimi cinque anni legati alla programmazione (compresi 4 anni di studio). Dopotutto, ho provato tantissime cose e questa esperienza mi aiuta a prendere decisioni migliori durante lo sviluppo e mi fa sembrare "so qualcosa". Vedendo il risultato del mio lavoro, ho cambiato il mio atteggiamento verso me stesso. Più il mio lavoro portava benefici agli altri, più iniziavo a credere in me stesso. Ricordo solo a me stesso tutte le cose difficili che sono riuscito a risolvere nel corso degli anni. Questa non sarà la montagna su cui morirò. Lo supererò sicuramente e continuerò. che tu lo capisca e sappia come usarlo. Era impressionato. Mentre ero al college, ho lavorato su molti progetti personali e da lì ho imparato molto. Non capita tutti i giorni di imbattersi in uno studente universitario che ha completato sei stage con progetti personali e ricerche indipendenti prima della laurea. Ciò dimostra che sono uno studente motivato con una forte etica del lavoro. Non è una sorpresa che Google sia interessato a me. Chi non vorrebbe un dipendente del genere? Mi ci è voluto un po' di tempo per imparare veramente ad apprezzare l'enorme sforzo e il lavoro che faccio durante gli straordinari. Ora ha dato i suoi frutti. Non avevo bisogno di paragonarmi agli altri. Avevo già affrontato tutto e la gente lo vedeva. Avevo anche bisogno di vederlo con i miei occhi. Ora, quando mi siedo con i principianti che hanno appena iniziato il loro viaggio nella programmazione, sembra che pensino che io sappia magicamente tutte queste cose. Ma in realtà ho passato molto tempo a studiarli. Ho lavorato su almeno dieci progetti negli ultimi cinque anni legati alla programmazione (compresi 4 anni di studio). Dopotutto, ho provato tantissime cose e questa esperienza mi aiuta a prendere decisioni migliori durante lo sviluppo e mi fa sembrare "so qualcosa". Vedendo il risultato del mio lavoro, ho cambiato il mio atteggiamento verso me stesso. Più il mio lavoro portava benefici agli altri, più iniziavo a credere in me stesso. Ricordo solo a me stesso tutte le cose difficili che sono riuscito a risolvere nel corso degli anni. Questa non sarà la montagna su cui morirò. Lo supererò sicuramente e continuerò. che tu lo capisca e sappia come usarlo. Era impressionato. Mentre ero al college, ho lavorato su molti progetti personali e da lì ho imparato molto. Non capita tutti i giorni di imbattersi in uno studente universitario che ha completato sei stage con progetti personali e ricerche indipendenti prima della laurea. Ciò dimostra che sono uno studente motivato con una forte etica del lavoro. Non è una sorpresa che Google sia interessato a me. Chi non vorrebbe un dipendente del genere? Mi ci è voluto un po' di tempo per imparare veramente ad apprezzare l'enorme sforzo e il lavoro che faccio durante gli straordinari. Ora ha dato i suoi frutti. Non avevo bisogno di paragonarmi agli altri. Avevo già affrontato tutto e la gente lo vedeva. Avevo anche bisogno di vederlo con i miei occhi. Ora, quando mi siedo con i principianti che hanno appena iniziato il loro viaggio nella programmazione, sembra che pensino che io sappia magicamente tutte queste cose. Ma in realtà ho passato molto tempo a studiarli. Ho lavorato su almeno dieci progetti negli ultimi cinque anni legati alla programmazione (compresi 4 anni di studio). Dopotutto, ho provato tantissime cose e questa esperienza mi aiuta a prendere decisioni migliori durante lo sviluppo e mi fa sembrare "so qualcosa". Vedendo il risultato del mio lavoro, ho cambiato il mio atteggiamento verso me stesso. Più il mio lavoro portava benefici agli altri, più iniziavo a credere in me stesso. Ricordo solo a me stesso tutte le cose difficili che sono riuscito a risolvere nel corso degli anni. Questa non sarà la montagna su cui morirò. Lo supererò sicuramente e continuerò. Più il mio lavoro portava benefici agli altri, più iniziavo a credere in me stesso. Ricordo solo a me stesso tutte le cose difficili che sono riuscito a risolvere nel corso degli anni. Questa non sarà la montagna su cui morirò. Lo supererò sicuramente e continuerò. Più il mio lavoro portava benefici agli altri, più iniziavo a credere in me stesso. Ricordo solo a me stesso tutte le cose difficili che sono riuscito a risolvere nel corso degli anni. Questa non sarà la montagna su cui morirò. Lo supererò sicuramente e continuerò.

Come superare un colloquio di programmazione: consigli di uno sviluppatore senior

Fonte: Free Code Camp I colloqui tecnici sono una delle parti più stressanti quando si ottiene un lavoro nel settore tecnologico. Non sai quali domande farà l'intervistatore. Potresti avere difficoltà a risolvere il problema che ti è stato proposto. Non sai come scegliere al meglio la risposta corretta. Molti aspiranti programmatori impazziscono cercando di memorizzare ogni domanda del colloquio di programmazione. Sappiamo entrambi che questo approccio è insostenibile. Recentemente ho incontrato la mia amica Michelle, un ingegnere informatico senior presso Stitch Fix. Ha condiviso le qualità che cerca negli sviluppatori che invita per le interviste.Pausa caffè #77.  Come ho affrontato la grave sindrome dell'impostore.  Come superare un colloquio di programmazione - consigli di uno sviluppatore senior - 2

Essere curioso

Uno dei consigli più importanti di Michelle ai candidati sviluppatori è di essere curiosi. Fai domande chiarificatrici. Condividi i tuoi pensieri sul problema che stai affrontando. Gli intervistatori non cercano solo la soluzione giusta. Vogliono capire come pensi. Il modo migliore per mostrare come la pensi è fare domande. Supponiamo che l'intervistatore ti chieda di verificare se una stringa contiene numeri. Dovresti spiegare la domanda con parole tue, ad esempio: "Quindi, devo trovare un modo per verificare se un insieme di caratteri contiene dei numeri?" Dicendo questo, dai agli intervistatori la possibilità di comprendere la tua logica. Dimostra loro anche che ti interessa il problema. E non aver paura di fare domande chiarificatrici. Utilizzando lo stesso esempio sopra, puoi porre diverse domande:
  • "I numeri che sto cercando contengono decimali?"
  • "Devo ordinare in qualche modo i caratteri prima di controllarli?"

Offri le tue soluzioni

Un modo per essere più aperto ai suggerimenti è cercare di interessare il tuo intervistatore. Metti in parole la tua logica e accompagnalo nel tuo percorso di risoluzione dei problemi. Utilizzeremo lo stesso problema di cui sopra. Ecco alcuni modi per esprimere la tua logica fin dall'inizio:
  • "Quindi devo trovare un modo per separare i caratteri dai numeri, giusto?"
  • "Sto pensando di creare un'enumerazione del set di caratteri end-to-end."
  • "Posso usare un metodo programmatico per ripetere i caratteri, ma restiamo fedeli ai numeri."
Più informazioni fornirai, più il tuo interlocutore sarà propenso ad aiutarti.

Lavorare insieme

L'idea che uno sviluppatore lavori sempre da solo è un mito. Utilizzi quasi sempre strumenti di controllo della versione e di gestione dei progetti che richiedono collaborazione. Devi esprimere il tuo approccio, porre domande importanti e mantenere l'interesse dell'intervistatore. In questo modo prenderai una decisione molto più velocemente. Mostrerai inoltre al rappresentante dell'azienda che puoi collaborare efficacemente con altri sviluppatori. Ecco alcuni modi per suscitare l’interesse del tuo intervistatore:
  • "Un ciclo for sarebbe troppo semplice/complicato per questa soluzione?"
  • "Quanto è importante determinare se ci sono galleggianti o no?"
  • "Quale soluzione hai in mente?"

Preparati a superarlo.

Infine, Michelle ha consigliato ai candidati sviluppatori di assicurarsi di affrontare il problema in questione. Una delle situazioni più comuni per i candidati è quando rimangono bloccati. Sebbene ciò sia comprensibile, nessuno vince in questa situazione. Non puoi mostrare quanto sei incredibile e l'intervistatore non può aiutarti. A questo Michelle ha detto "provaci e basta". Anche se scrivi il codice sbagliato, è meglio che non scriverlo affatto. Pubblicare qualcosa sulla bacheca/editor di codice genererà discussioni, un'opportunità per condividere i tuoi pensieri e la possibilità di trovare la risposta giusta dalla persona che ha posto il problema. Non aver paura di fallire! Significa semplicemente che sei un passo avanti verso il successo. :) La frase "Fallo e basta" può significare molte cose. Tuttavia, ecco alcuni esempi di come potrebbe apparire:
  1. Scrivi lo pseudocodice su una lavagna, un foglio di carta o un editor di codice.
  2. Nota esattamente dove sei bloccato nella tua logica.
  3. Descrivi verbalmente la soluzione che vorresti trovare.

Usa il pensiero

Le interviste di programmazione possono essere intimidatorie e c'è sempre la paura di bloccarsi. Parte di questa paura deriva dal non sapere quali domande ti aspettano. La cosa bella è che non devi più memorizzare domande e soluzioni di codifica. Costruisci invece una base di pensiero utilizzando i comportamenti chiave durante il colloquio di cui hai appena letto.
Commenti
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION