Sto preparando domande per colloqui di lavoro per una posizione di sviluppo senior. Il lavoro dovrebbe includere la progettazione orientata agli oggetti, e il software esistente utilizza schemi di progettazione, quindi vorrei chiedere ai candidati di spiegare alcuni modelli di progettazione che conoscono, hanno usato, come li hanno usati, perché hanno li ho usati e così via. Tuttavia, nelle interviste precedenti, quando chiedevo a sviluppatori senior con almeno 5-10 anni di esperienza sui modelli di progettazione, quasi nessuno ne aveva mai sentito parlare. Penso che due sviluppatori su venti potessero nominare un singolo pattern di design (Singleton e MVC, rispettivamente).
Quindi la mia domanda è: ha senso fare queste domande? O è un argomento così oscuro che non puoi aspettarti che i nuovi assunti li conoscano già?
Uno sviluppatore senior dovrebbe avere una precedente esperienza con modelli di progettazione, o diresti che i modelli di progettazione sono un argomento così semplice che ogni sviluppatore decente può coglierli durante l'allenamento? In tal caso, quali domande faresti invece per valutare le loro capacità di progettazione?
Aggiungi Dopo aver letto le risposte finora, dovrei dare alcuni chiarimenti:
- Il lavoro è per uno sviluppatore .NET con esperienza in OOP / OOD
- Il codice esistente utilizza nomi di classi come
IParameterGraphVisitor
eIStorageFactory
in molti punti - Come chiedi alle persone le loro esperienze passate con i progetti OO che hanno creato, se non hanno il vocabolario per spiegare i loro progetti? Questo è quello che voglio fare e tutto ciò che riesco a fare è "per favore disegna la gerarchia di design / oggetto del tuo ultimo progetto sulla lavagna".