Capacità di problem solving e colloqui di lavoro [chiuso]

1

Probabilmente pochi di voi stanno intervistando programmatori fantastici. Ho 28 anni, non ho mai lavorato come programmatore, ma ho trascorso alcuni mesi ad apprendere C e a risolvere problemi. L'ho adorato così tanto che lo faccio ogni giorno solo perché posso, ora e ho iniziato a studiare CS all'università locale.

Ora mi piacerebbe provare a viverci e sto provando alcune domande sul colloquio di lavoro che trovo su Internet. Alcuni sono ovvi per me, ma alcuni mi spaventano e mi mettono molto tempo per trovare una soluzione.

  • Quando fai interviste di lavoro, per quanto tempo aspetti che qualcuno trovi la soluzione? - - Si blocca per un po 'di tempo i problemi che richiedono il codice a 5 righe mi squalifica come programmatore?
  • Prendi in considerazione anche persone come me durante la navigazione in CV?
  • Se intervisti qualcuno come me, cosa chiedi a quella persona?
  • Quali sono le tue aspettative quando incontri un intervistato come me?
posta zubergu 15.09.2013 - 13:57
fonte

3 risposte

8

Ho dovuto assumere programmatori di livello junior e senior. Ho diverse aspettative quando intervisto le persone e personalizzo ogni intervista al curriculum e qualsiasi altra cosa trovo sul candidato online (relativamente alle sue capacità lavorative).

Quando presento un candidato con un problema, ho un obiettivo specifico, ma ci sono alcune cose comuni che cerco in tutti i programmatori una volta che il problema è loro.

  1. Non congelare mai. Anche se non hai IDEA dove andare, attacca il problema. Fai qualsiasi cosa per farti iniziare in una direzione che porterà a una soluzione. Anche se vai nella direzione sbagliata, sarai da qualche parte. Se ti viene chiesto di scrivere il codice, crea una firma, esaminala, modificala. Cerca di capire quale tecnica dovrai usare. Scrivi uno pseudo-codice veloce. TUTTO, inizia.

  2. Considera ogni problema completamente e nel suo contesto. Annota le tue ipotesi sul problema. Parla apertamente mentre pensi. Non tenere i tuoi pensieri per te. Ti stai valutando su come risolvi i problemi, non sulla soluzione che ti viene in mente (il più delle volte), quindi lascia che sia l'intervistatore a fare quel processo.

  3. Non aver paura di fallire nel risolvere il problema. Potresti non essere in grado di risolverlo. L'intervistatore potrebbe averlo impostato espressamente con un problema che non ci si aspetta che sia in grado di risolvere semplicemente perché vuole vederti ragionare (io lo spoglio sempre, soprattutto con i programmatori di alto livello).

  4. Per una posizione junior, considero ogni CV che mi è stato dato. Cerco indicatori nel curriculum che suggeriscono che il programmatore è guidato a imparare e provare. Per qualcuno nella tua posizione, voglio vedere un piccolo portfolio con mini progetti che mi mostrano l'autoapprendimento. Testi letti, corsi presi, ecc. Non mi interessa davvero la laurea di 4 anni, questo è il problema delle risorse umane. Una BS in CS darà a un candidato un vantaggio, ma aumenterà anche le aspettative su quel candidato.

Per quanto riguarda le domande che vorrei porre, dovrei prima vedere qualcosa da te. Adattamento di ogni intervista al candidato specifico perché sono più interessato a come il candidato impara e cresce più di quello che ha fatto (per gli sviluppatori junior). Voglio un individuo determinato che attaccherà i problemi, impari dai fallimenti e possa formulare soluzioni.

    
risposta data 15.09.2013 - 14:58
fonte
5
  • Quando fai interviste di lavoro, per quanto tempo aspetti che qualcuno trovi la soluzione?
  • Si blocca per un po 'di tempo i problemi che richiedono il codice a 5 righe mi squalifica come programmatore?

C'è un piccolo punto in in attesa che qualcuno possa trovare una soluzione in un'intervista - chiedi qualcosa, e poi vuoi sapere come ragionano su di esso. È relativamente poco importante sapere conoscere o meno; questa è la vita reale, non la scuola. Praticamente tutto ciò che ti pagherò per fare saranno nuove domande, non vecchie. Pertanto, ciò che conta è quanto sei bravo a ottenere per la soluzione - sia tramite ricerca web, comunicazione con i colleghi, autoeducazione, ecc.

  • Prendi in considerazione anche persone come me durante la navigazione in CV?
  • Se intervisti qualcuno come me, cosa chiedi a quella persona?
  • Quali sono le tue aspettative quando incontri un intervistato come me?

Lasciatemi dire così:

I loved it so much that I do it every day just because I can, now and started stuying CS at local university

Se potessi, vorrei mai, mai assumere qualcuno come programmatore che non può dire questo da solo: che scrivono programmi nel loro tempo libero perché a loro piace farlo. Penso che questo sia un indicatore molto più efficace di quanto valore puoi portare per noi di qualsiasi certificazione che potresti nominare.

    
risposta data 15.09.2013 - 14:48
fonte
2

Non c'è niente di sbagliato nell'assumere una persona che non ha mai lavorato come programmatrice prima e non ha ancora una laurea. Se la persona è abbastanza motivata ed è in grado di imparare da solo, può diventare prima o poi un buon programmatore o sviluppatore.

Quali sono le aspettative di un candidato con tale profilo? Lo stesso di qualsiasi altro candidato:

  • La persona è in grado di programmare affatto?
  • E le sue capacità di comunicazione?
  • La persona lavora meglio da sola o in una squadra? Quali sono i vantaggi o i difetti della persona quando si lavora in una squadra? La persona è più un leader o qualcuno che preferirà fare ciò che gli altri gli dicono di fare?
  • La persona è sufficientemente informata in una determinata tecnologia? In altre parole, quanto profonde sono le capacità di questa persona?
  • E le altre tecnologie e domini? In altre parole, quanto è grande l'ambito delle abilità di questa persona?
  • La persona sa come scrivere codice pulito e gestibile, o ha solo esperienza nella scrittura di codice spaghetti che non riesce a capire da solo sei mesi dopo?
  • Che ne pensi dell'esperienza con gli strumenti elementari come il sistema di tracciamento dei bug e il controllo della versione?

Ovviamente, per uno sviluppatore, la lista sarebbe molto più grande di un programmatore e andrebbe molto più in profondità.

Per quanto riguarda la risoluzione dei problemi, non c'è niente di sbagliato nel prendere tempo per pensare. Preferirei assumere qualcuno che pensa un po 'prima di iniziare a scrivere codice rispetto a qualcuno che salta alla prima idea che gli viene in mente, non importa quanto sia buono o cattivo.

    
risposta data 15.09.2013 - 14:30
fonte

Leggi altre domande sui tag