Jakie są sposoby sortowania według kandydatów programujących bez doświadczenia?

15

Pracuję dla stosunkowo małej firmy. Nie otrzymujemy wielu CV od ludzi z doświadczeniem, ale jesteśmy w sytuacji, w której powinniśmy zatrudniać ludzi do rozwoju. Dość często otrzymujemy CV od osób po szkole.

Chcielibyśmy znaleźć nieoszlifowane diamenty, ale latanie nielokalnych ludzi i spędzanie dnia z kilkudniowym tygodniem na siedzeniu, osobista rozmowa jest kosztowna. Przeprowadzamy również wywiady telefoniczne dla kandydatów na pół obiecujących kandydatów, ale ich przygotowanie może zająć trochę czasu i zwykle tracą kilka osobogodzin.

Zastanawialiśmy się nad wdrożeniem testu programisty, ale musimy jeszcze znaleźć dobry, którego nie używają inne studia.

Jakie praktyki stosują twoje studia, aby przeglądać te osoby, przy minimalnym wewnętrznym obciążeniu?

Tetrad
źródło
3
Nienawidzę krytykować kolegów towarzysza UnityAnswers :) Ale już na to obszernie odpowiedziano na StackOverflow. Plus tutaj - to my próbujemy się zatrudnić, a nie zatrudniamy. :) Zadaj pytanie, jak ominąć te głupie pytania podczas rozmowy kwalifikacyjnej. :)
Cyklop
6
Z całym szacunkiem się z tobą nie zgodzę. Osobiście uważam, że zarządzanie projektami gier i dynamika zespołu są tak samo dużym problemem przy wysyłaniu gier, jak problemy, które mają ludzie „na ziemi”. Dobre gry są tworzone przez dobre zespoły, które mają dobrych ludzi.
Tetrad
Myślę, że John C miał na myśli to, że istnieje wiele odpowiedzi na temat SO dla testów programowania opartych na wywiadach. Nie uważam też, że ostateczna decyzja powinna opierać się na teście programistycznym.
Casey
-1 przepraszam. Zarówno nie na temat (tak naprawdę pytanie SO), i odpowiedział około 50 razy gazillion.
Kaczka komunistyczna
+1 za pytanie o powiększenie zespołu zamiast próby obsadzenia stanowiska. Brak komentarza na temat tego, czy należy on tutaj, czy na SO. : P
michael.bartnett

Odpowiedzi:

12

Mamy mieszane środowisko sztuki / techniki, ale proces zatrudniania jest zawsze taki sam. Cull ciekawe wznawia pracę i oferuje kandydatom zadanie od początku do końca we własnym zakresie, w którym dajesz mu tylko wysoką koncepcję. Dla programistów niewielka gra, którą można stworzyć w ciągu kilku dni (można użyć sztuki programisty lub akcji), w której dajesz mu wyobrażenie o tym, co powinien zrobić i jak to zrobić. Naprawdę podstawowa gra. Dla artystów jest to albo praca specjalistyczna, albo pomysł na koncepcję.

Mogą nad tym pracować samodzielnie, mogą korzystać z wszelkiej potrzebnej pomocy (google, pytać, cokolwiek), dopóki kończą w wyznaczonym terminie. Test składa się z pierwszego wytrącenia, jeśli projekt jest rzeczywiście taki, jaki powinien być (czy w ogóle działa itd.) I gdzie przechodzisz przez proces, w którym go robił, oraz przegląd kodu, w którym omawiasz jego decyzje podczas jego podejmowania.

Klatka kluczowa
źródło
9

Co za cholera... :)

Jak rekrutować wielkich programistów

Jakiego procesu używasz do rekrutacji programistów?

Jak najlepiej powiedzieć doskonałemu programistowi podczas rozmowy kwalifikacyjnej?

Jak długo powinien zająć starszy programista, aby rozwiązać FizzBuzz w wywiadzie?

cyklop
źródło
Nie chodzi o to, że są to złe pytania, ale zakres tego pytania dotyczy w szczególności osób starszych, które mogą potrzebować szkolenia i nadzoru. Nie mam problemu z wybraniem dobrych starszych ludzi. Mam problem z próbą znalezienia inteligentnych ludzi, którzy po prostu nie mają wystarczającego doświadczenia, aby dobrze brzmieć w tradycyjnym wywiadzie.
Tetrad
1
@Tetrad, tylko jedno ze wspomnianych pytań starszych , a ja wybrałem je głównie, ponieważ wspomniałem o teście FizzBuzz , który może przynajmniej pomóc ci na ekranie telefonu. :)
Cyklop
6

Brak doświadczenia zawodowego nie oznacza żadnego doświadczenia. Sprawdź, czy kandydaci brali udział w jakimkolwiek lokalnym / globalnym wydarzeniu, takim jak globalny jam game, niezależny festiwal gier, czy po prostu wymyślili stronę internetową ze swoim portfolio.

Z drugiej strony niektórzy programiści uwielbiają konkursy programistyczne; sprawdź to też (ACM, TopCoder, Google Code Jam, UVa, SPOJ, żeby wymienić tylko kilka). Doświadczenie w tego rodzaju konkursach uzupełnia każdy dziwny test w modzie i prawdopodobnie pomoże ci w wznowieniu pracy.

Podsumowując, myślę, że ten post od Joela Spolsky'ego zawsze pomaga.

reefaktor
źródło
2
+1. Konieczne jest wcześniejsze doświadczenie pozazawodowe. Jeśli nie napisali żadnej gry (lub podobnego projektu) podczas ubiegania się o pracę, lepiej poczekać na kogoś, kto ma.
Macke
+1 Jeśli ktoś aplikuje do pracy jako programista w twoim studio i nigdy nawet nie próbował stworzyć gry, nawet jeśli jest to prosta gra, może nie być wart twojego czasu.
michael.bartnett
6

Najszybszym sposobem na wyeliminowanie kandydatów jest 10-minutowa rozmowa telefoniczna. Zwykle w ciągu pierwszych kilku pytań wiem, czy to będzie dobry kandydat, czy nie.

  1. Czy znasz C ++ lub C?
  2. Czy możesz mi powiedzieć różnicę między tymi dwiema zmiennymi?

    int a;
    int* b;
  3. Jaka jest różnica między a++i b++?

Uważam, że znajomość wskaźników jest absolutnym minimalnym poziomem kompetencji. Jeśli ubiegasz się o profesjonalną pracę w grze i nie wiesz, jak działają wskaźniki, to będziesz nad głową.

Chris Masterton
źródło
Myślę, że tym, na czym skończymy, jest test programowania na czas. Coś w tym stylu, ale można go zwolnić przez e-mail, nawet bez konieczności zajmowania jednego z naszych czasów programisty (innego niż zdobywanie punktów, jeśli oczywiście). Przeprowadzamy już wywiad telefoniczny i to dobry proces sprawdzania, ale liczyłem na więcej pomysłów. W każdym razie +1.
Tetrad
5
Z mojego doświadczenia wynika, że ​​im dłuższy test programowy, tym większa strata czasu dla wszystkich zaangażowanych - celem powinien być filtr. Byłbyś bardzo zaskoczony, jak wiele osób nie mogło odpowiedzieć na proste pytanie Chrisa dotyczące powyższych wskaźników, ale z łatwością mogło Cię oszukać przez telefon podczas pokazu. Prawdopodobnie możesz przeszkolić swojego administratora lub HR (jeśli go masz), aby filtrował odpowiedzi na te pytania - nie musisz marnować czasu programisty i szybko wiesz, czy ma on jakąkolwiek wiedzę na temat programowania.
Dennis Munsie
4

Jedną z rzeczy, która szybko robi rundy jako łatwy mechanizm filtrowania, jest kodyfikacja.

http://codility.com/

Jest to usługa, za którą płacisz za automatyczne testy czasowe. Złą rzeczą jest to, że istnieje stała liczba testów. Dobrą rzeczą jest to, że testy są automatycznie oceniane na podstawie testów jednostkowych. To może być dobre podejście do uboju dużej liczby osób.

Tetrad
źródło