Prova tecnica per Senior PHP Developer (Symfony2)

292 views
Skip to first unread message

Andrea De Pirro

unread,
Jul 19, 2015, 7:55:24 AM7/19/15
to pug-...@googlegroups.com
Buongiorno ragazzi,
sono giorni che mi scervello per preparare una prova tecnica per valutare canditati Senior PHP per l'inserimento in una startup a cui offro consulenza. In rete la maggior parte delle prove sono nozionistiche, vanno troppo al dettaglio. Ritengo che un buon sviluppatore, più che conoscere i dettagli implementativi di una o un'altra funzione, dovrebbe avere perfettamente chiari i design pattern e le best practices. Per quanto riguarda Symfony dovrebbe conoscerne gli aspetti più importanti, come funziona la dependency injection, il routing, i principi su cui si basa etc.etc.

Cosa ne pensate? Avete qualche consiglio da darmi? Qualche esempio di prova tecnica da passarmi?

P.S. c'è qualche sviluppatore senior, esperto in Symfony, che ha intenzione di venire a lavorare a Barcellona per una startup? Ne stiamo cercando 4.

Francesco Lo Franco

unread,
Jul 19, 2015, 8:00:00 AM7/19/15
to pug-...@googlegroups.com
Una volta qualcuno mi disse: porta un pezzo di codice del quale vai "fiero". Sono seguite domande più o meno tecniche su quel codice.

--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "PUG Roma" di Google Gruppi.
Visita questo gruppo all'indirizzo http://groups.google.com/group/pug-roma.

liuggio

unread,
Jul 19, 2015, 8:04:13 AM7/19/15
to pug-roma
Ciao Andrea, 
per il PS la nostra etiquette impone inserire un range di salario dato che ci arrivo spesso richieste assurde potresti aggiungerlo?

Per la domanda 

Una volta qualcuno mi disse: porta un pezzo di codice del quale vai "fiero".

Ottima idea la riusero' ;)

se senior potresti prendere spunto dalle domande del cert. exam di sf2

anche chiedere differenza assetic/assets
dbal/orm
anche nell'ecosistema quali sono i bundle le persone
che fa lsmith o che fa che ne so shussek o come diamine si scrive,
che cosa è il bdd...

ps:
in attesa del range di salario.



--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "PUG Roma" di Google Gruppi.
Visita questo gruppo all'indirizzo http://groups.google.com/group/pug-roma.



--
 __________________liuggio_________________________________
 
  __/|_      We reject kings, presidents and voting.
/o )   \/    We believe in rough consensus
)__ v _/\          and running code  (I.E.T.F. credo)
______________________________________________________________

daniele d'angeli

unread,
Jul 19, 2015, 8:06:51 AM7/19/15
to pug-roma

Dipende molto da come é orientato il team e il lavoro.

Poi algoritmico? Allora ci sono infinite domande su noti algoritmi di ordinamento, ricerca ecc ecc.

Se il design é più importante, allora fi fare un test tecnico da casa
Symfony o non symfony puoi accorgerti di come "disegna" il codice.

Un esempio é il Kata fatto dal PUG qualche tempo fa, un azienda mi chiese una cosa simile.

Oppure fai.modellare un gioco, tipo carta forbice sasso ecc ecc.

Se dichiara di essere senior su SF allora dal test tecnico.vedrai chiaramente che é in grado di utilizzare le librerie e i componenti SF, ma soprattutto, ti.accorgi se il.codice scritto ha un qualche valore per riusabilita e se o meno comprensibile.

Secondo me i test tecnici danno molte indicazioni.

Daniele

--

Andrea De Pirro

unread,
Jul 19, 2015, 8:23:57 AM7/19/15
to pug-...@googlegroups.com
Il range va da 40k ai 50k secondo l'esperienza del candidato. Se interessa posso creare un nuovo topic.

Luca Matteis

unread,
Jul 19, 2015, 2:28:04 PM7/19/15
to pug-...@googlegroups.com
altrimenti gli fai fare una "prova". loro pensano sia una prova,
mentre in realtà è una parte del progetto della startup. se hai 10
candidati, gli fai fare 10 parti diverse della startup.

alla fine non prendi nessuno e ti se fatto il progetto gratis!

Fabio Doddi

unread,
Jul 20, 2015, 1:50:11 AM7/20/15
to pug-...@googlegroups.com
Ciao Luca, l'ho trovata un pò "bruttina" questa cosa... ho capito male e scherzavi vero? ;-)

toretto460

unread,
Jul 20, 2015, 3:58:13 AM7/20/15
to pug-...@googlegroups.com
Seguo il consiglio di Daniele, 
potresti sottoporre un test tecnico da svolgere a casa per poi discutere le scelte implementative in fase di colloquio. 
Un senior sicuramente saprà giustificare le sue scelte in termini di design del codice.

Per quanto riguarda il framework una mia personale opinione è che non ci si dovrebbe limitare ai dettagli implementativi di Symfony, 
potresti comunque trovare un senior valido e di esperienza che ha sempre lavorato con zend; uno sviluppatore valido non impiegherà molto 
ad essere operativo su un nuovo framework  

***************************************
*  Toretto460  -  Software Developer  *
***************************************
http://toretto.me
Skype:   sim1460
Twitter: @toretto460

arnymore

unread,
Jul 20, 2015, 7:42:59 AM7/20/15
to pug-...@googlegroups.com
Considera che anche un giretto sui vari github o bitbucket del candidato è un buon biglietto da visita , specialmente se ha progetti come "fatture1, fatture 2 , fatture 3 ......." :-)
ps Nadalin e Cirpo hanno fatto due speech al Pug in cui parlavano un pò dei criteri e delle interviste che facevano loro , sicuramente li trovi spunti interessanti 

David Funaro

unread,
Jul 20, 2015, 8:12:27 AM7/20/15
to pug-...@googlegroups.com

Ciao Andrea,
Purtroppo fare un colloquio è un attività molto difficile proprio perché l'abilità sta nel cambiare il tipo di colloquio che stai guidando in base alle persona che ti trovi di fronte.

Il tuo obiettivo, secondo me, deve essere quello di riuscire a capire quale sia il buono ed il cattivo della persona che ti sta davanti.
I dettagli tecnici si imparano, ma se una persona non ti ispira fiducia e/o non sa collaborare con un team, può anche aver scritto il core di symfony, ma ti darà problemi.

Prendi argomenti importanti e poco di nicchia introduci una conversazione e lascialo parlare. Poi starà a te approfondire con domande quello che ti ha proposto autonomamente ed eventualmente continuare la conversazione su altro.

My 2cents



Inviato da dispositivo mobile
--

Andrea De Pirro

unread,
Jul 22, 2015, 5:55:57 AM7/22/15
to PUG Roma
Effettivamente sono molto più interessato all'aspetto "umano" che alla conoscenza approfondita di uno o un altro framework.

Grazie a tutti per i consigli, soprattutto a Luca :P

Ho già iniziato ad applicare il suggerimento di Francesco Lo Franco

daniele d'angeli

unread,
Jul 22, 2015, 6:25:12 AM7/22/15
to pug-roma
People above all is the way. 

Scusate se questo messaggio risulta un pò off topic, ma mi piacerebbe ampliarlo quanto segue. 

Ho avuto un interessante conversazione con un mio amico riguardo questo.

Lui è stato preso ad una società dove la "company culture" è prioritaria, è stato preso (e pagato benissimo, da senior) nonostante fosse un junior nelle tecnologie che andava ad utilizzare (lui esperto Java, ora sta utilizzando python, apache spark e ruby, dove non ne sapeva nulla).
A distanza di un 9 mesi, ha preso un aumento significativo, a manifestazione del fatto che ha raggiunto ottimi risultati. 

Ora , company culture significa un po tutto, ma ho avuto un altra interessante conversazione dove una persona mi ha detto:

"Non esiste il posto di lavoro perfetto, perchè un posto di lavoro è fatto in primis da persone, e le persone non sono tutte uguali e perfette"

Ora da queste due osservazioni, ho pensato: se un azienda crede davvero nelle persone, forse aumenta la probabilità di avere un posto di lavoro stimolante, con persone "open mind" ecc ecc.
Parlo di probabilità, perchè da queste osservazioni mi sto chiedendo: quali tecniche si possono utilizzare per comprendere se una persona rispecchia la tua vision circa la "company culture"?
Ed ho notato sulla mia pelle che, quando questo è ignorato, si creano grossi problemi all'interno dei team. 
Un esempio stupido è l'azienda che abusa dei "contracted", la sensazione dopo un pò è che si stia solo scrivendo codice, e non costruendo qualcosa (per non parlare che alcuni contracted, non tutti, spesso se ne fregano se c'è un problema da risolvere dopo le 17.30).

Non credo sia facile, perchè allo stesso tempo devi testare anche le qualità tecniche. 
Qui alcune aziende, dopo il test tecnico, programmano circa due o tre incontri con CTO, founder e boss vari. 

Ma questo basta? Esiste qualche "pratica" per cercare di capire se è, o meno, la persona giusta (badate non sto parlando di test psicologi, li trovo ridicoli).


matteo bruno

unread,
Jul 22, 2015, 10:52:35 AM7/22/15
to PUG Roma
Ciao Daniele,
ti riporto la mia esperienza a Monaco di Baviera e Berlino: dopo aver superato il colloquio tecnico con delle aziende, queste mi hanno invitato presso la loro sede ed ho parlato con tutti i membri dello staff, anche gli stagisti, che poi hanno dato un feedback al boss. 

La cosa mi ha colpito favorevolmente, e la ritengo una ottima pratica, che mi sento di consigliare anche ad Andrea; anche io ritengo poco credibili i test psicologici, ma qualcosa del genere http://www.humanmetrics.com/cgi-win/jtypes2.asp da somministrare ai 'prescelti' può comunque dare qualche indizio in più.

Buona serata,
Matteo


Francesco Mosca

unread,
Jul 22, 2015, 11:00:20 AM7/22/15
to pug-...@googlegroups.com
Ciao, 

solo un'intervento a gamba tesa per ricordare che i test "Myers-Briggs" vanno presi con pinze molto grandi: https://en.wikipedia.org/wiki/Myers%E2%80%93Briggs_Type_Indicator#Criticism


matteo bruno

unread,
Jul 22, 2015, 11:08:56 AM7/22/15
to PUG Roma
ciao Francesco,
si, condivido che questi test vanno presi con le pinze, ma se letti con il necessario distacco e spirito critico danno comunque un elemento in più per giudicare le persone; poi, se come un mio vecchio capo, lo si rende l'unico strumento per assumere il personale allora è un altro discorso :) [inutile dire che sono durato molto poco in questa azienda ;) ]
Reply all
Reply to author
Forward
0 new messages