Dla tych którzy śledzili mój ostatni wpis -> http://4programmers.net/Mikroblogi/View/3311#entry-3311 dzisiaj część druga!
Po opisywanej wcześniej rozmowie udało mi się jednak zakwalifikować do kolejnego "etapu", którym było napisanie programu rozwiązującego zadany problem. Problem sam w sobie był raczej banalny (parsowanie określonego formatu wejściowego plus odpowiednio zmodyfikowany algorytm Dijkstry), ale w wytycznych było zaznaczone żeby wziąć pod uwagę kwestie związane z utrzymaniem i jakością kodu. Co prawda zadanie było algorytmiczne, coś jak ze SPOJa (z tą różnicą że miało raportować błędy w danych wejściowych w dość dokładny sposób), ale uznałem że skoro jest trywialnie proste i podkreślili żeby brać pod uwagę aspekty jakościowe to warto napisać to elegancko. Tak też uczyniłem, dzieląc wszystko na ładne, małe klasy i wydzielając odpowiednie interfejsy. Same obliczenia zajmowały oczywiście raptem kilka dość jasnych i trywialnych linijek, częściowo dzięki Javie 8, częściowo dzięki sensownie wydzielonych klasach.
Dzisiaj dostałem feedback i wg. programistów którzy robili code review mojego rozwiązania, co prawda działa ono całkiem poprawnie, ale mieli zastrzeżenia co do "jakości":
W kodzie brakowało komentarzy
. Przyznaje się - wolę spędzić 10 minut na sensownym nazywaniu metody, jej parametrów, nazw zmiennych i nazw klas, dzieląc na mniejsze kawałki jeśli potrzeba, zamiast wstawić w kodzie komentarz. Jak widać dla niektórych jest to błędne podejście :(Napisałem zbyt skomplikowany kod, robiąc masę pakietów i klas, a przecież można było to całe zadanie stuknąć w main
. Jak widać mamy rozbieżne pojęcie "skomplikowanego" i "prostego" kodu, a także jak pisze się kod z myślą o jego późniejszym "utrzymaniu" (co było zaznaczone nawet w treści zadania!).Niestety w związku z powyższym nie są zainteresowani moją kandydaturą, bo oni bardzo dbają o jakość swojego kodu
. Wspomnę tylko, bo w ostatnim wpisie im tego oszczędziłem, że jest to firma która:
#interview #wtf #humor #praca #code-quality
@Shalom: Czy to była firma z muzyką w nazwie? Bo wszystko brzmi tak jakby znajomo... Choć prawda jest taka, że takich firm pewnie jest multum (ale na zachodzie przy takich kosztach pracy to działa...?)...