Wpis z mikrobloga

Też tak macie, że zastanawiacie się jakim cudem wbiliście w firmie seniora, a gdy ktoś reviewuje kod to zwraca wam uwagę na takie rzeczy, że macie ochotę zapaść się pod ziemię? Albo, że mieliście farta bo akurat to czego dotyczyło review akurat nie było na rekrutacji i na tym review wyszły elementarne braki?

Ja rozumiem, że senior to już jednym palcem wchodzi bardziej w procesy biznesowe (chociaż dalej obraz seniora w głowie mam jako guru znającego na wylot narzędzia i techniki które wykorzystuje aby rozwiązać problem), ale patrząc na to gdzie musiałem dzisiaj grzebać i co mi zostało wytknięte to mam ochotę zapaść się pod ziemię bo w głowie tworzę sobie od razu scenariusz co by było jakbym rekrutował się do Allegro albo jakiejś innej firmy gdzie jest ostra orka, a potem co najwyżej na start jak się uda fartem to zostaniesz przyjęty jako junior.

Na szczęście gość, który robił mi to review okazał się być na tyle w porządku, że wytłumaczył co robię nie tak i podesłał próbki z pokazem jak to powinno być wykonane. Ale tutaj znowu - w głowie tworzy mi się obraz takiego osobnika, co najpierw #!$%@? cię od stóp do głów, a potem EWENTUALNIE (jeśli nie przeżyjesz załamania nerwowego, w skrajnym przypadku nawet próby samobójczej lub zasiania w głowie poczucia, że powinieneś zmienić zawód) wytłumaczy.

#programista15k #programowanie
  • 32
@matwes: ja mam wrażenie, że seniora dostaje się za dupogodziny, a nie za umiejętności, a tym bardziej nie za umiejętności programistyczne. Ja mam w pracy seniora z 10-letnim expem, który potrafi pisać metody-tasiemce na 200 linijek kodu i zdarza mu się commitować niesformatowany kod. O czymś takim jak niemutowalne obiekty to chyba nawet nie słyszał. Z drugiej strony dupogodziny robią swoje i ktoś taki, dzięki swojemu doświadczeniu, wie jak się odnaleźć
@Icouldbeyourmom: naprawiałem unit test, który się sypał od czasu do czasu - testował coś wykonywanego wielowątkowo, oczekując, że w konkretnym momencie coś się wysypie. Szczerze mówiąc w concurrency w Javie mam niewielkie doświadczenie i to właśnie to review pokazało.

@ly000 no właśnie mam wrażenie, że tego seniora dostałem za ogarnianie tego jak co mniej więcej działa na dość sprawnym poziomie i zauważanie potencjalnych zagrożeń gdzie coś może się wysypać pod pewnymi
@matwes zdradzę ci maly sekret, jakość kodu w programowaniu jest najmniej ważna. Jeśli masz dobrze zaprojektowana architekturę, separację odpowiedzialności, ogarnięte bazy danych i zależności. I co najważniejsze testy integracyjne to możesz na środku nasrać 1000 zagnieżdżonych ifow a całość nadal będzie dobrze zrobionym softem bo każdy bez strachu będzie mógł dopisać kolejne 5 zagnieżdżeń a biznes będzie się kręcił. kodu nie piszemy żeby się do niego pucować tylko żeby zarabiał ( spełniał
@czechu: dobra architektura, separacja odpowiedzialności, testy to są właśnie składniki jakości kodu.

bo każdy bez strachu będzie mógł dopisać kolejne 5 zagnieżdżeń


Nie, jeśli nie zrozumie co istniejący kod robił. Czytelność i prostota kodu to też ważna rzecz. Mieliśmy takiego jednego seniora co pisał w tak zagmatwany sposób, że czasami można było kilka dni stracić tylko na to aby zrozumieć w ogóle co jest czym i jak działa. W końcu za
@czechu: już chciałem się zgodzić, ale jednak nie.
Pisanie metrowych funkcji np. te 1000 if-ow oznacza, że kolejny człowiek będzie się przebijał przez gąszcz, któremu nikt nie poświęcił linijki komentarza. Albo funkcja/metoda mieści się na ekranie albo ktoś potem (autor również) będzie miał hemoroidy.
@matwes: Tak, każdemu może się debilstwo przydarzyć, ja jestem wyrozumiały jak to jest rzadko. I sam głupoty potrafie czasem zrobić i też mi wstyd wtedy mocno. Każdy też jest zafixowany na innych rzeczach w kodzie i bedzie na te rzeczy zwracał wieksza uwagę. Jak ci zwracają uwagę na spokojnie to tylko sie cieszyć, bo skillujesz, byle nie zwracali uwagi ponownie na to samo.
Niestety jak ktoś robi ciagle głupoty to jego
@matwes: mam podobnie. Niby 5lat expa i coś tam czytam ciągle, solidy wzorce itp, a przychodzą ogarnięte studenciaki i po roku mnie poprawiają...
Z jednej strony bardziej rozumie problemy biznesowo i bazodanowo czego oni przez kilka lat jeszcze nie pojma, ale technicznie od strony kodu mnie niszczą wiedzą...
@obieq: no właśnie tak sobie teraz myślę, że jakbym chciał zmienić firmę, a nawet projekt to musiałbym nieźle przeorać materiały i sobie poprzypominać rzeczy, aby przejść przez sito techniczne. A wiadomo - jeśli tytułują kogoś seniorem to znaczy, że spodziewamy się wymiatacza.
@matwes:
pracuje 13 lat, jestem seniorem i tak - zdarzają się dni, że daje ciała w prostych rzeczach.
Czasami mam przeczucie, że czegoś brakuje, coś trzeba dorobić i wtedy próbuje co najmniej kilka razy sam poszukać, bo z takim stażem głupio zawracać innym głowę, a jak się uda samemu to jednak jest satysfakcja. Bywa jednak, że nie znajduje odpowiedzi albo nie jestem pewny to wtedy nie wrzucam PR w ciemno, tylko
Zazwyczaj degraduje się takie osoby


@zibizz1: w jakich firmach pracowałeś, że masz takie doświadczenia? W większości firm w jakich byłem wszyscy mieli na to #!$%@?. Jak już się dostałeś na jakieś stanowisko to na nim zostawałeś i nikt cię nie ruszy. Bo zresztą po co. Taka osoba nie zacznie pracować przez to lepiej, więc rozchodzi się tylko o wysokość pensji. W większości przypadków i tak za ten czas płaci klient albo
ile zarabiasz


@sotilas: nie lubię odpowiadać na to pytanie. Zresztą, to jest Wykop, tutaj co byś napisał to zawsze znajdzie się ktoś, kto wyśmieje i będzie gadał, że za mało bo zarabia 2137 dinarów kuwejckich na godzinę. Zarabiam może i mało jak na wykopowe standardy, ale wystarcza mi z nawiązką ( ͡° ͜ʖ ͡°)

co konkretnie było nie tak?

@sotilas: pisałem trochę wyżej odpowiadając wcześniej komuś.
@matwes: chłopie masz impostor syndrome - w poprzedniej firmie nie klepaliśmy praktycznie w ogóle kodu wielowątkowego ( zwykly spring boot) i podejrzewam że większość z devow miałaby problem z napisaniem kodu wielowątkowego mimo że byli spoko developerami.

A kto nie napisał nietestowalnego gówna niech pierwszy rzuci kamieniem xD

Znasz pewnie więcej innych rzeczy, procesy biznesowe, jak gadać z klientem - w IT jest tyle tematów że nie da się znac wszystkiego