W moim zespole ds. Oprogramowania w ramach wywiadu testujemy zrozumienie baz danych.
Prezentujemy - bardzo kiepski projekt (pomyśl aplikację typu CRM) i prosimy o ulepszenie projektu, po około 30 minutach namysłu.
Następnie zadajemy im więcej pytań w oparciu o to, o czym mówią.
Próbujemy zrozumieć
- Performance V Normalistion
- Kluczowy projekt i rzetelność referencyjna
- Miejsca do ulepszenia -ie Alternatywna struktura DB - wyzwalacze, widok, procedury
- Obszary słabe w projekcie - jak pokonać wiele do wielu relacji
- Jak to wpływa na serwer - utrzymanie
- Problemy z bezpieczeństwem danych
- Problemy z bezpieczeństwem aplikacji
Jako zespół zastanawialiśmy się wtedy nad odpowiedziami na tego typu pytania, które uznalibyśmy za Junior / Senior / Architect.
So for - Performance v Normisalation -
zobaczy przede wszystkim ten problem i będzie mógł omówić, dlaczego (Junior)
poleciłby 4/5 NF, ale zrozumiałby problem z wydajnością, czy zdenormalizowałby i zrozumiałby, jak wyrazić problem (Senior)
czy zaleciliby inny rodzaj projektu, np. schemat gwiazd i omawiali implikacje na wielu poziomach (Architekt)
- Kluczowy projekt i integralność referencyjna
Widziałby, że integralność referencyjna jest potrzebna do egzekwowania relacji danych i byłaby w stanie to omówić, ale nie dostrzegłaby problemu z Key Choice and Design (Junior)
Omówiłby kwestie związane z wolumenami danych i typami danych v szukającymi naturalnych kluczy w danych i byłby w stanie przedyskutować, dlaczego na nie patrzą - oraz problemy, które wynikają z integralnością referencyjną (Senior)
Może argumentować różne punkty widzenia związane z kluczami i integralnością i być w stanie wymyślić różne rzeczywiste modele do szybkiego projektowania (Architekt)
Dostajesz obraz.
Jeśli chcesz, żebym dodał więcej, dodaj komentarz i opisz szczegółowo, co myślimy o reszcie, ale po prostu uwzględniłem pierwsze dwa, aby dać ci wyobrażenie o tym, co myśleliśmy.
Chodzi o to, aby pomyśleć o 1. pytaniach 2. My, jako zespół , zastanawialiśmy się wtedy, co uważamy za odpowiedzi typu Junior / Senior / Architect na tego typu pytania.
Podkreślam, że zespół jako kandydat i zespół muszą być pewni umiejętności osoby wchodzącej, a jeśli wymyślą to, co postrzegają jako odpowiedzi na różne poziomy, osoba wchodząca będzie, mam nadzieję, lepiej pasować do zespołu. Daje także zespołowi możliwość wpływania na wybór kandydata. Wyznaczają również osobę, która będzie zasiadać w panelu pytań. Bardzo pomaga przy wpisowym do zespołu.