Praca i rozwój po przebranżowieniu

0

Cześć

Co zrobić jeśli nie jestem w stanie rozwiązać taska lub znaleźć źródła buga a seniorzy są zawaleni robotą?

Jakie powinienem mieć nastawienie i postrzeganie jeśli takie sytuacje się zdarzają, pracuję dużo na bardzo starym kodzie, wiecznie trzaskam nadgodziny i mało z tego wynika, stawkę mam tak niską, że zaraz skończą mi się oszczędności a jednak chciałbym zrobić jeszcze kilka miesięcy w tym piekle?

Czasem wydaje mi się, że jestem za słaby a czasami mam wrażenie, że jestem w cyrku.

Aktualnie przygotowuję się do zmiany pracy, dokształcam się po godzinach, ale pewnie jeszcze z pół roku mi to zajmie, chciałbym wyciągnąć mimo wszystko jak najwięcej. Nie wiem jak mam podchodzić do tej pracy i co jeszcze mogę zrobić, by to jakoś szło, czasem uda się zrobić coś bez problemu, zazwyczaj nie mam problemu ze znalezieniem buga, czasem jest trudno. Myślę, że osoby, które przydzielają taski (chyba SM) nie mają za bardzo pojęcia o IT i nie poziomują zadań, co mają to wrzucają stażystom. To tak powinno wyglądać?

SM denerwuje, zdecydowana większość pracy w firmie to bugi. Gdybym nie stracił prawie całych oszczędności na przebranżowienie + pracę tutaj, to by mnie już chyba nie było :D

Jak wyglądała Wasza pierwsza praca?

0

A z czym konkretnie masz problem? W jaki sposób podchodzisz do rozwiązywania problemów? Czy projekt jest udokumentowany i ma testy automatyczne?

Jakie powinienem mieć nastawienie?

Nastawienie powinieneś mieć "can do attitude" czyli, że rozwiążesz problem nawet jeśli nie wiesz jak, bo się dowiesz. W razie problemów, pytasz innych, czytasz dokumentację, szukasz w necie, piszesz testy.

Jak wyglądała Wasza pierwsza praca?

Robiłem stronki w php i html na umowie o dzieło w liceum po lekcjach za pareset złotych.

0

W pierwszej pracy zdarzały się jakiejś blokery ale ogólnie nie miałem większych problemów z zadaniami. Albo to firma jest typowym Januszem i trafiłeś na jakiś totalny bajzel (duże prawdopodobieństwo) albo z braku podstaw (matma, algorytmy, sieci, systemy) możesz wykładać się na bardziej abstrakcyjnych tematach przez co nawet jak zmienisz firmę to dalej będziesz miał z tym problem. To jedynie wskazówka, która zwróci się z nawiązką. W wolnym czasie nawet jak będziesz sobie coś kodował zainteresuj się matematyką czy ogólnymi podstawami z IT jak sieci komputerowe czy algorytmy. Taką radę zawsze daje tym początkującym bo co z tego, że będziesz potrafił coś napisać skoro trafisz na trudniejszy problem w swojej karierze i nie będziesz wiedział od czego zacząć. Tutaj właśnie chodzi o odpowiedni sposób myślenia, dostrzeganie tych szczegółów. To nie będzie łatwa droga ale dzięki temu dużo szybciej zaczniesz rozumieć określone tematy bo zauważysz pewne powiązania. To tyle jeśli chodzi o początkowy rozwój w IT.

2

Regularnie komunikować o swoim progresie / problemach. Mówić o tym głośno na retro, że masz problem, którego nie możesz przeskoczyć. W zależności od priorytetów, ogarnięty SM powinien pociągnąć temat tak, żebyś dostał wsparcie w tym tasku, bo finalnie i tak dowozicie jako team a nie jednostka.

Wyceniacie jakoś taski? Możesz też być tak, że zwyczajnie dostałeś na klatę taska, którego junior (przynajmniej sam) nie powinien tykać.

Kluczem jest komunikacja. Zwlekanie jest na Twoją niekorzyść.

PS. Nauka matematyki nie sprawi, że ktoś będzie lepiej programował. No chyba, że mówimy o jakimś ML / statystyce, gdzie jest to mocno powiązane. OP prawdopodobnie klepie crudy.

3
xeyo95 napisał(a):

wiecznie trzaskam nadgodziny

Klasyczne pytanie - czy te nadgodziny są płatne, czy dajesz się rolować na kasę pracując za darmo?

Gdybym nie stracił prawie całych oszczędności na przebranżowienie

Przestroga dla innych - nie wydawajcie zbyt wiele hajsu na przebranżowienie (chociaż też nie wiem, co masz na myśli. Bo jeśli to była sytuacja typu rzucam pracę i dzięki temu będę mieć czas i będę mógł całe dnie uczyć się programowania wydając powoli swoje wszystkie oszczędności - to taka postawa jest sensowna. Wymiana kasy na czas. Gorzej jeśli dałeś się nabrać na reklamy garnków bootcampów i utopiłeś grube tysiące kupując coś, co ci w ogóle nie było potrzebne)

ale pewnie jeszcze z pół roku mi to zajmie,

Możliwe, ale CV już teraz bym wysyłał i chodził na rozmowy. Jeśli nazywasz swoją pracę "piekłem" i jednocześnie masz tak niską stawkę, że zaraz skończą ci się oszczędności, to znak, że potrzebna ci inna praca.

SM denerwuje, zdecydowana większość pracy w firmie to bugi.

Obstawiam, że testów albo nie ma albo jest ich mało?

O ile nie każda apka bez testów ma bugi (bo może być dobrze otestowana ręcznie), to jednak jeśli większość pracy to bugi, to obstawiam, że przyczyną właśnie jest słabe otestowanie (zapewne też kod spaghetti, ale z tym już będzie ciężko coś zrobić na tym etapie).

To co możesz zrobić, to właśnie pisać te testy. Wykryty zostanie bug, to piszesz failujący test, potem fiksujesz buga i test przechodzi. I przynajmniej ten bug się więcej nie pojawi znowu.

zazwyczaj nie mam problemu ze znalezieniem buga, czasem jest trudno.

Możesz też pisać testy do już istniejących modułów w aplikacji, żeby zobaczyć, czy poprawnie działają. Wtedy łatwiej ci będzie znaleźć buga, bo będziesz wiedział przynajmniej gdzie nie szukać, co działa poprawnie.

0
xeyo95 napisał(a):

Cześć

Co zrobić jeśli nie jestem w stanie rozwiązać taska lub znaleźć źródła buga a seniorzy są zawaleni robotą?

Brute force zawsze działa. Czy to na kodzie czy na seniorach.

Jakie powinienem mieć nastawienie i postrzeganie jeśli takie sytuacje się zdarzają, pracuję dużo na bardzo starym kodzie, wiecznie trzaskam nadgodziny i mało z tego wynika, stawkę mam tak niską, że zaraz skończą mi się oszczędności a jednak chciałbym zrobić jeszcze kilka miesięcy w tym piekle?

Czasem wydaje mi się, że jestem za słaby a czasami mam wrażenie, że jestem w cyrku.

Pomyśl o tych którzy na występ do słabego cyrku kupują bilety.

Aktualnie przygotowuję się do zmiany pracy, dokształcam się po godzinach, ale pewnie jeszcze z pół roku mi to zajmie, chciałbym wyciągnąć mimo wszystko jak najwięcej. Nie wiem jak mam podchodzić do tej pracy i co jeszcze mogę zrobić, by to jakoś szło, czasem uda się zrobić coś bez problemu, zazwyczaj nie mam problemu ze znalezieniem buga, czasem jest trudno. Myślę, że osoby, które przydzielają taski (chyba SM) nie mają za bardzo pojęcia o IT i nie poziomują zadań, co mają to wrzucają stażystom. To tak powinno wyglądać?

Dowcip mi się przypomniał:
Młody nauczyciel i stary idą razem na lekcję. Młody - stosy kserówek, teka wypchana książkami, dziennik w zębach. Stary idzie na luzaka, niesie tylko klucz od sali.
Młody mówi z podziwem:

- No no, po tylu latach pracy, to pan ma to wszystko w głowie?
- Nie synu, w dupie...

Jak wyglądała Wasza pierwsza praca?

Dużo coli, dużo alkoholu, dużo chipsów i wieczny pociąg. Albo przeciąg, po tylu latach może się człowiekowi zapomnieć.

1

Co zrobić jeśli nie jestem w stanie rozwiązać taska lub znaleźć źródła buga a seniorzy są zawaleni robotą?

Zbieraj więcej informacji (wiedza domenowa, wiedza techniczna, wiedza o projekcie, czytaj readme, dokumentację, logi, dyskusje w jira, czytaj zmiany odnotowane git, analizuj pracę programu z debugerem, obserwuj dane w bazie, rób eksperymenty).

Pozwól problemom leżeć w głowie, poza komputerem łatwiej jest myśleć. Opisuj problemy i stawiaj pytania. Próbuj znaleźć na nie odpowiedzi, powiązane problemy, pomocnicze pytania.

Znajdź przestrzeń i dobry czas na intensywne rozumowanie, aby Ci nikt nie przerywał. Rób przerwy, które pozwolą Ci oderwać się myślami od komputera np. prysznic, kawka, spacer itp

0
xeyo95 napisał(a):

Co zrobić jeśli nie jestem w stanie rozwiązać taska lub znaleźć źródła buga a seniorzy są zawaleni robotą?

Zawalić ich swoją robotą. Chyba, ze ci seniorzy, to takie same nooby jak ty, jedynie o oczko wyżej i z twojej perspektywy wydają się jakimiś pół-bogami.

Jakie powinienem mieć nastawienie i postrzeganie jeśli takie sytuacje się zdarzają, pracuję dużo na bardzo starym kodzie, wiecznie trzaskam nadgodziny i mało z tego wynika, stawkę mam tak niską, że zaraz skończą mi się oszczędności a jednak chciałbym zrobić jeszcze kilka miesięcy w tym piekle?

Nauczyć się przyzwoitego stopnia wywalenia. Skąd niby wiesz ile coś ci powinno zająć? Skąd wiesz ile zajęłoby któremuś z tych seniorów? Skąd wiesz, że zajmuje ci za długo?

Czasem wydaje mi się, że jestem za słaby a czasami mam wrażenie, że jestem w cyrku.

Pewnie jedno i drugie po trochu. Jeżeli to twoja pierwsza praca, to jesteś "słaby", jak nie ma planu, żeby cię wdrożyć, to jesteś w cyrku.

Aktualnie przygotowuję się do zmiany pracy, dokształcam się po godzinach, ale pewnie jeszcze z pół roku mi to zajmie, chciałbym wyciągnąć mimo wszystko jak najwięcej. Nie wiem jak mam podchodzić do tej pracy i co jeszcze mogę zrobić, by to jakoś szło, czasem uda się zrobić coś bez problemu, zazwyczaj nie mam problemu ze znalezieniem buga, czasem jest trudno. Myślę, że osoby, które przydzielają taski (chyba SM) nie mają za bardzo pojęcia o IT i nie poziomują zadań, co mają to wrzucają stażystom. To tak powinno wyglądać?

W ideale - SM nie istnieje. W pół-ideale, gdzieś tam sobie jest, robi jakieś swoje rzeczy, nie oglądasz go za często. Taski dostaje zespół, i zespół rozdziela je między siebie. Z jakości tego co zostało zrobione też jest rozliczany zespół. Może się zdarzyć, że wykopie jakiegoś łosia, bo uzna go za materiał niereformowalny, ale są to raczej skrajne przypadki. No i jeżeli zespół jest rozliczany, to na ogół znajduje też sposób, żeby juniora podciągnąć, dając mu odpowiednie taski (takie, żeby wniósł jak najwięcej, marnując jak najmniej czasu seniorom). Nie patrz zbyt krytycznie na swoją pracę. Ktoś tego bug'a napisał, ktoś go wpuścił na produkcję, pewnie ci seniorzy...

SM denerwuje, zdecydowana większość pracy w firmie to bugi. Gdybym nie stracił prawie całych oszczędności na przebranżowienie + pracę tutaj, to by mnie już chyba nie było :D

Się denerwuje (trudno)? Czy ciebie denerwuje (gorzej)? Zauważasz jakikolwiek progres? Czy twoja wartość rynkowa rośnie, czy stoi w miejscu?

A tak w ramach poradnika, na podstawie obserwacji i doświadczenia:

  • Musisz rozumieć na czym polega błąd. Jak nie rozumiesz, to op....asz tego kto tego buga napisał, każesz mu napisać steps to reproduce, result i expected result. Takie absolutne minimum.
  • Musisz się nauczyć podchodzić "naukowo" do bugów. Częstym błędem (nie tylko) początkujących jest grzebanie po całym kodzie, zapuszczanie debugera, zmiany po omacku "bo to może być to". Tutaj trzeba nauczyć się systematycznego podejścia:

Dostajesz bug'a typu "obiekt wysłany na enpoint post /blabla nie jest widoczny na endpoincie get /blabla". Rozpisujesz sobie na kartce, że masz endpoint, który wchodzi, bazę danych, odczyt z bazy danych. Rozbijasz to na robocze hipotezy:

  • obiekty nie zostają zapisane w bazie danych
  • obiekty nie są odczytywane z bazy danych
    Weryfikujesz obie hipotezy, któraś pewnie będzie prawdziwa, wchodzisz głębiej i sprawdzasz powody.

Oczywiście to jedynie jakiś przykład z czapy, ale usystematyzowane myślenie, to bardzo pomocna, a wcale nie tak częsta umiejętność.

Jak wyglądała Wasza pierwsza praca?

Januszsoft, taki, że gdybym podał nazwę, to @Crowstorm by tam CV złożył. Walenie na nadgodzinach, opóźnione pensje, atmosfera w pracy na poziomie zera absolutnego (seniorzy - buce). Wywalili mnie po roku, "bo na programistę się nie nadaję". Jeszcze na okresie wypowiedzenia znalazłem nową pracę za 2x więcej i z pensją na czas. Co by nie być niesprawiedliwym, naprawdę dużo się tam nauczyłem, właśnie przez bycie pozostawianym sam na sam z problemem.

1

Tak wlasnie wyglada praca w IT przez wiekszosc czasu albo nie wiesz co masz zrobic albo jak to zrobic albo siedzisz na durnych spotkaniach.

1

Zostałem wrzucony do tasków w Erlangu którego nikt w zespole nie znał plus w obszarze którego też nie znali bo był to gościnny występ. No i coś tam nawet dowiozłem, część kodu kopiowałem, szykowałem sobie pytania do typa który ogarniał(mieliśmy call raz na tydzień), grzebałem po różnych firmowych wiki itd. Każdy miał wyj*** na moje postępy i byli zadowoleni że nie zwiałem po 3 miesiącach

0
  1. trzeba aktywnie "próbkować" środowisko we wszystkich kierunkach jakie jesteś w stanie ustalić; środowisko w tym przypadku to inni pracownicy, którzy w jakikolwiek sposób są w stanie Tobie pomóc (nie muszą być nawet na Twoim projekcie - może po prostu kiedyś byli, albo znają kogoś kto był);
  2. can do attitude - nigdy nie zaszkodzi; wiąże się z pktem pierwszym, ale też - szukanie wiedzy na własną rękę, czesanie logów, wpinanie się debuggerem i krok po kroku analiza, czytanie wszystkiego co wpadnie Ci w ręce (książki, blogi, etc.) w danym temacie

odnośnie płacy - jeśli z programowania nie idzie się utrzymać, to coś jest nie tak; minimalna w branży jest wyższa niż średnia krajowa - chyba, że koszty masz duże i nieredukowalne;

ale pewnie jeszcze z pół roku mi to zajmie

pytanie skąd wnioskujesz? wysyłałeś CVki gdzieś, byłeś na spotkaniach i dostałeś takie feedback? może to da się zrobić szybciej

2

Dla bardziej zaawansowanych programistów (nie intern) polecam wrzucać się w najtrudniejsze zadania szczególnie w nowych projektach. Od razu przechodzisz przez cały projekt i kminisz co nie działa i co gdzie jest :D

1
xeyo95 napisał(a):

SM denerwuje,

Tak jak piszesz, jestes za slaby i musisz sie z tym pogodzic. u mnie w rpacy to programisci denerwuja SMa

1 użytkowników online, w tym zalogowanych: 0, gości: 1