Czego najlepsze firmy szukają w wywiadzie? [Zamknięte]

9
  1. Zasadniczo szukam tego, co wygłupiasz i jesteś poza pozostałym procesem?
  2. Czy rundy eliminacyjne są sprawiedliwym sposobem osądzenia osoby? Każdy może mieć złą godzinę :-(
  3. Czy powinieneś kodować najlepiej, jak najlepiej, czy dobrze algorytm? Generalnie najpierw koduję praktyczne rozwiązanie, a następnie pracuję nad nim do poziomu, który wydaje mi się piękny. Czy to złe podejście?

Niedawno odbyłem wywiad telefoniczny, w którym poproszono mnie o napisanie wariantu przejścia poziomu za 20 minut. Mogłem uzyskać Algorytm i działający kod w 20 minut, ale nie mogłem poprawnie obsługiwać wyjątków i konwencji kodowania, po czym nie otrzymałem od nich odpowiedzi :-( Wszystkie pozostałe pytania w wywiadzie poszły bardzo dobrze, to było jedyne, co było „nie do kresu”.

Nie trzeba dodawać, że podoba mi się firma i złożę ponownie wniosek, ale następnym razem chcę to zrobić dobrze :-)

Podziel się swoimi doświadczeniami i cennymi sugestiami.

Maniak
źródło
4
Pamiętaj o względnych kosztach niewłaściwego oceniania kandydata. Fałszywe negatywne (nie zatrudnianie kogoś, kto byłby dobrym pracownikiem) ma dla pracodawcy jedynie koszt alternatywny, podczas gdy fałszywie pozytywne może być bardzo kosztowne i może mieć konsekwencje dla całej organizacji, a także paskudne.
Chris Bye
@Chris: Masz rację. +1.
Geek

Odpowiedzi:

7

Podczas przeprowadzania wywiadów technicznych szczerze szukam ludzi, którzy mogliby trafić do domu. Jeśli kandydat nie wygląda na to, że zna się na swoich rzeczach, nie będzie skuteczny w swojej roli (mówię tutaj o stanowiskach dla starszych programistów).

Spójrz na to w ten sposób: wolałbyś mieć trudny wywiad, gdzie nie dostać pracę (bo nie jesteś dobrym rozwiązaniem) lub łatwy wywiad, gdzie zrobić to zadanie, ale potem się puścić po 90 dni, bo jesteś nad głową?

Widziałem zdecydowanie zbyt wielu programistów w tym drugim obozie. Jeśli nie dostałeś pracy, ponieważ flubiłeś część techniczną, uważaj ją za przebłaganie w przebraniu. Jeśli nie lubisz odrzucenia, zwiększ swoje umiejętności techniczne.

Marcel Lamothe
źródło
4
Bardzo dobrze powiedział Marcel. Jakoś czuję, że nie wszyscy (bez względu na to, jak dobrze) mogą wszystko naprawić w nieznanym problemie (czas jest ograniczeniem). Jeśli ktoś prześlizguje się przez problem, prawdopodobnie wcześniej napisał ten sam kod lub podobny kod. Jedno pytanie, choć w rundzie eliminacyjnej, czy wiesz, że ktoś nie jest wystarczająco dobry, jeśli wygłupia się pytanie lub dwa (chyba że ktoś popełni błąd). Chodzi mi o to, żeby „runda eliminacji” zdawała się wychodzić z hipotezy „wiesz, że ktoś nie jest wystarczająco dobry”. Tak, zły facet? Oczywisty brak wynajmu ..
Geek
Wywiad jest z pewnością trudną sztuką i pod żadnym względem nie twierdzę, że jestem ekspertem. Ale w moim przypadku nie próbuję grać w „gotcha!” - gdzie tylko czekam, aż ktoś coś zrozumie. Zamiast tego badam ich wiedzę, próbując zobaczyć, jak głęboka jest. Czy kandydat może łatwo wyjaśnić, na przykład, jak działa tabela skrótów? Zazwyczaj dość łatwo jest zobaczyć, kto kończy w kolumnie wygranych, a kto nie.
Marcel Lamothe
@Geek - wolałbyś być osobą, która dobrze to zrozumiała i została pominięta przez kogoś, kto tego nie zrobił? Może to być wyzwanie kodowania lub delikatne pytanie o to, jak pracujesz z problemowymi członkami zespołu, ale ostatecznie wszyscy kandydaci oprócz jednego muszą zostać wyeliminowani.
JeffO
@Geek: „wcześniej napisał podobny kod”. Być może napisali rażąco podobny kod. Przejście rzędu-poziom jest odmianą przejścia drzewa, które powinno być znane każdemu absolwentowi CS. Jeśli nie jest ci to znane, to gdzieś coś przegapiłeś. Wziąłeś lekcję algorytmów, prawda?
kevin cline
@kevin: Przejście do poziomu jest łatwe, jeśli mógłbym przeformułować pytanie jako „Biorąc pod uwagę ograniczenia czasowe, jakie rzeczy można pominąć i nadal uważać je za wystarczająco dobre”. Myślę, że Chris Bye ma świetny komentarz do tego pytania.
Geek
4

Gdy ludzie proszą o kodowanie prostych algorytmów w bardzo ograniczonym czasie, konwencje kodowania i obsługa wyjątków będą ostatnią rzeczą, na którą patrzą. Chyba że robisz coś okropnego, oczywiście, jak nazywania funkcji przemieszczenia funcoraz wszystkie zmienne a, b, c. Być może był jeszcze jeden powód, dla którego nie oddzwonili.

Oczywiście, każdy może mieć złą godzinę. Ale to zły znak, jeśli możesz mieć jedną złą godzinę z tych pięciu, które spędzasz na kilku rundach wywiadu i jeśli nie możesz przygotować się na ważne działania.

Osobiście uważam, że zdobycie czegoś, co działa, i poprawienie tego jest niewłaściwym podejściem. Wiele osób (w tym ja) uważa, że ​​jeśli ktoś pisze kod, który wygląda jak bałagan, ma również bałagan w głowie. Sugeruję pisanie kodu wolniej, ale w bardziej przemyślany sposób.

A nawet bardziej osobiście (i być może obraźliwe), nie sądzę, że jesteś wystarczająco dobry w algorytmach. Wyłącznie dlatego, że przeliterujesz to jako „Algorytm” ze stolicą A. Nie przeliteruj czegoś, czego się tak nie boisz.

P Shved
źródło
5
Lol .. Podobał mi się ostatni akapit :-) Zwróć uwagę na wielką literę L w „Lol”. Przykro mi, ale angielski nie jest moim pierwszym językiem. BTW Nauczyłem się, że algorytm musi być napisany bez dużej litery A :-)
Geek