Pytanie:
Poproszono Cię o wykonanie rozmowy kwalifikacyjnej, ale ignorujesz ekspertyzę dotyczącą demonstracji pracy w GitHub?
Joe Developer
2016-03-08 20:45:07 UTC
view on stackexchange narkive permalink

Niedawno przeprowadziłem dwa wywiady dotyczące języka programowania X. Przez większość ostatnich pięciu lat ten język był moim celem zawodowym i osobistym.

Pierwsza rozmowa odbyła się osobiście z pracownikiem technicznym główny i starszy programista. Na koniec kierownik techniczny powiedział mi, że poszło dobrze. Pracując jako programista prawie 10 lat, czyli po kilku wywiadach w swoim życiu, wiem, że poszło dobrze. Na koniec nauczyłem ich nowej techniki w języku X, o której wcześniej nie słyszeli. Kilka dni później otrzymałem odpowiedź od firmy, że chcieliby podjąć ze mną kolejne kroki.

Drugi wywiad dotyczył tła i technicznego ekranu telefonu z kierownikiem technicznym. Rola poszukuje osoby ze znajomością języka X. Na każde pytanie odpowiedziałem natychmiast i dokładnie. Pod koniec rozmowy kierownik techniczny stwierdził, że chce przejść do kolejnych kroków.

W obu wywiadach w pełni spodziewałem się kolejnych kroków - biorąc pod uwagę sukcesy wywiadów.

Jednak obie firmy chcą, żebym ukończył 4-godzinne ćwiczenie w języku X. Podczas komunikacji przez e-mail z firmą 1 poinformowałem ich o 5-6 repozytoriach GitHub, w których wniosłem wkład w OSS i stronę osobistą studia w języku X. W przypadku firmy 2 pod koniec rozmowy telefonicznej powiedziano mi, że mam wykonać ćwiczenie w języku X. Z szacunkiem cofnąłem się - pytając, czy byłoby OK, gdybym połączył Cię z moim GitHubem repozytorium, które zawiera 5-6 projektów demonstrujących moje umiejętności w języku X? Jednak ankieter nadal chce, żebym ukończył ćwiczenie.

Krótko mówiąc, oto mój sprzeciw wobec wykonania tych ćwiczeń:

  1. Mam solidne dowody biegłości w języku X wskazując na moją poboczną pracę (na GitHub) z ostatnich trzech lat, obejmującą setki godzin mojego osobistego czasu.
  2. Biorąc pod uwagę moje pragnienie przedstawienia siebie jako rygorystycznego, ciężko testującego inżyniera oprogramowania, wykonanie ćwiczenia prawdopodobnie zajmie mi około 6-8 godzin. Innymi słowy, aby pokazać swoją prawdziwą twarz, nie spodziewam się, że ukończę pracę w ciągu ~ 4 godzin, chyba że dam jej mniej niż 100%.
  3. Szczerze mówiąc, wolę osobisty czas na dalsze studiowanie mojego obecnego „programu nauczania” projektów pobocznych, a mianowicie bardziej zaawansowanych funkcji i OSS w języku X.

Jak mogę z szacunkiem, ale śmiało, wyrazić swoje zainteresowanie firmę, ale odmówić wykonania ćwiczeń biorąc pod uwagę powyższe trzy punkty?

Komentarze nie służą do rozszerzonej dyskusji; ta rozmowa została [przeniesiona do czatu] (http://chat.stackexchange.com/rooms/36771/discussion-on-question-by-joe-developer-asked-to-complete-interview-exercise-bu).
Nigdy nie pracowałeś gdzieś, gdzie zatrudniono programistę, ponieważ dobrze przeprowadził wywiad, ale okazał się fałszywy? Testy te służą jako filtr dla osób, które fałszywie poznają rozmowę kwalifikacyjną i dają firmie szansę sprawdzenia, jak Twój styl kodowania i umiejętności rozwiązywania problemów radzą sobie w określonej sytuacji. Mogłem powiedzieć to samo w przypadku mojej obecnej pracy - prawdopodobnie warte tysiące godzin na moim githubie - ale wielu ankieterów chce po prostu namacalnych dowodów.
@corsiKa Komentarz. Nie odpowiadam na pytanie OP, tylko kwestionuję jego zastrzeżenia.
@corsiKa Chociaż znowu patrzę w dół, mogłoby to być lepsze jako przeformułowany komentarz do twojej odpowiedzi.
OP wyraźnie stwierdza, że ​​ceni swój czas i nie jest w stanie wykonać częściowej pracy bez wynagrodzenia. Biorąc pod uwagę jego oczekiwania, jestem pewien, że ma wiele możliwości jako programista i nie omija go porzucenie tego kiepskiego testu.
Oprócz pokazania, co możesz zrobić, mając wystarczająco dużo czasu na githubie, test pozwala ci zademonstrować, co możesz zrobić w krótkim przedziale czasu, biorąc pod uwagę termin (umiejętność, która może uratować twoją pracę pewnego dnia). Jaki jest Twój priorytet? Jaka jest jakość efektu końcowego? Czy zastanawiałeś się, czy nie ma to na celu sprawdzenia Twojej wiedzy i umiejętności, ale sprawdzenie, jak pracujesz?
`` Wolałbym raczej wykorzystać swój czas osobisty ... '' Niestety, można to prawdopodobnie zignorować jako problem w każdej 'odpowiedzi'. To po prostu stwierdzenie, co ** każdy ** potencjalny pracownik sądzi o ** każdym ** zadaniu podczas rozmowy kwalifikacyjnej. Każdy ma coś, co wolałby robić. Jest prawdopodobne, że niektórzy inni kandydaci przypisują temu pracodawcy podobną wartość, ale niektórzy uważają, że warto zainwestować w ich strony.
Jedenaście odpowiedzi:
Neil Slater
2016-03-08 21:02:55 UTC
view on stackexchange narkive permalink

Jest mało prawdopodobne, abyś mógł odrzucić test, ponieważ jest to coś, czego zdecydowali się oczekiwać w trakcie rozmowy kwalifikacyjnej.

Osobiście zgadzam się, że ich proces jest wadliwy - patrz np. Zadanie programistyczne odstrasza kandydatów, czy powinniśmy go porzucić? na wiele dyskusji na temat stosowności takiego testu. Chociaż stannius komentuje, że przynajmniej ta firma nie wykorzystała długiego testu technicznego na wczesnym etapie jako tani filtr, więc zachowuje się z większym szacunkiem dla czasu kandydata niż niektórzy.

Twoje kontrargumenty prawdopodobnie nie trafią w sedno z tego powodu i czy IMO nie jest warte podnoszenia.

Mam solidne dowody biegłości w języku X, wskazując na moją dodatkową pracę (w github) w ciągu ostatnich 3 lat, obejmujących 100 godzin mojego osobistego czasu

Skąd ankieter wie o tym bez szczegółowego badania twoich projektów i pewnego rodzaju dowodów, że wkłady są właściwie twoje? Test wewnętrzny rozwiąże problem, z którym ankieter jest zaznajomiony i na podstawie którego powinien być w stanie ocenić wymagane umiejętności. Krótko mówiąc, użycie standardowego testu jest dla firmy mniejszym wysiłkiem i ryzykiem.

Biorąc pod uwagę moje pragnienie przedstawienia siebie jako rygorystycznego, ciężko testującego inżyniera oprogramowania, prawdopodobnie zajmie mi to ~ 6 lat -8 godzin na wykonanie ćwiczenia. Innymi słowy, aby pokazać swoją prawdziwą twarz, nie spodziewam się, że ukończę pracę w ciągu ~ 4 godzin, chyba że dam jej mniej niż 100%.

Ja też uważam, że te testy może potrwać dłużej niż sugerowano, chociaż różni się to znacznie w przypadku różnych pracodawców. Nie widzę tutaj żadnego argumentu przemawiającego za niepodejmowaniem tego zadania, tylko skarga, że ​​jest to „za dużo pracy”, a także potencjalna czerwona flaga, że ​​w przyszłości zajmiesz podwójnie szacowany czas na rzeczywiste zadania, ponieważ spodziewasz się zastosuj swoje podejście do rozwoju opartego na testach, wyprzedzając to, co firma uważa za stosowne.

Szczerze mówiąc, wolałbym raczej poświęcić swój osobisty czas na dalsze studiowanie mojego obecnego „programu nauczania” projektów pobocznych, a mianowicie bardziej zaawansowanych funkcji i OSS w języku X

Co ty chęć wykorzystania swojego czasu osobistego nie jest czymś, co firma przeprowadzająca rozmowę kwalifikacyjną bierze pod uwagę, nie bardziej niż na przykład czas dojazdów do pracy w przypadku podjęcia pracy.

Firma może się mylić co do ich ocena przydatności zadania podczas rozmowy kwalifikacyjnej (lub brak uznania dla przyzwoitych testów i hobby). Mogą nie brać pod uwagę, jak dużą barierą jest rozmowa kwalifikacyjna w pozyskaniu dobrych kandydatów. Jednak konfrontowanie ich z tą opinią, zanim zdecydują się zatrudnić, może sprawiać wrażenie, że jesteś kłótliwy i prawdopodobnie zmniejszy Twoje szanse na zatrudnienie.

Ostatecznie musisz grać w ich grę według ich zasad lub zdecydować, że nie jest tego warta.


Po zatrudnieniu możesz mieć wystarczająco dużo dobrej woli i ufaj, że możesz wyrazić opinię na temat przebiegu rozmowy kwalifikacyjnej. Chociaż sugeruję zaczekać, aż zostaniesz zapytany lub poczujesz, że zdobyłeś na tyle zaufania, że ​​możesz mówić szczerze o tej kwestii. Przyszli pracownicy, a może nawet firma, mogą Ci podziękować, jeśli tak.

Wśród firm, które używają ćwiczeń w domu, ta firma jest znacznie powyżej średniej, ponieważ włożyła pewien wysiłek w kandydata przed przedstawieniem mu testu. Wiele firm oczekuje, że kandydaci wykonają takie ćwiczenie na wczesnym etapie procesu, po wykonaniu niewiele więcej niż ekranu wznowienia.
@Raystafarian jaka rada jest inna? Jeśli firma decyduje, czy zastosować test, co do którego udowodniono, że przegania kandydatów, których * nie * chce przegonić - być może powinna zmienić lub usunąć ten test. Jeśli osoba decyduje się na * przystąpienie * do testu, który jest wymagany do podjęcia pracy w firmie, o którą * chce * się ubiegać - podejdź do testu dang. Chodzi o to, aby osiągnąć rezultat, który chcesz osiągnąć, aw tym przypadku wynik jest brany pod uwagę dla zatrudnienia, które stoi za testem wątpliwej wartości.
@Jason to nie była najlepsza odpowiedź, kiedy komentowałem - ale tak, masz rację.
@Raystafarian ah, to dodaje trochę kontekstu.
Czyli konto GitHub pełne fajnych projektów jest w tym kontekście w zasadzie bezużyteczne, ponieważ firmy nie zawracają sobie głowy czytaniem ich?
@BellAppLab: Właściwie to ludzie będą je czytać i mogą być ważnymi IMO. Potraktuj je jednak jako część procesu weryfikacji CV. Czasami, jeśli projekt jest interesujący, może trafić na pytania podczas rozmowy kwalifikacyjnej i oczywiście jako kandydat możesz spróbować skierować tam rozmowę na ulubione przykłady dobrej pracy.
@BellAppLab Nie, nie bardzo. Po prostu nie jest to karta umożliwiająca wejście do naszej firmy za darmo. Twoje projekty poboczne są nadal świetnym tematem do * rozmowy * podczas rozmowy kwalifikacyjnej, odkrywania, dlaczego i jak sobie z nimi radzisz. To po prostu nie pomaga zbytnio w części * screeningowej - w końcu mogę łatwo skopiować kod z Internetu i uczynić go moim repozytorium GitHub, albo kod może być okropny (z dobrych lub złych powodów, aby uruchomić) lub może to być ogromna przesada w przypadku problemu, który próbuję rozwiązać, lub ...
@Luaan Tak, jak ja to widzę, właśnie podałeś całkiem przyzwoite powody, aby faktycznie używać repozytoriów GitHub jako narzędzia przesiewowego.
Nie zapominaj, że jednym z powodów, dla których warto poprosić o test kodowania, jest sprawdzenie czyjegoś stylu kodowania. W projektach GitHub być może stosujesz się do czyichś wskazówek dotyczących stylu, więc chociaż może to działać doskonale, w środowisku zespołowym może być mniej pożądane. Najlepszym sposobem oceny czyjegoś stylu kodowania jest poproszenie ich o napisanie kodu czegoś, o czym wiesz, co pozwoli ci dokładnie ocenić pracę.
@Cronax To zależy w dużej mierze od kultury firmy. Z tego, co widziałem, styl staje się mniej ważny - następuje niewielka zmiana z „jednego właściwego sposobu robienia rzeczy” na nieco większą tolerancję. A kiedy jesteś w towarzystwie „jedynego właściwego sposobu robienia rzeczy”, i tak będą uczyć i egzekwować swój styl. Możliwość dostosowania czyjegoś stylu prawdopodobnie liczyłaby się jako pozytywny punkt, a nie negatywny :)
@Luaan tak, jak ja to widzę, jeśli wszyscy używają tego samego stylu kodowania, co znacznie ułatwia współpracę z kodem innych osób, co oszczędza dużo czasu i bólu głowy. Zespół powinien zawsze decydować między sobą, jakie wytyczne wyznaczył stylowi kodowania, nawet jeśli firma jako całość nie narzuca żadnego * „jedynego prawdziwego sposobu” * robienia rzeczy. Znane i wymuszone wytyczne dotyczące stylu kodowania nie tylko ułatwiają wspólną pracę, ale także bardzo pomagają w utrzymaniu kodu.
@Cronax Tak, całkowicie rozumiem twój argument, zwłaszcza w przypadku języków, które w dużym stopniu zależą od przestrzegania tego samego stylu (Clojure lub Python dba o wiele mniej niż na przykład Assembly lub C). Ale jak powiedziałem, daje to dodatkowe punkty za możliwość korzystania z cudzego stylu kodowania - zwykle szukasz ludzi, którzy próbują się dostosować, a nie tylko tych, którzy mają ten sam styl kodowania co Ty.
Używamy tego procesu tam, gdzie pracuję i gdy przyszedł wysoko wykwalifikowany kandydat, jednak jego procesy pracy nie układały się dobrze z naszymi. To daje potencjalnemu pracodawcy szansę na pokazanie, JAK pracujesz. Wiedzą już, że możesz wykonać świetną pracę, ale proces tego może być bardzo ważny dla firm, szczególnie tych, które wykonują wiele par, w których dynamika zespołu odgrywa ważną rolę.
Dobra odpowiedź, chociaż firma może potencjalnie przejmować się czasem dojazdów do pracy, zwłaszcza jeśli w przeszłości miała problemy z pracownikami i czasem dojazdów.
Nie odpowiem na twoje pytanie tak dobrze, jak inni, ale zwrócę uwagę, że dla prawie każdego języka nowszego niż FORTRAN praca na twoim GitHubie mogłaby równie łatwo pochodzić z innej witryny na SE, jak twoje własne ręce
@Luaan: A świetnie wyglądający list motywacyjny i CV można po prostu skopiować i sfałszować jak kod.Różnica polega na tym, że mogę spojrzeć na pełną historię repozytoriów i sprawdzić, czy to, co tam jest, jest prawdopodobne.Jeśli po prostu skopiujesz kilka kodów i wykonasz tylko jedną lub dwie rewizje, zaciekawiłoby mnie, dlaczego jest tylko jedna lub dwie rewizje.Z tego, co piszesz, wynika, że nawet nie używasz zbyt często kontroli wersji?
@phresnel Więc?Nigdy nie czytam listów motywacyjnych ani CV.Jedyną wartością, jaką mają, jest najwcześniejszy proces selekcji, a nie sam wywiad - w rzeczywistości zawsze uważałem, że są one szkodliwe dla jakości wywiadu.Czy wersjonowana historia jest lepsza?Jasne, ale nie dużo lepiej.Istnieje wiele powodów, dla których Twoje repozytoria Github mogą mieć tylko kilka zatwierdzeń.Nie jestem pewien, dlaczego doszedłeś do takiego wniosku - próbujesz powiedzieć, że jestem idiotą, czy co?Proponuję jeszcze raz dokładnie przeczytać to, co napisałem - bez wkładania słów do ust.
@Luuan: `` próbujesz powiedzieć, że jestem idiotą, czy co? '' Miałeś zły dzień?Możesz odpocząć;Nie powiedziałem ani nie miałem tego na myśli - chociaż po takim pytaniu nie jestem już pewien.
Lilienthal
2016-03-09 00:22:08 UTC
view on stackexchange narkive permalink

Aby odpowiedzieć na aktualne pytanie:

Szanowny [Hiring Manager],

Dziękuję za poświęcenie czasu na spotkanie ze mną poprzedniego dnia 1 , z przyjemnością dowiedziałem się więcej o [stanowisku / firmie] i rozmawiałem o [innowacjach technicznych / wyzwaniu / nadchodzącym projekcie w firmie / ...]. Doceniam przydatność ćwiczeń z kodowania dla początkujących programistów, ale uważam, że moje 10-letnie doświadczenie zawodowe oraz moje osobiste projekty i wkład w open-source powinny powiedzieć więcej o moich umiejętnościach, niż mógłby kiedykolwiek test kodowania. Chociaż nadal aktywnie uczestniczę w projektach open source i odkrywam [zaawansowane / nowe] funkcje językowe w wolnym czasie, wolałbym nie [tracić / tracić] czasu na [ćwiczenia z kodowania]. W związku z tym chciałbym odmówić wykonania tego ćwiczenia. Jestem pewien, że moje referencje będą również mogły poświadczyć moją wiedzę techniczną i etykę pracy.

Jeśli mógłbyś odstąpić od tego wymogu i chciałbyś kontynuować proces, chciałbym porozmawiać dalej, ponieważ [ powody, dla których nie możesz się doczekać tej pozycji]. Jeśli nie, to chciałbym podziękować za poświęcony czas i życzyć wszystkiego najlepszego w obsadzeniu tego stanowiska.

Z poważaniem,

Joe Developer

W oparciu o twoje pytanie, to jest dla ciebie przełomem (tak jak prawdopodobnie byłoby dla mnie) i nie powinieneś przebierać w słowach. Wyraźnie powiedz, że nie będziesz wykonywać ćwiczenia, ale zachowaj szacunek i daj im możliwość całkowitego porzucenia ćwiczenia. Nie widzę sposobu, aby usprawiedliwić programowanie dla programisty z pięcioletnim, a co dopiero dziesięcioletnim doświadczeniem.

Zamień wyrażenia lub terminy, jak chcesz. Popełniłem błąd, zachowując szacunek tutaj. Chociaż nie robisz takiego wrażenia, gdybym czuł się zlekceważony przez ankieterów, prawdopodobnie użyłbym znacznie bardziej bezpośredniego języka.


1 - Użyj innego otwieracza, jeśli już wysłałeś podziękowanie.

Tak, to jest prawidłowa odpowiedź (i dobrze napisany list), zakładając, że OP jest skłonny przedstawić swoją rację i odejść, jeśli nie ma szans na zdobycie tego, czego chce. Inne odpowiedzi, w tym moja, opierają się na założeniu, że kontynuacja procesu rozmowy kwalifikacyjnej ma wyższy priorytet niż osiągnięcie określonego celu PO, jakim jest niewykonanie testu. Możesz potraktować moją odpowiedź jako „wyzwanie ramowe” - zakładając, że jest to do przyjęcia? To znaczy. moja odpowiedź brzmi: „Nie możesz tego zrobić bez narażania szans na zatrudnienie, jakkolwiek jest to sformułowane”.
Komentarze nie służą do rozszerzonej dyskusji; ta rozmowa została [przeniesiona do czatu] (http://chat.stackexchange.com/rooms/36816/discussion-on-answer-by-lilienthal-asked-to-complete-interview-exercise-but-ign).
Twoje założenie o ponad 5-letnim doświadczeniu w programowaniu (a nawet ponad 10) jest gwarancją, że programista jest dobry, jest naiwne. Znam wielu programistów / programistów, którzy są śmieciem, nawet jeśli mają duże doświadczenie.
@Bent Dlatego jako kierownik ds. Rekrutacji odchodzisz od CV kandydatów, listu motywacyjnego, historii pracy, referencji ** i przeprowadzasz z nimi rozmowę kwalifikacyjną **. Dobrzy pracownicy z takim doświadczeniem będą dobrymi programistami. Rzecz w tym, aby nie zatrudniać złych pracowników. Zobacz [czat] (http://chat.stackexchange.com/rooms/36816/discussion-on-answer-by-lilienthal-asked-to-complete-interview-exercise-but-ign), aby zapoznać się z poprzednią dyskusją na ten temat .
corsiKa
2016-03-08 21:01:47 UTC
view on stackexchange narkive permalink

Są trzy bardzo proste powody, dla których musisz wziąć demo.

  1. Nie wiedzą, że kod na Github jest Twój.
  2. Nie mogą porównać że kod do kodu innych kandydatów.
  3. Czasami ważniejsze niż wynik końcowy jest to, jak się tam dostać. Jakie pytania zadajesz, jak rozwiązujesz problemy itp.

Przygotowane przez nich demo ma specjalnie skonstruowaną strukturę, aby uwypuklić obszary problemowe, których chcą uniknąć, i wyznaczyć wyzwania, które według nich będą pracując na co dzień. Więc ugryź kulę i wykonaj ćwiczenie. Jeśli jesteś tak świetnym programistą, jakim się czujesz, nie będzie to żaden problem.

1.) Dość łatwe do ustalenia - czy kandydat może przeprowadzić pogłębioną rozmowę o projekcie? 2.) Ale jest ogromny niedobór inżynierów, nie ma wielu innych kandydatów. Dobrze? Dobrze?!
@JamesAdam Z wyjątkiem tego, że wymaga to od ankieterów dogłębnego zrozumienia projektu i formułowania pytań o możliwe zmiany w projekcie, nowe wymagania itp. Jest to kosztowna praca. Firma obniża koszty swojej działalności, przejmując odpowiedzialność potencjalnego kandydata, o co myślę, że nie jest zbyt wiele. To biznes i płacą za rozmowę kwalifikacyjną, nawet jeśli nie dostaniesz pracy. Myślę, że rozsądne jest poproszenie kandydata o wyrównanie części kosztów, grając w jego grę.
`1) nie wiedzą ... To. Z tego samego powodu mogę zdać certyfikat A +, nie wiedząc, jak korzystać z komputerów ... możesz utworzyć repozytorium bez znajomości programowania. Posiadanie Cert / Repo jest fajne - ale prawdziwe pytanie brzmi: ile NAPRAWDĘ wiesz i jak pracujesz? Odpowiadanie na pytania przez telefon to jedno ... praca za klawiaturą to co innego. Znam javascript ... ale nie *** WIEM *** javascript.
@corsiKa OP nie musi pobierać wersji demonstracyjnej. 4 godziny bez rekompensaty to dużo. Jeśli OP jest wystarczająco zadowolony z obecnego stanowiska, to OP może wykorzystać ten czas na inne sprawy: współmałżonek, dzieci, przyjaciele, hobby, inne możliwości zatrudnienia
@emory Oczywiście ... istnieje domniemane „Jeśli chcesz tę pracę”.
„Nie można porównać swojego kodu z innymi” jest bardzo ważnym punktem w bardziej regulowanych branżach, w których firma musi wykazać i udokumentować uczciwość.
@corsiKa Chcę milion dolarów. To nie znaczy, że gram w lotto co tydzień.
@Aron To prawda. Ale jeśli nigdy nie zagrasz w lotto, nigdy nie wygrasz w lotto. Oczywiście nie ma gwarancji, że dostanie pracę, jeśli wykona projekt, ale wygląda na to, że nie dostanie pracy, jeśli zdecyduje się nie wykonywać projektu.
AndreiROM
2016-03-08 20:58:24 UTC
view on stackexchange narkive permalink

Chociaż 4-godzinne ćwiczenie brzmi dla Ciebie jak kompletny wysiłek, spójrz na nie z punktu widzenia firmy: inwestują w zatrudnienie eksperta. Jeśli okaże się, że nie jesteś tak kompetentny, jak twierdziłeś, to właśnie zmarnowali znaczną część czasu i pieniędzy.

Repozytorium Github można sfałszować. Możesz kopiować w cudzym kodzie wszystko, co wie.

Dodatkowo, test programistyczny będzie również rejestrował, jak pisałeś kod, a nie tylko, jak kod działa po zakończeniu. Dla wielu menedżerów te informacje są kluczowe przy podejmowaniu decyzji o zatrudnieniu.

Twój własny komentarz przedstawia coś, na co menedżer zwracałby uwagę:

„Biorąc pod uwagę moje pragnienie przedstawienia siebie jako rygorystycznego, ciężko testującego inżyniera oprogramowania, wykonanie ćwiczenia zajmie mi prawdopodobnie około 6-8 godzin. Innymi słowy, aby pokazać swoją prawdziwą twarz, nie spodziewam się, że ukończę pracę w ciągu ~ 4 godzin, chyba że dam jej mniej niż 100%. "

Przykro mi to mówić, ale jeśli wykonanie 4-godzinnego ćwiczenia zajmie Ci 8 godzin, czy też ukończenie 1-tygodniowego projektu zajmie Ci 2 tygodnie? To poważna odpowiedzialność dla firmy, która może otrzymywać wynagrodzenie tylko za 1 tydzień pracy, bez względu na to, jak pozytywne masz intencje (kod wolny od błędów). Pamiętaj, że „lepsze jest wrogiem dobrego” .

Jeśli naprawdę jesteś zainteresowany tymi pracami, poświęć trochę czasu i napisz testy. Mogą być irytujące, ale to znak dla pracodawcy, że chcesz coś zainwestować w zdobycie ich zaufania, a nie tylko demonstrację swoich umiejętności.

jmac
2016-03-08 21:08:45 UTC
view on stackexchange narkive permalink

Zanim zaczniesz działać, zastanów się dokładnie.

  1. Czego naprawdę martwisz się podczas wykonywania tych ćwiczeń?
  2. Czy jesteś skłonny stracić tę pracę, jeśli będą nalegać na egzamin ?
  3. Jak silny jest Twój wpływ w tych negocjacjach?

Jakie są Twoje prawdziwe obawy związane z wykonywaniem tych ćwiczeń?

Wspomniałeś o 3 ogólnych problemach :

  1. Wykonałeś już dużo kodowania, które mogą zobaczyć i powinno wystarczyć
  2. Martwisz się, że nie dają ci wystarczająco dużo czasu na zrobienie ' właściwa praca
  3. Masz lepsze zajęcia z czasem

Są to trzy bardzo różne powody, które wskazywałyby na bardzo różne podejście do problemu z pracodawcą. Poza tym są trochę sprzeczne. Z jednej strony masz więcej czasu na spędzanie czasu, z drugiej chcesz mieć dwa razy więcej czasu na wykonanie ćwiczenia. Z jednej strony masz mnóstwo pracy i doświadczenia w tym języku, ale z drugiej strony nie jesteś pewien, czy potrafisz wykonać te ćwiczenia w wyznaczonym czasie.

Dowiedz się, co naprawdę przeszkadza o tym, jeśli masz zamiar skontaktować się w tej sprawie z potencjalnym pracodawcą. Przynajmniej wtedy możesz być szczery co do swoich obaw, a oni będą bardziej skłonni pomóc ci załatwić, jeśli będziesz w stanie jasno określić, za co chcesz zakwaterowanie.

Co jesteś gotów stracić?

Chcą, żebyś zrobił test. Nie chcesz. Jeśli dojdzie do popychania, a oni powiedzą: „To nasza droga lub autostrada” , którą wybierzesz?

Jeśli w końcu będziesz chciał pracy bardziej niż ty ” ponownie boisz się wykonać ten test kodowania, a pchanie problemu tylko postawi Cię w gorszej sytuacji.

Jeśli nie chcesz stracić pracy, ale chcesz, aby ci pomogli, być może nie powinieneś nie proś o pominięcie testu, ale raczej o to, aby sprawili, że test będzie Ci odpowiadał, jeśli w ogóle to możliwe (co jest bardzo inną rozmową).

Jeśli masz zamiar o coś poprosić, pomyśl o swojej dźwigni

Jeśli mają 100 kandydatów na to stanowisko, wszyscy z podobnymi umiejętnościami i doświadczeniem, wszyscy chętni do przystąpienia do testu, to są szanse, że bycie dziwnym człowiekiem nie będzie z nimi dobrze siedzieć.

Jeśli z drugiej strony mieli to stanowisko przez 3 lata, zbliża się termin i nie mogliby kogoś znaleźć w innym przypadku do wykonania zadania przed upływem terminu, wtedy prawdopodobnie będziesz mieć dużo większą siłę nacisku, aby coś wymyślić.

Kiedy zorientujesz się, o co tak naprawdę się martwisz, w jaki sposób bardzo chcesz do tego dążyć i jak dobry jest twój wpływ na to, możesz porozmawiać z pracodawcą. Bądź szczery i bądź przygotowany na to, że to się nie uda, jeśli nie będziesz w stanie znaleźć szczęśliwego kompromisu.

To nie powinno spalić żadnych mostów na linii, o ile okazujesz szacunek i szczerze mówiąc, czego szukasz.

Tak. Zgadzam się, że proszenie kandydata o rozwiązanie 4-godzinnego quizu jest przesadą. Ale jeśli odmówisz, istnieje prawdopodobieństwo, że nie dostaniesz pracy. Z ich punktu widzenia dojdą do wniosku, że albo (a) zawyżyłeś swoje kwalifikacje i obawiasz się, że nie zaliczysz testu; i / lub (b) nie chcesz kierować się i postępować zgodnie z polityką firmy. Możesz zaprotestować, że żądanie jest nieracjonalne, co chcesz. Może masz rację. Ale oczywiście tak nie myślą.
Lub c) Nie chcesz tej pracy i nie jesteś pasjonatem pracy w firmie.
coteyr
2016-03-09 18:17:39 UTC
view on stackexchange narkive permalink

Odpowiem jako osoba, która zatrudnia do własnej firmy. Profile GitHub to bezużyteczne narzędzie do oceny kompetencji. Brakuje OGROMNYCH elementów układanki. Najważniejsze z nich to:

  • Czy możesz podjąć problem i przekształcić go w rozwiązanie?
  • Czy możesz to zrobić w czasie, który moim zdaniem jest rozsądny? li>
  • Czy możesz pracować na warunkach i zasadach określonych przez moją firmę (i mogą nie wydawać się rozsądne w przypadku nowego pracownika)
  • Czy przetwarzasz naprawianie problemu dobrze pasuje do innych członków zespołu / procesów firmy
  • Czy potrafisz inspirować innych i pozwalać innym inspirować pomysły w sobie?

Główny problem z profil GitHub polega na tym, że bardzo trudno jest jednym rzutem oka stwierdzić, co właściwie zrobiłeś . Ponadto bardzo trudno jest powiedzieć „jak się tam dostałeś”. Widziałem programistów, którzy potrafili stworzyć cudownie wyglądający technicznie kod, który byłby absolutnie bezwartościowy, ponieważ nie mogli rozwiązać problemu i znaleźć rozwiązania.

To, co robię, poprawiając źle lub nie, to pytam kandydatów pokazać dotychczasową pracę, z wysokiego poziomu. Następnie porozmawiaj ze mną o tym, co zrobili w tym projekcie. Na przykład: „Pracowałem nad tą aplikacją, moim zadaniem było robić to i tamto”. Następnie zadaję kilka szybkich pytań w stylu rozwiązywania problemów, takich jak „Gdzie zacząłbyś szukać, gdyby nagle nie można było połączyć się z bazą danych?” I staram się wymyślić kilka, jeśli uważam, że to potrzebne, kilku prostych pytań dotyczących rozwiązania problemu, np. „Jak poradziłbyś sobie z prośbą o dodanie dużego obrazu do już pełnej strony informacji?” (To są okropne przykłady, ale rozumiesz).

Chociaż osobiście nie wierzę w „pracę domową”, repozytorium GitHub nie zastępuje „pracy domowej” ani innych dociekliwych pytań. Wszystko, co faktycznie pokazuje, to to, że możesz używać git. Ze względu na możliwość zgniatania zatwierdzeń, to nawet nie pokazuje, czy raczej możesz pisać w języku, w którym jest projekt (przynajmniej nie bez głębokiego spojrzenia).

Innymi słowy, naprawdę chcesz * komunikować się * z (potencjalnym lub nie) pracownikiem. Konto GitHub to świetny temat do zbadania * w rozmowie * (Dlaczego to zrobiłeś? Jak to zrobiłeś? Czy sam to zaprojektowałeś? „Oto przykłady mojej pracy, zatrudnij mnie teraz, kthx?”. W pewnym sensie standardowe ćwiczenie daje podobne możliwości, ale jest trochę tańsze dla ankietera.
Nie rozumiem, jak stworzyli technicznie wspaniały kod bez możliwości rozwiązania problemu. Czy ten „technicznie wspaniały kod” nie służył dosłownie żadnemu celowi? Czy to było tylko pięknie napisane „witaj świecie!”?
Wielu „programistów” może napisać kod do testów lub do niektórych metryk, ale nie może rozwiązać problemu i pracować nad znalezieniem odpowiedzi. Przykład; „Ta strona ładuje się wolno, przejdź do naprawy”. nie jest czymś, z czym mogą sobie poradzić, ale poradziliby sobie z „napisaniem klasy, która ma te właściwości i metody”.
Jozef Woods
2016-03-08 21:11:08 UTC
view on stackexchange narkive permalink

Myślę, że problemem jest tutaj różnica punktów widzenia.

  1. Mogą być w stanie zobaczyć, co zrobiłeś, ale, jak powiedział @Moo, to tylko dowód na wynik. Nie jest to coś, co mogą zweryfikować niezależnie lub łatwo.
  2. Jest to problem ze specyfikacją. Jeśli mają problem, który ich zdaniem zajmie 4 godziny, spodziewają się, że zajmie to 4 godziny. Jeśli myślisz, że to zajmie więcej, powiedz im, omów swoje rozumowanie. Oczywiście w przyszłości wyznaczą Ci terminy i będziesz musiał ich przestrzegać.
  3. To, szczerze mówiąc, nie ma znaczenia. To, o co cię proszą, nie jest uczeniem się , lecz demonstracją . Nie ma znaczenia, że ​​ma dla Ciebie niewielką wartość edukacyjną, ponieważ nie o to chodzi w tym ćwiczeniu.

Przyznaję, że 4-godzinne pytanie techniczne jest trochę długie, ale prawdopodobnie ma to coś wspólnego ze stażem roli. Wydaje się, że przegapiłeś cel ćwiczenia i szukasz wymówek, aby tego nie robić. Poszukiwanie pracy wymaga poświęcenia osobistego czasu (polowanie, rozmowy kwalifikacyjne i testy), a firmy oczekują, że będziesz w stanie je poświęcić.

Uczę się czegoś z każdego fragmentu kodu, który piszę.
Dobrze wiedzieć, ale celem każdego fragmentu kodu nie jest twoja nauka. Istnieje różnica między kodem, z którego się uczysz, a kodem do nauki. Odrzucenie podanego problemu, ponieważ woleliby uczyć się w inny sposób, jest głupie, ponieważ mija się z celem zadania.
Chodzi mi o to, że OP może nieoczekiwanie nauczyć się czegoś, czego nie nauczyłby się w normalnym toku rzeczy. To mi się przydarzyło. Nie dostałem tej pracy, ale umiejętności, których nauczyłem się w pomyślnym (IMO) jej ukończeniu, są tymi, których używałem wielokrotnie. To była tylko część języka, którego wcześniej nie ćwiczyłem.
Tyle że nie to zostało powiedziane. OP powiedział, że nie chce wykonywać ćwiczenia i wolałby zamiast tego samodzielną naukę, która zadziała, jeśli nauka byłaby głównym celem ćwiczenia. Nie było, celem było zademonstrowanie potencjalnemu pracodawcy, co potrafi, nauka byłaby dodatkowym atutem, ale możliwość nauczenia się czegoś bardziej efektywnie nie powinna być argumentem, aby nie wykonywać ćwiczenia.
meriton
2016-03-09 04:54:34 UTC
view on stackexchange narkive permalink

Pozostałe odpowiedzi już odnoszą się do tego, dlaczego pierwsze dwa argumenty nie są przekonujące, a nawet mogą postawić Cię w złym świetle. Pozostaje trzeci argument:

Szczerze mówiąc, wolałbym raczej poświęcić swój czas na kontynuowanie nauki mojego obecnego „programu” projektów pobocznych, a mianowicie bardziej zaawansowanych funkcji i OSS w języku X

Przypuszczalnie nie masz nic przeciwko wykonywaniu nudnej pracy, o ile otrzymujesz za nią wynagrodzenie?

Jeśli tak, poprosiłbym o zapłatę za ukończenie oceny. Jest to mniej ryzykowne niż zwykła odmowa oceny, która może wyglądać tak, jakbyś chciał coś ukryć, jednocześnie spełniając swój cel, jakim jest nie wykonywanie nudnej pracy za darmo, a także daje potencjalnie cenny wgląd w to, jak elastyczna lub skąpa jest firma przy zwracaniu kosztów .

To powiedziawszy, jeśli poprosisz o odszkodowanie, powinieneś wcześniej przygotować się, jak zareagujesz, jeśli nie będą otwarci. Czy chcesz się wycofać, czy odejdziesz? (Osobiście nie zrobiłbym nic więcej niż bardzo uprzejme zapytanie, ale byłbym skłonny wykonać test za darmo, jeśli nie wydają się być otwarci. W końcu lepsza praca jest prawdopodobnie warta znacznie więcej niż 4 godziny twojego czasu. To oczywiście zakłada, że ​​nie wygląda na to, że wykorzystają twoją pracę w produkcji).

Techdic
2016-03-13 05:26:37 UTC
view on stackexchange narkive permalink

Tutaj jest dyrektor techniczny dużej firmy deweloperskiej. Szczerze mówiąc, nie zatrudniłbym cię wyłącznie na podstawie tego, że musiałeś zadać to pytanie. Jestem naprawdę zaskoczony, jak duże wsparcie otrzymałeś w zakresie sugestii, aby poprosić firmę o zmodyfikowanie testu za Ciebie lub dlaczego powinieneś podać powody, dla których uważasz, że nie powinieneś go wypełniać. Dla mnie, twój oczywisty wstręt do poproszenia o zrobienie czegoś, co czujesz, jest pod tobą, jest ogromną czerwoną flagą, że raz zatrudniony zostaniesz kompletnym PITA. Jestem programistą od 15 lat i mam na tyle sukcesy, że udało mi się awansować w kilku firmach i nie widzę żadnego problemu, aby poprosić kandydata na programistę na wyższym poziomie o wykonanie 4-godzinnego testu. To ten sam test, który wystawiam. Na miejscu testy typu bzyczeć są bezużyteczne i niesprawiedliwe dla wielu kandydatów. Czterogodzinne losowe zadanie, którego nie można pobrać z sieci, mówi tak wiele o podejściu programistów do problemu - a jeszcze lepiej, odfiltrowuje te, które uważają, że testy są poniżej nich. Moja rada; zrób najlepiej jak potrafisz w teście, a następnie zapisz kilka notatek o tym, co jeszcze byś zrobił, gdybyś miał więcej czasu. Pokazywanie, że będziesz miał szansę na cokolwiek, ale posiadanie jasnego pojęcia, jak posunąć się dalej, gdyby nadarzyła się taka okazja, byłoby dla mnie bardzo pozytywnym znakiem. Częściej nie uważam, że to nie jest hardkorowy mądrzejszy od programistów, którzy okazują się najlepszymi pracownikami, to mniej pewni siebie ludzie, którzy wpadli w role programistów, czują, że mają coś do udowodnienia. Moim zdaniem, jeśli chcesz tę pracę - zrób test i zrób to dobrze. Jeśli coś jest poniżej ciebie, to naprawdę powinieneś szukać pracy dla siebie, ale będziesz musiał zrobić coś, co dobrze się opłaca, nie wymagając innych pracowników, ponieważ naprawdę trudno będzie ci zatrudnić dobrych, niezawodnych ludzi, którzy to zrobią. obrać swój kierunek, jeśli zastosujesz swoje obecne podejście do procesu rekrutacji.

Naprawdę lubię programować, aby rozwiązywać * rzeczywiste * problemy i * faktycznie * poprawiać ludzkie życie, i naprawdę nie lubię programowania * tylko * ze względu na programowanie, na przykład robienie tych testów. Kiedyś spędziłem cały dzień na bezsensownym zadaniu programistycznym (pracowałem w ich biurze) i nienawidziłem tego. Dostałem za to rekompensatę, ale to nie ma znaczenia. Po prostu zmarnowałem cały dzień. Nie jestem pewien, czy zgodziłbym się na coś takiego ponownie, zwłaszcza, że ​​pracowałem nad ponad 30 projektami open source i ponad 200 odpowiedziami Stack Overflow (niektóre dość szczegółowe). Z radością to zrobię ...
... nawiasem mówiąc, wszelkie nudne zadania, o ile ma to rzeczywiste znaczenie (i tak, obejmuje to nawet takie rzeczy, jak sprzątanie toalet, i tak, musiałem to też robić w pracy programistycznej, ponieważ czasami * ktoś * musi robić bzdury w małych firmach). Moja rada: spróbuj wykonać test, który * naprawdę * rozwiązuje problem i będzie * faktycznie * używany! ...
... Myślę, że wiele osób będzie znacznie bardziej zmotywowanych, aby dać z siebie wszystko na takim teście (ja z pewnością bym). I pozwólcie, że odwrócę to, ile godzin * chciałbyś * poświęcić, aby udowodnić, że Twoja firma jest warta kandydata, zwłaszcza jeśli masz w kolejce wielu kandydatów?
Rozumiem, że jesteś nowy. Odpowiedzi są skuteczniejsze bez puchu.
JimmyB
2016-03-10 16:58:40 UTC
view on stackexchange narkive permalink

Czy to ćwiczenie ma się odbywać w firmie, na ich oczach?

Jeśli tak, i jesteś naprawdę biegły w temacie, prawdopodobnie będziesz miał to ćwiczenie ukończone w ciągu 2 godzin z dobrą jakością .

Nie lekceważ swoich umiejętności ani nie przeceniaj złożoności takich ćwiczeń.

Często nie chcą widzieć, jakie rozwiązanie możesz opracować, ale raczej jak sobie z tym poradzisz rozwiązanie problemu. Pokazujesz, że potrafisz przeczytać i zrozumieć dokument wymagań, pokazać, że znasz swoje IDE oraz popularne narzędzia i API, pokazać, jak reagujesz na jakiś poboczny problem, na który nie znasz od razu odpowiedzi. Zrobisz to, prawdopodobnie zdasz test bez żadnego problemu.

ventsyv
2016-03-11 22:11:09 UTC
view on stackexchange narkive permalink

Nigdy nie słyszałem, aby firma wymagała od starszego programisty wykonania 4-godzinnego testu. Zwykle rozmowa kwalifikacyjna wystarczy, aby ocenić kwalifikacje kandydata. Jestem pewien, że zadali ci kilka pytań technicznych, więc poproszenie cię o zdanie testu jest stratą czasu.

Rynek, na którym jestem, jest bardzo konkurencyjny, więc gdybym był tobą, po prostu powiem ich:

„Jestem starszym programistą z 10-letnim doświadczeniem, które znajduje odzwierciedlenie w moim CV. Cieszyłem się ze spotkania z Tobą i chciałbym z Tobą dalej pracować, ale czuję, że 4-godzinny test to nadmierne obciążenie w moim czasie. Taki test nie jest wystarczająco długi, aby uzyskać coś znaczącego, czego nie omówiliśmy podczas naszego spotkania i wolę bardziej produktywnie wykorzystać swój czas. Jeśli nadal masz do mnie pytania, daj mi znać, a porozmawiamy zadzwoń lub umów się na kolejne spotkanie. ”

Oczywiście jest to ważne tylko wtedy, gdy nie masz nic przeciwko temu, by nie dostać pracy. Daj im również znać, jeśli masz inne oferty / wywiady i podkreśl, że po prostu nie masz czasu na wykonanie testu.



To pytanie i odpowiedź zostało automatycznie przetłumaczone z języka angielskiego.Oryginalna treść jest dostępna na stackexchange, za co dziękujemy za licencję cc by-sa 3.0, w ramach której jest rozpowszechniana.
Loading...