Szukam pracy i aplikowałem na wiele stanowisk. Odpowiedział jeden pracodawca. Miałem dość długi wywiad telefoniczny (być może ponad godzinę), a następnie przygotowali mnie do testu programisty. Powiedziano mi, że szacuje się, że test potrwa od 6 do 8 godzin i że pod warunkiem, że wyniki zostaną zatwierdzone, otrzymam wynagrodzenie za moją pracę.
Dało mi to chwilę przerwy, ale starałem się. Test programisty odbył się na maszynie wirtualnej dostępnej za pośrednictwem RDP . Zadanie polegało na zaimplementowaniu strony wyszukiwania w projekcie internetowym, który żąda danych z serwera, wyświetla je na ekranie w tabeli, ma dość skomplikowany schemat filtrowania wyszukiwania (istnieje około 15 statusów i przy wysyłaniu wyszukiwania na serwer ty może wyszukiwać według tych statusów) oprócz wyszukiwania według ciągu / pola. Ponadto chcą, aby ikony SVG zmieniały kolor niektórych wartości danych, a niektóre dane reprezentowały inaczej niż ich struktura w bazie danych.
Krótko mówiąc, zajęło to dużo więcej niż 6-8 godzin. W dużej mierze było to spowodowane bardzo słabą maszyną wirtualną, na której działałem (Visual Studio 2013 załadowało 10 minut, a kolejne 15 minut otworzyło gigantyczne rozwiązanie o pojemności 3 GB).
Powiedziano mi, że po zakończeniu testu powinienem zatwierdzić zmiany w kontroli źródła ... Hmm, OK. Postępowałem zgodnie ze wskazówkami. Po zatwierdzeniu zmian otrzymałem wiadomość e-mail z odpowiedzią. Pliki SVG nie były odpowiednio zabarwione, w tym przypadku był błąd, czasami pojawiał się problem z tą inną rzeczą, której nigdy nie doświadczyłem itp. Więc mam teraz 13-14 godzin na to i muszę robić poprawki błędów. Robię je, a pracodawca wraca z kolejnymi żądaniami naprawy błędów.
Najwyraźniej cała moja praca dotyczy aplikacji produkcyjnej. Zauważyłem kilka anomalii w kodzie, w których wyglądało to tak, jakby inne kodowały wszystkie funkcje, ale niczego nie dotknęły.
Czy jestem po prostu wykorzystywany do taniej siły roboczej? Nawet jeśli zapłacą mi obiecane 50 dolarów za godzinę przez 6 godzin, poświęciłem na to teraz około 18 godzin. Jeśli naprawię błędy, które ciągle wymyślają, będę pracował co najmniej 16 godzin za darmo.
Podjąłem szereg testów programistycznych, ale nigdy nie wziąłem takiego, w którym pracowałem nad kodem przeznaczonym do produkcji. Nigdy nie podjąłem testu, w którym wdrożyłem funkcję, która była w przygotowaniu, i nigdy nie wziąłem takiej, która zajęła 4 rundy i łącznie ponad 20 godzin. Mam wrażenie, że używają testu programisty, by wypróbować niektóre funkcje na taniej.
Czy mam złe wrażenie? Czy ten protokół testowania jest odpowiedni?