konto usunięte

Temat: Pytania na intervieew

Witam

Czesto zdaza sie tak ze idac na przesluchanie w sprawie pracy musimy przygotowac sie merytorycznie.
Czesc pytan napewno bedzie technichna.
Chcialbym abysmy podzielili sie pytaniami z jakimi spotkaliscie sie podczas tego typu rekrutacji oraz kto was przesluchiwal ( stanowisko w firmie )
Oto moje przyklady:

Przesluchanie prowadzone przez Senior SQL Developer
na stanowisko Junior SQL developer
1. Do czego sluza indexy ?
2. Co to jest Foreign Key ?
3. Dlaczego powinnismy stosowac Procedury skladowane.
4. Skad wiemy jakie zmiany zostaly wprowadzone w kodzie od ostaniego buildu ?
5. Co to jest normalizacja i jakie ma zadanie?
6. Jaka jest maksymalna liczba kolumn w MS SQL Server 2008

konto usunięte

Temat: Pytania na intervieew

Marcin Pluta:
6. Jaka jest maksymalna liczba kolumn w MS SQL Server 2008

Triva Question, te są najgorsze bo musisz to wiedzieć i koniec, nie koniecznie do czegokolwiek ci się przyda :-)

Wymienię tylko te niektóre.

Stanowisko Analityk/Developer:

1. Do zmiennej typu bit przypisujemy -1 jaki będzie wynik kwerendy w SQL Server?
2. Napisz Trigger który imię i nazwisko wpisywanej osoby zamieni na wielkie litery.
3. Napisz Update który weźmie wszystkie osoby nie przypisane do działu i przypisze je do działu X.
4. Skasować wszystkie osoby z działu spełniające kryteria (nie pamiętam jakie)
5. Selecty z Joinami i funkcjami agregującymi. :-)

Stanowisko Programista C#:

1. Napisz funkcję przeszukującą drzewo (kartka)
2. Wymień i omów mechanizmy blokowania?
3. Co to jest Web Service?
4. Pytania co do różnych klass z .NET

Stanowisko Programista C#:

1. Test logiczny z jakiejś strony z łamigłówkami :-)
2. Napisz program który sumuje/odejmuje liczby wpisane z klawiatury do consoli (z uwzględnieniem wszystkich przypadków jakie użytkownik potrafi wpisać, komputer)
3. Pytania o WPF (których nie pamiętam)

Stanowisko It Developer:

1. Obiektowość? Dziedziczenie, Polimorfizm, Abstrakcja, Enkapsulacja omów.
2. Zaprojektuj tablicę 2x Hashującą która pozwala na wpisanie w klucz wartości z pod dowolnego klucza i znalezieniu odpowiadającego mu klucza.
3. Znajdź potencjalne błędy i niebezpieczeństwa w kodzie (jak np zamykanie strumienia, zwalnianie nie zarządzanych obiektów).

konto usunięte

Temat: Pytania na intervieew

"Kucie namespace'a System" na pamięć i "programowanie na kartce" jest fee :D Tylko "real life challenges" i wybieranie ludzi, którzy piszą prosto i "sprytnie".

konto usunięte

Temat: Pytania na intervieew

Marcin Pluta:

Omijalbym pytania, ktore zaleza od wersji i na ktore otwarta jest debata z bardzo mocnymi argumentami po obu stronach, bo zawsze mozesz trafic na kogos, kto wie o co chodzi w debacie:
3. Dlaczego powinnismy stosowac Procedury skladowane.

Rowniez pytania specyficzne dla organizacji nie powinny znalezc sie na tescie:
4. Skad wiemy jakie zmiany zostaly wprowadzone w kodzie od ostaniego buildu ?

i darowalbym sobie skrajnie teoretyczne:
6. Jaka jest maksymalna liczba kolumn w MS SQL Server 2008

Zamiast zadawac pytania dalbym klawiature i poprosil o napisanie testu w trzech coraz trudniejszych krokach, np:
1) stworzenie prostej, znormalizowanej bazy danych o zamowieniach
2) typowe zapytania (CRUD) + podstawowe use case jak pobranie informacji o niezrealizowanych zamowieniach, nie przypisanych, raportowych (sprzedaz w ostatnim tygodniu/miesiacu)
3) napisanie kilku funkcji i procedur skladowanych wykonujacych bardziej zlozone operacje, np. zamowienie ktorym nikt sie nie zajal przez ostatni tydzien powinno byc przypisane do nastepnego handlowca, a to zalegajace od trzech tygodni powinno zostac eskalowane do szefa

Kandydat nie musi skonczyc testu, ale wystarczy mi poobserwowac go przy pracy przez 20-30min i wiem czy wart mojej inwestycji czy nie. IMO kazde testy z teoretycznymi pytaniami sa warte porownywalnie wiele: nic lub prawie nic ;)
Remigiusz Towalski

Remigiusz Towalski Manager R&D
Engineering

Temat: Pytania na intervieew

Kilka ciekawych (z własnego doświadczenia):

SQL/ORACLE:
1. Czym się różni DELETE od TRUNCATE?
2. Kiedy i dlaczego NIE należy używać triggerów?
3. Ile znaków maksymalnie może mieć nazwa obiektu w bazie? (tak wiem, że absurdalne, ale akurat ta wiedza 2 razy mi się przydała w praktyce)
4. Co oznacza skrót ACID?

C#/.Net:
1. Jak działa Hashtable? Czego wymaga od obiektów?
2. Napisać program liczący ciąg Fibonacciego (z rekurencją i bez).

Ogólne:
1. Narysować prosty diagram klas dla wypożyczalni samochodów.

Zresztą im więcej doświadczenia ma konkretna osoba tym mniej pytań technicznych, rozmowa idzie w stronę pogadanki badającej prawdziwość CV. O projektach, ciekawych doświadczeniach itp.

Temat: Pytania na intervieew

Niby proste, a jak się kilka lat nie korzystało z ZU2, to można chwilę pogłówkować :)

sbyte a = 127;  // sbyte => 1 bajtowa liczba całkowita ze znakiem
a+=10;
sbyte a = -128;
a-=10;


Ile wynosi a w obu przypadkach?

O tym, że nawet profesjonaliści czasem "zapominają" o liczbach ujemnych bądź zakresie zmiennych, świadczy ten obrazek, który ukazał się moim oczom zeszłej zimy (klima w samochodzie)...
Obrazek
I tej zimy też czekają mnie ćwiczenia w przeliczaniu z ZU2 na ZM...Adrian Olszewski edytował(a) ten post dnia 02.11.10 o godzinie 01:08
Michał T.

Michał T. EX7 | Software team

Temat: Pytania na intervieew

Stanowisko programista (C# + MS SQL) - ok. 3,5 roku temu:
- rozwiązanie gry logicznej (nie pamiętam dokładnie, chyba z przeprowadzaniem rodzinki przez most), //się udało
- drzewko (w postaci tablicy: Id|ParentId) - napisać program, który je wypisze w ładnej postaci (kolejny poziom to wcięcia); nie pamiętam, czy na kartce czy na kompie, //się zaplątałem i poległem, wstyd.
- matematycznie: jak zamienić dwie zmienne miejscami (wartościami) bez użycia trzeciej zmiennej? //to mnie chyba uratowało ;-)
Poza tym - w ramach próby - miałem przygotować prezentację z NHibernate (co przy okazji było sprawdzianem części umiejętności z C#/SQL).

konto usunięte

Temat: Pytania na intervieew

- Odwróć kolejność słów w zdaniu bez używania żadnej dodatkowej pamięci.
Przykład:
in: to jest jakis string.
out: string jakis jest to
(to tak na rozgrzewkę)

- Jak sprawdzić czy lista jest cykliczna, w czasie liniowym, mając do dyspozycji zaledwie kilka bajtów dodatkowej pamięci. Lista może wyglądać np tak:
Obrazek


- Mając drzewko binarne, jak przeszukać je zygzakiem?
czyli w takiej kolejności dla tego drzewa: 8 3 10 14 6 1 4 7 13

Obrazek


- Jakbyś zserializował drzewko wyrażeń?

- Masz dwa identyczne roboty które lądują na idealnie płaskiej płaszczyźnie dyskretnej jednowymiarowej w tym samym czasie, spadochronami, w różnych miejscach tej płaszczyzny.
Napisz taki program, którego dwie identyczne kopie będą w obu robotach żeby te roboty się spotkały. Dostępne funckcje:
krok_w_lewo();
krok_w_prawo();
czy_jest_spadochron_na tym_polu();
czy_jest_drugi_robot_na_tym_polu();

A najlepiej to bym się wdał z kandydatem w jakąś dyskusje na temat religijnego sporu programistycznego. Np: wyższość wyjątków czy zwracanie kodów błędów, itd... i podpuścić go jakąś sprzeczną opinię. Developer z pasją mógłby taką dyskusję prowadzić godzinami :)

Język programowania jest nieistotny. Języka i środowiska można się nauczyć w przeciągu kilku dni/tygodni, a myślenia już nie, dlatego najważniejsze jest patrzeć na to, czy kandydat ma wystarczająco mocne zdolności algorytmiczne/analityczne czy ma wyczucie wydajności, bezpieczeństwa.

Pytania typu "co robi taka i taka funkcja", "napisz procedure składową" (tylko po to żeby sprawdzić czy zna syntax danego sql-a i takie podobne uważam, za złe i niemiarodajne.Karim A. edytował(a) ten post dnia 02.11.10 o godzinie 20:33
Maciej Hehl

Maciej Hehl w teorii Automatyk i
Robotyk (po wydziale
mechanicznym), ...

Temat: Pytania na intervieew

Ta lista to naprawdę w czasie stałym? znaczy O(1)?

konto usunięte

Temat: Pytania na intervieew

Na pewno w pesymistycznym przypadku musi być O(n). Poniżej tego zejść się nie da, z oczywistych względów.

konto usunięte

Temat: Pytania na intervieew

Maciej Hehl:
Ta lista to naprawdę w czasie stałym? znaczy O(1)?
tak jest, liniowym, typo ;)
Maciej Hehl

Maciej Hehl w teorii Automatyk i
Robotyk (po wydziale
mechanicznym), ...

Temat: Pytania na intervieew

Ok, dziękuję :)

Wymóg by sprawdzić czy lista jest cykliczna w czasie stałym, też coś sprawdza, ale chyba jednak trochę co innego.
Piotr Głudkowski

Piotr Głudkowski Rzucam się na
wszystko to, co jest
ciekawe i wymaga
rusze...

Temat: Pytania na intervieew

W czasie stałym to możesz jedynie na 100% stwierdzić, czy lista jest :)
Piotr Głudkowski

Piotr Głudkowski Rzucam się na
wszystko to, co jest
ciekawe i wymaga
rusze...

Temat: Pytania na intervieew

- Masz dwa identyczne roboty które lądują na idealnie płaskiej płaszczyźnie dyskretnej jednowymiarowej /.../
Dostępne funckcje:
krok_w_lewo();
krok_w_prawo();
Karim, na płaszczyźnie jednowymiarowej (czyli na prostej) nie da się skręcić w lewo. Nie da się też skręcić w prawo :)
Piotr Głudkowski

Piotr Głudkowski Rzucam się na
wszystko to, co jest
ciekawe i wymaga
rusze...

Temat: Pytania na intervieew

Jarosław D.:
"Kucie namespace'a System" na pamięć i "programowanie na kartce" jest fee :D Tylko "real life challenges" i wybieranie ludzi, którzy piszą prosto i "sprytnie".

Generalnie się z tym zgadzam - ale z drugiej strony tworzenie kodu na kartce to niezły test na wyobraźnię :) Na papierze edycja błędów jest znacznie bardziej pracochłonna niż w naszym ulubionym IDE, tak więc napisanie nietrywialnego kodu bez zużycia wszystkich kartek w notesie świadczyć może o niezłej wprawie w kodowaniu :)

konto usunięte

Temat: Pytania na intervieew

Piotr Głudkowski:
- Masz dwa identyczne roboty które lądują na idealnie płaskiej płaszczyźnie dyskretnej jednowymiarowej /.../
Dostępne funckcje:
krok_w_lewo();
krok_w_prawo();
Karim, na płaszczyźnie jednowymiarowej (czyli na prostej) nie da się skręcić w lewo. Nie da się też skręcić w prawo :)

Da się wykonać krok w prawo (x = x+1) albo krok w lewo (x = x-1) ;)


Obrazek


czyli np w prawo: z punktu nr 4 na 5, a w lewo z 4 na 3
Piotr Głudkowski

Piotr Głudkowski Rzucam się na
wszystko to, co jest
ciekawe i wymaga
rusze...

Temat: Pytania na intervieew

:) Może, jak by się dobrze rozpędzić, to dałoby sie od razu z 5 na 7? Takie małe zakrzywienie przestrzeni by zrobić...

konto usunięte

Temat: Pytania na intervieew

Piotr Głudkowski:
:) Może, jak by się dobrze rozpędzić, to dałoby sie od razu z 5 na 7? Takie małe zakrzywienie przestrzeni by zrobić...

jesteś na 5, robisz:
krok_w_prawo();
krok_w_prawo();
i jesteś na 7 ;)

konto usunięte

Temat: Pytania na intervieew

Piotr Głudkowski:

Generalnie się z tym zgadzam - ale z drugiej strony tworzenie kodu na kartce to niezły test na wyobraźnię :) Na papierze edycja błędów jest znacznie bardziej pracochłonna niż w naszym ulubionym IDE, tak więc napisanie nietrywialnego kodu bez zużycia wszystkich kartek w notesie świadczyć może o niezłej wprawie w kodowaniu :)

Taki test programowania na kartce niechybnie bym oblał. W erze IntelliSense i Resharpera nie pamiętam kiedy ostatnio pisałem słowo kluczowe class, zdefiniowałem ręcznie obsługę eventa czy wystukałem całą nazwę typu podczas kodowania (pomijając typy wartościowe). Kiedyś programowało się przy użyciu garści metrowych przewodów i wiadra lamp, dzisiaj wystarczy klawiatura z dwoma przyciskami Alt+Enter :). Kryteria naboru również powinny ewoluować. Z "czysto pamięciowych" na "sprawnościowe".
Michał T.

Michał T. EX7 | Software team

Temat: Pytania na intervieew

Karim A.:
(...)
- Masz dwa identyczne roboty które lądują na idealnie płaskiej płaszczyźnie dyskretnej jednowymiarowej w tym samym czasie, spadochronami, w różnych miejscach tej płaszczyzny.
Napisz taki program, którego dwie identyczne kopie będą w obu robotach żeby te roboty się spotkały. Dostępne funckcje:
krok_w_lewo();
krok_w_prawo();
czy_jest_spadochron_na tym_polu();
czy_jest_drugi_robot_na_tym_polu();
(...)

Tak z ciekawości - rozumiem, że jest to płaszczyzna z matematycznego punktu widzenia (czyt. nieskończona)?Michał Tomana edytował(a) ten post dnia 03.11.10 o godzinie 10:03

Następna dyskusja:

Pytania podczas rekrutacji ...




Wyślij zaproszenie do