I recently had a phone interview with a company. After that phone interview, I was told to complete a short programming assignment (a small program; shouldn't take more than three hours).
Procederei con cautela. Valuta la pertinenza della sfida per il posto di lavoro e assicurati che il futuro rimborso da parte del datore di lavoro valuterà 3 ore del tuo tempo.
Metto in dubbio il valore di questi tipi di test e preferirei giudicare qualcuno sui risultati ottenuti in passato. Un breve compito predefinito non può dire al datore di lavoro nulla su ciò che puoi fare. Solo ciò che non puoi fare e che può essere determinato rapidamente con alcune domande al telefono.
Il test ha il suo posto. Porsi le seguenti domande sul test e rispondere di conseguenza.
- La fiera del test è data dal tuo attuale livello di carriera?
- Il test ha una risposta corretta chiaramente definita?
- L'intervistatore è interessato al tuo potenziale come persona o mostra più interesse per i risultati del test (ad esempio le agenzie di assunzione sono terribili per questo).
- Il test rappresenta il tipo di lavoro che ti piacerebbe fare o è una verifica ambigua delle competenze (cioè prova se conosci la sintassi Java).
I'm only directly instructed to complete the assignment and turn in the code.
Hai appena risposto alla tua domanda.
Immediately I planned on throwing it on Github, writing a test suite for it, using Travis-CI (free continuous integration for public Github repositories) to run the test suites, and using CMake to build the Linux makefiles for Travis-CI.
No, non è quello che ti hanno chiesto di fare.
That way, not only can I demonstrate that I understand how to use Git, CMake, Travis-CI, and how to write tests, but I can also simply link to the Travis-CI page so they can see the output of the tests. I figured that'd make it a tiny bit more convenient for the interviewer.
Sarei attento a dimostrare le competenze troppo presto o troppo tardi nel processo dell'intervista. Se senti che non hai fatto bene nell'intervista e stai cercando di compensare, allora non funzionerà. D'altra parte, fare troppo quando non è stato chiesto troppo dimostra troppo entusiasmo. Ciò potrebbe tradursi in una contrazione del datore di lavoro con un'offerta di salario inferiore che ti aspettavi.
However, I'm a bit worried that doing all this for a relatively simple task would look bad.
Sì, sembra brutto. Risolvere la sfida con una sola riga di codice sarà molto più impressionante di un progetto completamente svuotato.
Dalla mia esperienza non è così che vinci il colloquio di lavoro, ma è un modo per perdere il lavoro. Il test del codice è un problema di controllo della qualità. Ogni azienda che utilizza i test di codice durante l'assunzione di persone lo sta facendo, perché in precedenza non stavano usando i test di codice. Hanno avuto una brutta esperienza di qualcuno che scivolava attraverso le fessure del processo di intervista che non dovrebbe avere.
Prenderanno il codice sorgente e lo passeranno in ufficio. La gente ci commenterà e quello che non vorresti che dicessero è "Ha commesso questo errore, ma ha passato del tempo usando Git, CMake e Travis-CI. Che idiota per aver perso questo errore".
Questo è tutto. Hai perso.
Vogliono sapere che puoi programmare, perché non possono insegnartelo. Git, CMake e Travis-CI possono essere facilmente insegnati.