Continuo a mancare le mani su parte dell'intervista, suggerimenti? [chiuso]

13

Quindi ho un paio di software / sito nel mio portafoglio. Fanno soldi ma non molto.

Quindi ho deciso di fare un'esperienza lavorativa, principalmente applicando posizioni di sviluppo junior Java / PHP.

Il problema è che rispondo correttamente a tutte le domande tecniche e programmiamo di fare un "test" di codifica, la fase finale dell'intervista. Non riesco mai a rilassarmi ea non pensare troppo alle cose e finisco per fare il test molto lentamente. O a volte ho appena colpito un blocco e trovo molto difficile pensare in piedi.

Non lo capisco perché altre cose che avevo scritto stavano risolvendo problemi molto più complessi mentre il "Test" è in realtà brutalmente semplice come scrivere e testare il palindrome.

Altre volte, mi daranno un test logico con i flussi alle operazioni matematiche e di nuovo non potrò farlo nel tempo che assegnano.

So di poter scrivere software / siti web vendibili in grado di generare piccole entrate e trovare modi per risolvere i problemi, ma ho grandi difficoltà con i semplici test di codifica nelle interviste.

Qualche suggerimento?

    
posta joelonjobinterviews 04.11.2011 - 04:25
fonte

12 risposte

18

Continua a partecipare alle interviste. Alla fine troverai un posto che farà domande più suscettibili ai tuoi punti di forza. Avrai anche un colloquio migliore e più comodo, il che può solo aiutare. Guardalo come un gioco, perché è davvero quello che è. Continua a giocare, e alla fine vincerai.

    
risposta data 04.11.2011 - 07:16
fonte
12

Questo è molto comune. La maggior parte dei programmatori è in grado di programmare efficacemente quando si trovano nella loro zona di comfort. Per esempio, posso lavorare solo su Ubuntu, con vim, se non ho quell'area di lavoro non mi sento di programmare. Ho anche richiesto , in una certa misura Google per la ricerca.

Sono sicuro che hai sviluppato alcune zone di comfort per la programmazione. Consiglierei di abituarmi all'ambiente in cui si trova qualcuno dietro l'attesa del completamento del codice. Il modo migliore per abituarsi è continuare ad andare al colloquio.

Potresti pensare che non abbia molto impatto, e potrebbe non farlo. Ma per alcuni di noi là fuori, programmare con la musica o senza, usando un IDE o un semplice editor di testo, usando una sedia di legno o seduto su un divano, una stanza buia o una stanza luminosa ... fanno una grande differenza nel nostro sviluppo velocità.

Nota, una volta ottenuto il lavoro, puoi solitamente creare la tua zona di comfort nello spazio ufficio che ti danno.

EDIT : questa domanda mi ricorda un addetto alle vendite, chiedendo come mettersi comodo e meglio alle chiamate a freddo. La migliore risposta è continuare a fare chiamate a freddo e riflettere su ogni chiamata. Dopo un po 'gli addetti alle vendite migliorano le loro capacità e il loro comfort. Penso che i programmatori non siano diversi quando partecipano alle interviste, dopotutto il punto principale è quello di venderti all'intervistatore

    
risposta data 04.11.2011 - 04:34
fonte
6

Questo è solo il mio suggerimento, perché non provare ad essere un imprenditore. Potrebbero esserci molte persone che affrontano il problema simile. Se riesci a scrivere siti web con piccole entrate, sicuramente puoi guadagnare molto da questo.

    
risposta data 04.11.2011 - 05:47
fonte
5

Hai già identificato il tuo problema - risolvendo i problemi sotto pressione (ad esempio quando qualcuno ti sta guardando). È perché ti manca la fiducia o non hai abbastanza esperienza o ti crepa sotto pressione?

Partecipare a molte interviste per acquisire esperienza e pratica può essere una buona idea, ma può anche produrre effetti contrari. I costanti fallimenti nelle interviste possono scuotere ancora di più la tua sicurezza, quindi fai attenzione.

Ti suggerisco di provare la peer programming in modo che tu possa sentirti a tuo agio a risolvere i problemi quando qualcuno ti sta guardando. Inoltre, cerca di capire cosa ti impedisce di essere efficace sotto pressione (è lo stress derivante dall'effettivo test in sé, lo stress da lavorare sotto stretta supervisione, lo stress da lavorare in un determinato limite di tempo ecc.).

    
risposta data 04.11.2011 - 13:19
fonte
3

Sembra che soffochi sotto pressione. Dal momento che devi fare gli esempi a tempo come parte del processo di intervista, dovrai imparare come superare questo. Si tratta di gestire la paura, non delle abilità di programmazione.

Un'opzione potrebbe essere quella di praticare la scrittura di problemi di esempio e il tempo per te stesso. Una volta che sai che puoi farli in meno di dieci minuti, potresti temere di essere meno al cronometro.

Un'altra opzione sarebbe quella di trovare una tecnica per calmare la paura, e usarla per disinnescare te stesso. Imparare una tecnica di meditazione potrebbe aiutarti. O memorizza la litania contro la paura (da Dune .) Impara un qualche tipo di trucco per abbattere la tua risposta alla paura.

    
risposta data 04.11.2011 - 14:38
fonte
3

Sono abbastanza sorpreso che nessuno lo abbia ancora chiesto, ma come ti stai avvicinando alle attività di programmazione ?

Se stai semplicemente saltando nel codice, allora è probabile che ti perderai e finirai per commettere semplici errori e farti agitare. Fai un passo alla volta:

  1. Raccolta dei requisiti : qual è esattamente ciò che chiede il tuo intervistatore. Assicurati che ci siano domande zero nell'aria prima della codifica. Ad esempio, se confrontato con la vecchia domanda "isPalindrome", fai domande come "cosa succede se la stringa ha caratteri speciali?" o "fare stringhe di lunghezza dispari come 'ada' contano come palindromi?". hai bisogno di sapere come chiarire i requisiti prima di progettare un algoritmo.
  2. Progetta il tuo algoritmo : suddividilo in sezioni logiche se ha senso. Parlane .. Forse scrivi qualche pseudocodice se stai scrivendo una lavagna. Fai camminare il tuo intervistatore attraverso i tuoi passi. Prova a eseguirlo con alcuni input diversi (sia validi che non validi) per assicurarti di ottenere i risultati desiderati.
  3. Ora inizia la codifica: a questo punto dovresti essere molto fiducioso su ciò che stai per scrivere. Essenzialmente, dovresti solo seguire le mosse con qualsiasi linguaggio tu abbia familiarità. A questo punto, non importa se ci sono errori sintattici come gli intervistatori che valgono un centesimo perdoneranno quelli in una sessione di lavagna (se ti viene dato un PC / IDE per risolvere il problema, questa è una storia diversa). / li>

In realtà, quando si affrontano i problemi di codifica, un intervistatore non sta guardando così tanto per un grande codice. È più da vedere come si va affrontando un dato problema. Immergersi direttamente nel codice è una cosa negativa, punto.

Scoprirai anche che mentre parli del problema (raccolta e progettazione dei requisiti), ti sentirai un po 'più a tuo agio e meno probabilità di commettere errori stupidi durante la parte di codifica.

    
risposta data 05.11.2011 - 04:01
fonte
3

Project Euler

Mi sembra che stai fallendo il fizzbuz test. Mind numbing algoritmi semplici che generalmente non servono a scopi pratici se non per capire se si comprendono i concetti chiave della programmazione.

Scopri le nozioni di base

Quello che consiglierei è di rispolverare le nozioni di base.

link

Iscriviti e inizia a esercitarti, scoprirai che analizzando questi esempi otterrai una comprensione più profonda dei concetti di programmazione di base. Penso che troverai una domanda palindromo lì dentro insieme a sequenze di fibonacci e altri concetti matematici (suona familiare).

    
risposta data 07.11.2011 - 23:14
fonte
2

Chiedi un feedback al o dopo l'intervista. Cosa hanno apprezzato? Cosa non hanno gradito? Potresti essere sorpreso dalle risposte.

Diverse persone cercano cose diverse, ovviamente, ma come si fa a cercare di risolvere un problema di solito è più importante della scrittura di una soluzione corretta al 100%. Potresti essere preoccupato per tutte le cose sbagliate.

Il modo migliore per migliorare in qualsiasi cosa è praticare. Prova a scrivere un elenco di brevi problemi. Quindi, per ciascun elemento nell'elenco, scrivere un piccolo programma che risolva il problema. Inizia con problemi molto semplici, come FizzBuzz e aumenta la difficoltà Appena vai. Riesci a risolvere i problemi che hai visto nelle interviste precedenti? Trova la sottostringa più grande che due stringhe hanno in comune? Calcola la fattorizzazione primaria di n!?

L'idea non è quella di apprendere la soluzione ad ogni problema che potresti incontrare, ma di darti un po 'di pratica scrivendo piccoli programmi velocemente, e anche di capire dove sono i tuoi punti deboli in modo che tu possa migliorare. Molti problemi sono facili da risolvere con la giusta struttura dei dati, ma difficile altrimenti, quindi assicurati di avere una solida base nelle strutture dati.

    
risposta data 04.11.2011 - 17:40
fonte
2

Esercitati e trova qualcuno che ti aiuti a guidarti attraverso le basi su come superarlo. Potrebbero essere necessari una manciata di tentativi ma potrebbe sorprendere ciò che viene scoperto se è possibile ottenere feedback e fare pratica su questo. Ho avuto un reclutatore che mi ha spiegato come gestire un problema con la lavagna una volta che sembra essere simile al tuo problema qui.

Non sto suggerendo di memorizzare le risposte tanto quanto avere un progetto su cosa fare quando viene dato un problema del genere e come parlarne. Cosa sembra questo? Hai visto problemi simili? Cosa potrebbero produrre alcuni approcci semplici in termini di un algoritmo? Almeno questo è il mio suggerimento per te.

    
risposta data 04.11.2011 - 20:57
fonte
2

È abbastanza comune per gli sviluppatori di software bocciare quando viene richiesto di sostenere un test di codifica o di scrivere una piccola porzione di codice durante l'intervista. Come qualcuno ha già menzionato, è perché la maggior parte di noi può codificare solo quando siamo nella nostra "zona di comfort" e stare seduti in una piccola stanza, circondata da 2-5 intervistati, non aggiunge molto del comfort.

La risposta è triplice:

  • esercitarsi e praticare di più. prova per un mese a fare 30-40 minuti di programmazione con carta e penna e sarai sorpreso di quanto sarebbe diventato facile. Durante la pratica, prova il tipo di attività di programmazione che ti aspetti venga richiesto nelle sessioni di codifica di intervista, ad es. implementare un singleton, invertire una stringa, ecc. È ancora più semplice leggere "quel pezzo di codice spazzatura e trovare ciò che è sbagliato" - provare a stampare e ad analizzare queste stampe per due settimane e migliorerai notevolmente questa abilità.

  • impara a controllare la tua paura. se pensi che il test sia troppo difficile e puoi completare solo il 20% di esso - fallo quel 20%, non preoccuparti del resto. Potrebbe essere che il test sia irragionevolmente grande per il tempo necessario a farlo (ad esempio, ragazzi in intervista dovrebbero darti 20 minuti per finirlo ma devono concludere l'intervista in 5 minuti a causa di qualche aumento della produzione, ecc.) . È anche possibile che altri candidati siano riusciti a completare solo il 10% di test, quindi avendo completato il 20% sarai comunque in vantaggio rispetto ad altri candidati.

  • Quando scrivi un codice durante l'intervista, non preoccuparti di renderlo perfetto in un primo passaggio. implementa solo un "percorso felice noto come lo scenario più comune prima" e si occuperà della gestione degli errori in seguito. se stai esaurendo il tempo - aggiungi una breve nota in fondo al foglio - cosa avresti fatto per migliorare il codice se avessi avuto più tempo.

[devo correre, modificherò / migliorerò la mia risposta più tardi]

    
risposta data 05.11.2011 - 02:02
fonte
1

Come molte persone hanno già detto che la pratica è una delle cose più importanti. Se hai già fatto un problema simile, sarai in grado di trovare rapidamente la soluzione.

Se hai difficoltà a trovare dei problemi da provare e risolvere da solo, prova a utilizzare la ricerca di Google per le domande di intervista sulla programmazione per la tua lingua o scelta.

Inoltre puoi raccogliere libri progettati per insegnare corsi CS di livello inferiore. La maggior parte di questi libri sono pieni di incarichi di programmazione che sono piccoli e possono essere fatti rapidamente a casa. Possono essere usati per la pratica.

    
risposta data 07.11.2011 - 20:40
fonte
0

Sono anche molto pessimo alle prove e lo sono sempre stato. Non potevo per la vita di me capire perché una classe di programmazione mi avesse dato dei test da portare con carta e penna. Non ci sono mai riuscito. Tuttavia, quello che ho fatto è stato spiegare agli intervistatori che avevo questo problema e lo sapevo. Sono anche riuscito a intervistare per aziende che non mi davano test da sciocchi.

Il mio suggerimento è di dire alla compagnia prima di andare all'intervista che non lo farai con quei tipi di test, ma invece sei felice di X. (Capisci un'alternativa che ha senso e ti senti a tuo agio.) Per me stesso, mi sono offerto di inviare loro il codice, e una volta ho suggerito che mi avrebbero dato un semplice programma da scrivere, e lo porterò con me al intervista in 3 giorni.

A seconda di dove stai cercando di ottenere lavori, questo potrebbe o non potrebbe funzionare per te.

    
risposta data 07.11.2011 - 21:44
fonte

Leggi altre domande sui tag