Wpis z mikrobloga

#!$%@?, mamy gościa Senior Developera w kontraktornii, który jest z Indii 15 lat expa, w oczach mojego Scrum Mastera jest najlepszy w zespole. Jednak szkodzi nam jako zespołowi zamiast pomagać w pracy... Przykład z dzisiaj.

Jak jest model bazodanowy w klasie Entity, gdzie mamy adnotacje Table, ID, Column, to on pcha ten obiekt przez całą logikę i wystawia także Restem. Prosto encje z bazy do kontrolera Restowego. Dodatkowo w tej klasie co jest odpowiedzialna za encje dodaje adnotacje w stylu JsonProperty, JsonInculde, wiecie... Te adnotacje co są odpowiedzialne za logikę tworzenia JSONa. No i wymieszane ma wszystko w jednej klasie. Taki mix naraz.
Wytłumaczyłem mu że powinien to rozdzielić, zrobić mapowanie, i trochę o Single Responsibility. Ponieważ w obiekcie co jest odpowiedzialny za reprezentację bazodanowa miesza także logikę odpowiedzialna za reprezentację API.
Gość posłuchał mnie i się rozłączył pod koniec mówiąc że ma wiele lat doświadczenia i abym uwagi zgłaszał do Managera. On ma w zwyczaju się obrażać.
A manager nie jest techniczny. Mi już po prostu brak sił i słów na użeranie się w pracy z takimi rzeczami. Chce normalnie żyć i pracować.... Macie też takie problemy jak ja? :(

#java
  • 41
  • Odpowiedz
@panArchitekt: this. Hindusi próbują się wybić ze swojej kasty poprzez IT, idzie do takiej firmy a tu cyk, menago jest z indii i jest w wyższej kaście niż on i teoretycznie ma nad nim władzę xd
  • Odpowiedz
@jaca_66: nic nie zrobisz kolego, hinudsi to nie są niestety ludzie którym coś wytłumaczysz i zaczną tak robic. Będzie kiwał głową yes yes a potem zrobi po swojemu. Jeśli jest Ci tam wygodnie i płacą kokosy i nie masz duszy to rób jak on robi. Jak masz godność to szukaj nowej pracy. Większość z nich to samouki z stackoverflow, bez pozadnych podstaw, więc niestety powielają między sobie mnóstwo bzdur
  • Odpowiedz
@jaca_66: To może mu wytłumacz czemu tak nie powinien. Że może się jakiś syf serializować, rzeczy w złym formacie, że to niebezpieczne bo na bazę może pójść jakaś #!$%@?, że mechanizmy mogą sobie wchodzić w paradę. Może potrzebuje przykładów?
  • Odpowiedz
@jaca_66: ja bym tam powiedział, że zależy. Jeżeli nie ma tam innej logiki niż wyświetlenie, robisz chamskiego CRUDa gdzie po drodze nic innego się nie dzieje, to wrzuciłbym repo do kontrolera, wszystkie adnotacje jacksona w encji i elo. Czasami 'encja na twarz i pchasz' jest dobrym podejściem. Jak zniknie pole to usuwasz w jednym miejscu, jak potrzeba dodatkowe to dodajesz w jednym i nie ma problemu z 'zapomniałem dodać w
  • Odpowiedz
@jaca_66: miałem taką samą sytuacje 6 lat temu. Nie dało się przetlumaczyc hindusom, że pchanie calej encji z bazy nie ma sensu. U nas jeszcze je...robili mnostwo joinow i obiekty na frontend leciały z kilkudziesiecioma propercjami z których polowa byla null'ami.
Po prostu wtedy zmienilem pracę, bo to jak on bedzie robil shit nie bylo zalezne ode mnie, a zmiana pracy już tak.
  • Odpowiedz
A ja ostatnio tak robiłem, kwestia podejscia: albo smieci w encjach (JsonProperty) albo DTOsy + mapper.

W sytuacji gdy praktycznie mialem 0 logiki (czyli CRUD) to przynajmniej jak dodam pole to nie musze zmieniac w 2/3 miejscach. Co szczegolnie przydatne jest na poczatku rozwoju.

@ZasilaczKomputerowy: > bo na bazę może pójść jakaś #!$%@?,
Od tego jest JSR-303 Bean
  • Odpowiedz
@powaznyczlowiek: nie chce mi się wołać wszystkich ale jutro z 3 devami z zespołu oprócz tego gościa idziemy do managera opowiedzieć o tym mergowaniu do mastera bez zgody/obrażaniu się/nie słuchaniu uwag, robieniu freestyle programmingu do naszego repo. na szczęście ta inicjatywa nie wynikła tylko z mojej strony ale całego zespołu. Bear with me, jak zwykle poinformuję na mirko bo widzę że moja osoba i moje przygody to już dla niektórych
  • Odpowiedz
opowiedzieć o tym mergowaniu do mastera bez zgody/


@jaca_66: Jak można mergować bez zgody? Nie macie żadnego procesu code review i wymagalnej min. liczby osób wymaganych do approve kodu? xd

jaki wkładałem w naiwne bawienie się w "skauta" próbując uczynić to miejsce lepszym niż je zastałem.


@PaaD: Przechodzę obecnie przez podobną frustrację. Próbuję ogarnąć zespół, w którym nie mamy leada, ale jesteśmy już w 5 osób i potrzeba
  • Odpowiedz
Jak można mergować bez zgody? Nie macie żadnego procesu code review i wymagalnej min. liczby osób wymaganych do approve kodu? xd


@XpedobearX: Ustalilismy to ale on ma w to gdzieś, dzisiaj gadaliśmy że pasuje zablokować mergowanie bez dwóch zgód, ale musi to zrobić admin repo, a repo zakładał nam ktoś z supportu sam nie wiem, trzeba będzie ticketa na to zrobić, ale z kolei można się wkopać jak wszyscy na
  • Odpowiedz
dzisiaj gadaliśmy że pasuje zablokować mergowanie bez dwóch zgód

@jaca_66: No dokładnie tak powinno to działać.

a trzeba zrobić hotfixa

Panie, na hotfixy to powinno być jeszcze więcej rąk niż na zwykle PRy. Poza tym jak macie tak maly zespol i kompletnie nikt w firmie nie kuma waszych technologii to nie powinno sie doprowadzac do takich planow urlopowych.
  • Odpowiedz
@jaca_66: sens bawienia się w takie rzeczy zależy mocno od kultury firmy i osób zarządzających. Poza pójściem do managera polecałbym też spisać Wasze obawy i przesłać je oficjalnym kanałem jako "podsumowanie spotkania", w którym w punktach będą wszystkie kontrowersyjne kwestie (wystarczy hasłowo, byle jednoznacznie). Jeśli sprawa zostanie przez managment potraktowana po macoszemu albo odbije się na zgłaszających czkawką to polecałbym czym prędzej szukać innego miejsca, szkoda czasu na takie toksyczne
  • Odpowiedz
dzisiaj gadaliśmy że pasuje zablokować mergowanie bez dwóch zgód


@jaca_66: jak chłop ma gadane to nawinie makaron managerowi i jeszcze dostaniecie zjebę, że spowalniacie projekt xd Jak nie macie leada, który jest wyżej w hierarchii i ma zielone światło do odrzucania takich PR to marne szanse wygrać z takimi osobami
  • Odpowiedz