Jak każde narzędzie, mogą być niezwykle pomocne lub bardzo niebezpieczne. Wiertarka znacznie ułatwi ci życie - dopóki nie przekopiesz górnej części dłoni i nie wylądujesz w pogotowiu. To samo dotyczy wyzwań programistycznych w rekrutacji.
Dobro : może to być skuteczny sposób na wykrycie kogoś, kto na papierze może nie być aż tak przekonujący jako programista. Ten, który ma dyplom z czegoś, co ma niewiele wspólnego z tym, co ludzie zwykle uważają za dziedziny związane z „programowaniem” - biologia, nauki polityczne, historia sztuki ...
Jeśli przejdą przez twoje wyzwania, to świetnie. Nauczyli się jakoś programować i najwyraźniej utknęło. Jeśli utkną w martwym punkcie, ich zastosowanie może być po prostu czymś, co przeszło przez HR.
Złe : źle napisane wyzwanie programistyczne nie ocenia umiejętności programowania . Sprawdza rozwiązaniu zagadki za pomocą programowania umiejętności . Problem polega na tym, że później jest dwa zmienne pytanie - czy jesteś dobry w rozwiązywaniu łamigłówek i czy potrafisz rozwiązywać zagadki za pomocą kodu. Można mieć doskonale utalentowanego programistę, który kompletnie zawodzi w rozwiązywaniu zagadek.
Większość problemów programistycznych, które widziałem, również nie udaje się wykryć ludzi, którzy są blisko tego, czego chcesz, w zależności od tego, jak to napisano.
Są sposoby na złagodzenie obu z nich. W tym drugim przypadku rozważę zaakceptowanie „częściowego zaliczenia” w postaci rozwiązań, które wydają się nie do końca dostępne, „Oto jak bym to rozwiązał ...” itp., Jeśli naprawdę szukasz problemu solwery. W końcu bardzo niewiele osób koduje samotnie, a jeśli ich odpowiedź byłaby słuszna, gdyby mogli zapytać starszego kolegi „Hej Jim, czy znasz dobry sposób na wdrożenie X?”, To może być ktoś, kogo chcesz Twój zespół.
Ten pierwszy jest nieco trudniejszy, ponieważ spoczywa na nim ciężar. Wybierz puzzle / problemy / wyzwania, które mają znaczenie. Jeśli nikt w twojej grupie nigdy nie spotkał się z czymkolwiek, nawet w części przypominającym problem Traveling Salesman, nie rób sprytnych pomysłów na Traveling Salesman. W ten sposób, jeśli nie potrafią rozwiązać problemu polegającego na „rozwiązaniu problemu i zakodowaniu go”, to przynajmniej nie udaje im się coś, co rzeczywiście się pojawi, zamiast jakiejś arbitralnej sprytności, którą zespół spunął podczas lunchu.