Come altri hanno sottolineato, in un'intervista praticamente ogni tipo di domanda è un gioco leale purché non tocchi una sorta di area legalmente protetta (ad esempio età, razza, sesso, ecc.) E non è insolito che gli intervistatori lancino domande a te solo per vedere come reagisci alla domanda e come faresti cercando di trovare una soluzione alla domanda. Inoltre, poiché sembra che tu sia un neolaureato, sono un po 'limitati per quanto riguarda la possibilità di farti domande sulla tua esperienza di lavoro e che tipo di problemi hai risolto in un ambiente di produzione. Pertanto, se l'azienda svolge molto lavoro orientato al database, le domande che possono porre potrebbero anche essere rilevanti per la posizione che stai intervistando.
Per quanto riguarda i tuoi presupposti:
a) Tali domande non possono essere classificate equamente come domande di sviluppo di database.
Forse sì forse no. Se stai sviluppando un database, utilizzerai un Query Optimizer e pianificherai di tanto in tanto per cercare di assicurarti che non ci siano problemi evidenti con le tue query. Se la società ha amministratori di database o esperti in grado di rivedere le query, potrebbe non avere il tempo di esaminare tutto e inoltre non vorrebbe guardare ogni query scarsamente codificata. Allo stesso modo, non è insolito che gli sviluppatori siano responsabili del mantenimento del loro ambiente di sviluppo, di includere tutti i database e di far gestire gli aspetti DBA agli aspetti produttivi.
b) Penso che le domande siano appropriate per un colloquio DBA ma del tutto irragionevoli per un colloquio con sviluppatori di software (con esperienza o meno).
Probabilmente sarebbero appropriati per un colloquio DBA; ma a prescindere, sono anche argomenti che uno sviluppatore dovrebbe avere familiarità anche solo a livello di essere in grado di riconoscere dove potrebbe essere un problema e di eseguire autonomamente alcuni problemi di base. Come ho detto prima, se la società ha risorse limitate, vorranno assicurarsi che non stiano perdendo tempo delle persone con qualcosa che potrebbe essere un problema di base.
c) La prima domanda è rilevante solo per un fornitore di database.
I dettagli specifici possono essere specifici del fornitore, ma i concetti generali possono essere applicati ovunque e talvolta essere in grado di mostrarti capire i concetti generali è tutto ciò di cui hai bisogno. Se non vuoi rimanere bloccato in un singolo stack di sviluppo (ad esempio LAMPADA ), dovrai essere in grado di mostrare durante le interviste che hai compreso i concetti chiave e ti senti a tuo agio nel passare a diversi stack di sviluppo.
d) La seconda domanda non è giusta perché gli sviluppatori di software in genere non si occupano dei registri delle prestazioni del database in quanto questo è il compito del DBA.
Questo è generalmente vero, ma se parte del tuo lavoro è scrivere software per un determinato database che deve essere altamente reattivo, dovrai assicurarti di fare il massimo sforzo per scrivere quelle domande in modo che un collega che sia un esperto in una determinata area non viene impantanato con query scritte male. Sebbene non sia necessario conoscere i dettagli più precisi di ciò che i registri indicano, potrebbe essere necessario essere in grado di identificare ovvi problemi.
Speriamo che tutto ciò aiuti!