Nel mio team di software nell'ambito dell'intervista testiamo la comprensione dei database.
Presentiamo - un design molto scarso (pensa al tipo di applicazione CRM) e chiediamo loro di migliorarlo, dopo circa 30 minuti di riflessione.
Facciamo quindi loro altre domande in base a ciò di cui parlano.
Stiamo cercando di capire
- Performance V Normalistion
- Progettazione chiave e integrità referenziale
- Luoghi per l'improvvisazione -ie Struttura DB alternativa - Trigger, vista, procedure
- Aree che sono deboli nella progettazione: come superare molte o molte relazioni
- In che modo ciò influisce sul server - maintaince
- Problemi di sicurezza dei dati
- Problemi di sicurezza delle applicazioni
In qualità di team abbiamo quindi pensato a quelle che considereremmo risposte di tipo Junior / Senior / Architect a questi tipi di domande.
Quindi per - Performance v Normisalation -
vedrebbe il problema in primo luogo e sarebbe in grado di discutere il perché (Junior)
raccomanderebbe 4/5 NF ma capirebbe il problema con le prestazioni denormalizzerebbero e capirebbero come articolare il problema (Senior)
consiglierebbero un diverso tipo di design, ad esempio Star Schema, e discuteranno le implicazioni su molti livelli (Architect)
- Progettazione chiave e integrità referenziale
Vedrebbe l'integrità di riferimento necessaria per far rispettare le relazioni con i dati ed essere in grado di discuterne, ma non vedrebbe il problema con Key Choice and Design (Junior)
Discuterebbe delle problematiche relative ai volumi di dati e ai tipi di dati v alla ricerca di chiavi naturali nei dati e sarebbe in grado di discutere il motivo per cui le stanno esaminando - e le questioni che seguono con integrità referenziale (Senior)
Potrebbero discutere vari punti di vista a che fare con Keys e Integrity ed essere in grado di elaborare vari modelli reali per un design veloce (Architect)
Ottieni l'immagine.
Se vuoi che ne aggiunga di più, pubblica un commento e descriverà in dettaglio ciò che pensiamo del resto, ma ho appena incluso i primi due per darti l'idea su ciò che abbiamo pensato.
Il punto è pensare alle 1. domande 2. In qualità di team abbiamo quindi pensato a quelle che considereremmo risposte di tipo Junior / Senior / Architect a questi tipi di domande.
Sottolineo la squadra come candidato e la squadra deve essere fiduciosa nelle capacità della persona che entra, e se hanno escogitato ciò che vedono come risposte a diversi livelli, la persona che entra si spera si adatterà meglio alla squadra. Offre inoltre alla squadra la possibilità di influenzare la scelta del candidato. Nominano anche una persona a far parte del pannello delle domande. Aiuta molto con il buy-in della squadra.