Poproszenie osoby poszukującej pracy o pokazanie kodu jest dość powszechną praktyką w firmie produkującej oprogramowanie. Czy jednak byłoby dopuszczalne, aby kandydat poprosił ankietera o pokazanie mu małego fragmentu kodu, który według niego jest dobrze napisany?
interview
code-sample
Simon Bergot
źródło
źródło
Odpowiedzi:
Zawsze proszę o wyświetlenie kodu z kilku powodów:
A potem jest jeszcze kilka efektów ubocznych:
Firmy, które zgadzają się pokazywać ci kod, z oczywistych powodów raczej nie wyślą mi tarballa plików źródłowych zawierających najnowszą wersję całej bazy kodu. Jeśli pokażą mi jakiś kod, zrobią to w formie małej demonstracji, co jest świetne: oznacza to, że mogę porozmawiać z jednym z moich potencjalnych partnerów, pozwala mi zadawać więcej pytań na temat ich kultury kodowania, procesów, i baza kodów, a idealnie pomoże rozpocząć profesjonalną dyskusję, w której mogę zarówno wykazać umiejętności i wiedzę, jak i dowiedzieć się więcej o środowisku pracy. Oznacza to również, że mogę przyjrzeć się używanym przez nich narzędziom, co również jest dość wnikliwe - na przykład jeśli projekt, który mi pokazują, opiera się w dużej mierze na konkretnym środowisku IDE, oznacza to, że wszyscy używają tego, co może być dobre lub złe. I w końcu,
źródło
Przypuszczam, że mieści się w całej mantrze „wywiady są dwukierunkowe”, ale nie spodziewałbym się, że ją otrzymam. Obawy dotyczące własności intelektualnej są najbardziej oczywistym problemem po tym, że nie ma komputera w pokoju przesłuchań, a doprowadzenie cię do jednego z nich jest dość niewygodne.
Co więcej, po prostu wybiorą najlepiej wyglądający, najmniej znaczący kod, jaki mogą. Najlepszy kod nie jest tak naprawdę problemem, najgorszy jest. Z tego samego powodu pobieranie próbek kodu od kandydatów jest prawie bezużyteczne.
źródło
Możesz zapytać o co tylko chcesz, ale:
Prawdopodobnie nie dostaniesz tego.
Jeśli go dostaniesz, nie powie ci nic pożytecznego. Jeśli 10% ich kodu jest piękne, a reszta to spaghetti, nadal będziesz mieć do czynienia głównie ze spaghetti.
Będziesz wyglądać jak smarty spodnie. To nie jest wielka pomoc, jeśli ostatecznie zdecydujesz, że chcesz tam pracować.
To strata cennego czasu na rozmowę kwalifikacyjną.
Są lepsze sposoby, aby dowiedzieć się, co chcesz wiedzieć. Zadaj pytania takie jak:
źródło
Cóż, to zależy. Zawsze lubiłem wiedzieć, gdzie idę do pracy.
Widzę rozmowę o pracę jako dwukierunkową. Firma dowiaduje się o tobie, a ty dowiadujesz się o firmie. Pytanie o kod może być trochę za dużo, ale zadawanie pytań związanych z programowaniem powinno być OK.
Na przykład nie zaakceptowałbym pracy, w której firma nie stosuje zwinnych technik lub TDD lub nie planuje przyjąć i zachęcać do takich praktyk. Doceniam również to, kiedy firma jest dumna ze swojego produktu i kodu - kiedy wydaje się, że ankieter czeka, aż poprosisz o obejrzenie go, więc ma pretekst, aby wyjaśnić wszystkie fajne rzeczy, które robią.
źródło
Haha, to zabawne pytanie. Nie obraziłbym się, gdyby ktoś poprosił mnie o próbkę kodu podczas wywiadu, ale prawdopodobnie też nie pokazałbym im żadnego kodu, chyba że poprosi o to z wyprzedzeniem, a ja będę miał czas na dokładne zaplanowanie.
Zdecydowanie rozumiem jednak zamiar zadawania takiego pytania. Jako osoba poszukująca pracy wcześniej poprosiłam Test Joela o przeprowadzenie wywiadu. Nie wiedzieli, co to jest, ale chętnie odpowiedzieli.
W niektórych miejscach zadawanie tego typu pytań może zwiększyć twoje szanse, a może zaszkodzić twoim szansom w innych miejscach. Piękno życia polega na tym, że jeśli zwiększy to twoje szanse, to jest to miejsce, w którym chciałbyś pracować. Jeśli to obniża twoje szanse, to i tak nie chciałbyś tej pracy.
Nie widzę nic do stracenia, grzecznie pytając i będąc w stanie wyjaśnić, dlaczego chcesz to zobaczyć.
źródło
Zadałem to pytanie podczas moich dwóch wywiadów, w których twierdzili, że mają starszych deweloperów migrujących do asp.net mvc3 lub 4, lub gdy powiedzieli, że chcą mocno skomentowanego kodu. Za każdym razem odrzuciłem z powodu braku wiedzy na temat standardu kodu. Jedyny standard, jaki znalazłem, to to, czy działa kopiowanie i wklejanie go i będzie działać. Nie zadam tego pytania, jeśli robię nowy projekt lub muszę napisać fragment kodu niezależny od innych członków zespołu. Na pewno zobaczę kod, jeśli jestem zatrudniony do naprawy istniejącego oprogramowania lub funkcji i nie powiem tak, chyba że znam odpowiedź. Załóżmy, że nie pytasz, a oni mówią, czy możesz naprawić datepicker, aby rozpocząć od dzisiejszej daty. Kiedy patrzysz na starszy kod, nie widzisz jquery ani interfejsu użytkownika jquery, ale niestandardowy selektor dat, który ma wszystkie daty zapisane w pliku xml i co noc uruchamia się zadanie crona, aby zaktualizować w nim przyszłe miesiące. To spowodowałoby ból głowy, ponieważ kod do osiągnięcia tego jest mniejszy niż słowa w tym przykładzie. Jeśli masz zamiar popracować nad ich kodem, poproś o jego zobaczenie. Nie pytać jest jak cytowanie pracy z przekonaniem, że klient powiedział, że jest mała. Może posiadać 20 akrów ziemi, a ogrodnictwo na 1 akrze jest dla niego małe, ale ogrodnik nie może zapłacić 50 funtów tylko dlatego, że wszystkie jego małe prace zaczynają się od 50.
źródło
Zwykle pracuję dla firm, w których przynajmniej część ich pracy ma charakter open source, więc znalezienie próbek kodu jest banalne. Zastanawiam się, kto pracuje w firmie, a potem ustalam ich uchwyty online. Ponieważ ludzie używają tej samej nazwy ekranowej w kółko, łatwo jest znaleźć miejsce, w którym popełnili kod, bez względu na to, czy korzystali z Github, Bitbucket, czy gdzie indziej całkowicie.
Moja obecna firma ma mnóstwo kodu hostowanego na Github, więc łatwo było zobaczyć, z czym pracują, jak duża jest ich baza kodu i co wydaje się już nie być interesujące.
Nigdy nie prosiłbym o próbkę, po prostu dlatego, że pokażą ci najlepszy kod, jaki mają. To nie jest kod, z którym będziesz pracować. Prawdopodobnie mieści się w słoiku z dzwonkiem w zamkniętym pokoju. Będziesz pracował z niechlujnym kodem, z którym wiele osób musiało się bawić.
źródło
To jest niesamowite, jeśli możesz to zdobyć. Czasami nie jest to możliwe bez umów typu NDA, ale zawsze warto spróbować. Aby zwiększyć swoje szanse, poinformuj ankieterów, że chcesz to zrobić z dużym wyprzedzeniem (kilka dni), aby mogli mieć coś do powiedzenia.
źródło