Jak skuteczne są wyzwania programistyczne w procesie rekrutacji? [Zamknięte]


14

Myślę, że nasza firma może tworzyć wyzwania mające na celu znalezienie kandydatów na inżynierów oprogramowania, którzy są:

  • Dobry w rozwiązywaniu problemów, a nie w zachwycaniu rekrutów.
  • Bardziej prawdopodobne jest, że boją się przyjść do nas na targach pracy.
  • Bardziej prawdopodobne jest, że nie zostaną w pełni wykorzystane w obecnej pracy programistycznej, ale są zbyt introwertyczni, aby cokolwiek z tym zrobić.

Na przykład zobacz ten artykuł, w którym omawia Facebook ukrywanie adresu e-mail na obrazie za pomocą Piet .

Po prostu nie mogę znaleźć żadnych badań ani twardych danych na temat tego, czy to faktycznie działa, czy nie.


Nie zgadzam się. Nie jest niczym niezwykłym posiadanie dwuwierszowych tytułów na stronach internetowych SE, a ten konkretny tytuł jest bardzo wyraźny. Skrócenie go może sprawić, że będzie bardziej mylące.
Arseni Mourzenko

1
Nie wyobrażam sobie poważnych badań. Jak decydujesz, czy ci, którzy są zatrudnieni po takim wyzwaniu, są lepsi niż ci, którzy byliby zatrudnieni w innym przypadku, lub odwrotnie? Programiści różnią się, ich wykształcenie zmienia się znacznie na przestrzeni dziesięcioleci, zmieniają się osoby rekrutujące, zmieniają się wyzwania, trudny do wyobrażenia system punktacji.
użytkownik nieznany

1
Cześć Joe: prośby o studia są tu raczej kiepskie: nasza wiedza nie polega na wyszukiwaniu informacji. Gdyby brzmiało to: „Jak skuteczne są wyzwania programistyczne w procesie rekrutacji?”, Prawdopodobnie byłoby znacznie lepiej.

1
@mattnz: Nie rozumiem, skąd pochodzi twój wniosek. Możesz przeprowadzić test na zwierzętach przy pomocy dymu tytoniowego u myszy. Możesz zmierzyć prędkość reakcji w symulatorze po tym, jak ludzie wypiją alkohol. Jak możemy przenieść te metody do zatrudniania programistów?
użytkownik nieznany

3
@mattnz liczba zgonów na 10 000 osób w określonym czasie, czy to z powodu raka płuc, czy wypadków drogowych, jest (mniej więcej) obiektywnie mierzalną wielkością. Dobroć programisty lub sukces projektu SW nie są nawet dobrze zdefiniowanymi terminami.
Péter Török

Odpowiedzi:


7

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.


+1. Stworzenie dobrego wyzwania programistycznego jest prawdziwym wyzwaniem dla rekrutera.
Simon Bergot,

6

Bardzo efektywny.

... o ile proces rekrutacji nie zawiera wyłącznie problemów programistycznych. A ja nienawidzę robić niepokoić i ocenie technicznej każdej rozmowie, to ma działać jako prosty miernik do odfiltrowania idiotów. A odfiltrowywanie idiotów stanowi sedno procesu rekrutacji, dzięki czemu możesz poświęcić więcej czasu tym, którzy nadają się do tej roli.

Podczas wywiadu uważam za bardzo ważne, aby zobaczyć, co ludzie mówią pod presją. Jeśli są skłonni wypluć kilka rażących bzdur, łatwo je zidentyfikować i będę wiedział, że ta osoba nie jest warta mojego czasu.

Bardziej prawdopodobne jest, że boją się przyjść do nas na targach pracy.

To nie jest złe. Jeśli twój potencjalny kandydat nie chce się założyć, że warto go tam zatrudnić, to czy naprawdę chcesz go zrekrutować?


1
Mogą istnieć inne powody, dla których ktoś bałby się do nich podejść ... Na przykład niektórym osobom trudno jest sprzedać się, a nawet po prostu zaprezentować. Uczucia przeszkadzają. To nie znaczy, że nie byliby genialni i / lub cenni, gdy minęliby początkową fazę kontaktu.
Supr

0

Zakładam, że chcesz, aby ktoś pracował jako część zespołu - jako taki lepszy programista to osoba, która lepiej współpracuje z istniejącymi członkami zespołu. Chcesz zebrać grupę ludzi, którzy mogą skutecznie komunikować się ze sobą, którzy faktycznie dobrze się ze sobą dogadują (nie muszą być przyjaciółmi, ale potrzebują dobrego porozumienia i szacunku), którzy są gotowi się zgodzić i stosują wspólne standardy rozwoju (kod i proces), którzy chętnie pomagają swoim kolegom, gdy mają do czynienia z nowym problemem lub mają blokadę umysłową (teoria czterech oczu). Musisz także znaleźć mieszankę typów osobowości, więc jeśli masz zespół introwertyków, którzy rzadko rozmawiają, wówczas zaangażowanie bardziej rozmownego członka zespołu może znacznie poprawić dynamikę zespołu, co zwiększy jego produktywność. Z drugiej strony,

Po tym, jak dopasujesz osobę do tego miksu, zastanów się nad umiejętnościami technicznymi. Te też muszą się uzupełniać. Każdy ma inne obszary, w których są silni, inni są w porządku, a niektórzy nie mają pojęcia. Musisz więc zebrać zestaw mocnych stron odpowiednich dla danego projektu. Pamiętaj, że koder pośredni, który dobrze współpracuje z dobrym koderem, zwiększy poziom swojej pracy przez silniejszą osobę. Słabym ogniwem w łańcuchu są relacje, a nie umiejętności (pod warunkiem, że umiejętność należy do zespołu)

Powodzenia w łączeniu tego.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.