Niedawno miałem wywiad telefoniczny z firmą. Po tym wywiadzie telefonicznym powiedziano mi, aby ukończyć krótkie zadanie programistyczne (mały program; nie powinno to zająć więcej niż trzy godziny).
Postępowałbym ostrożnie. Oceń trafność wyzwania dla pracy i upewnij się, że w przyszłości zwrot kosztów od pracodawcy sprawi, że 3 godziny twojego czasu będą warte zachodu.
Kwestionuję wartość tego rodzaju testów i wolę oceniać kogoś na podstawie jego przeszłych osiągnięć. Predefiniowane krótkie zadanie nie może powiedzieć pracodawcy niczego o tym, co możesz zrobić. Tylko to, czego nie możesz zrobić, a to można szybko ustalić za pomocą kilku pytań przez telefon.
Testowanie ma swoje miejsce. Zadaj sobie następujące pytania dotyczące testu i odpowiednio odpowiedz.
- Czy biorąc pod uwagę aktualny poziom kariery, testy są uczciwe?
- Czy test ma jasno określoną poprawną odpowiedź?
- Czy osoba przeprowadzająca wywiad interesuje się twoim potencjałem jako osoby, czy też wykazuje większe zainteresowanie wynikami testu (tj. Agencje zatrudniające są do tego straszne).
- Czy test reprezentuje rodzaj pracy, którą lubisz wykonywać, czy też jest to niejednoznaczna weryfikacja umiejętności (tj. Test, jeśli znasz składnię Java).
Jestem tylko bezpośrednio instruowany, aby wykonać zadanie i przekazać kod.
Właśnie odpowiedziałeś na swoje pytanie.
Natychmiast planowałem rzucić go na Github, napisać dla niego pakiet testowy, używając Travis-CI (darmowa ciągła integracja dla publicznych repozytoriów Github) do uruchomienia zestawów testowych i używając CMake do zbudowania plików makefile dla Travis-CI.
Nie, nie o to prosili.
W ten sposób nie tylko mogę wykazać, że rozumiem, jak korzystać z Git, CMake, Travis-CI i jak pisać testy, ale mogę również po prostu link do strony Travis-CI, aby mogli zobaczyć wyniki testów. Pomyślałem, że to sprawi, że będzie to nieco wygodniejsze dla ankietera.
Ostrożnie wykazywałbym umiejętności zbyt wcześnie lub za późno w trakcie rozmowy kwalifikacyjnej. Jeśli uważasz, że nie poradziłeś sobie dobrze podczas rozmowy, a teraz próbujesz to zrekompensować, to nie zadziała. Z drugiej strony robienie zbyt wiele, gdy się o to nie pyta, demonstruje nadmierną chęć. Może to spowodować, że pracodawca skontaktuje się z ofertą niższego wynagrodzenia, niż się spodziewałeś.
Martwię się jednak trochę, że wykonanie tego wszystkiego dla stosunkowo prostego zadania wyglądałoby źle.
Tak, wygląda źle. Rozwiązanie ich problemu za pomocą jednego wiersza kodu będzie znacznie bardziej imponujące niż pełny projekt.
Z mojego doświadczenia wynika, że nie tak wygrywasz rozmowę o pracę, ale jest to jeden ze sposobów na utratę pracy. Test kodu jest kwestią kontroli jakości. Robi to każda firma, która korzysta z testów kodu podczas zatrudniania ludzi, ponieważ wcześniej nie korzystali z testów kodu. Mieli złe doświadczenia, że ktoś prześlizguje się przez pęknięcia procesu wywiadu, co nie powinno mieć miejsca.
Zabiorą kod źródłowy i przekażą go w biurze. Ludzie skomentują to, a ty nie chcesz, żeby powiedzieli: „Popełnił ten błąd? Spędzał czas, używając Git, CMake i Travis-CI. Co za idiota, który nie zauważył tego błędu”.
to jest to! Straciłeś.
Chcą wiedzieć, że umiesz kodować, ponieważ nie mogą cię tego nauczyć. Git, CMake i Travis-CI można łatwo nauczyć.