Mentionsy Mentionsy
JavaReady.pl - jak zostać programistą Javy? (Junior/Mid)
JavaReady.pl - jak zostać programistą Javy? (Junior/Mid)

#35 Kluczowe Narzędzia Dla Junior Java Developera! Szymon Pawlikowski: Hackerrank, Codegym i Spring

16.09.2022 ·1 godz 2 min · 14 rozdziałów · 2 sponsorów

Linki z tego odcinka znajdziesz na https://javaready.pl/35 Bartek Kalka | javaready.pl

0:03 · Wprowadzenie i przedstawienie gościa 1

Witajcie w podcaście Junior Java Ready, w którym rozmawiamy o tym, jak inni zdobyli pierwszą pracę w Javie i ogólnie o tym, jak zdobyć pierwszą pracę w Javie. A dzisiaj moim gościem jest Szymon Pawlikowski, który niedawno dostał swoją pierwszą pracę jako Java Developer, Junior Java Developer. I dzisiaj chciałby się z nami podzielić właśnie tą historią i o swoich zmaganiach. Więc cześć, Szymon. Szymon Pawlikowski Cześć. Cześć, Bartek. Tak, no to tak jak już Mnie przedstawiłeś. Też jestem programistą od dwóch i pół miesiąca tak naprawdę. Zmieniłem branżę. Właściwie szkoliłem się przez około 8-9 miesięcy, żeby w ogóle spróbować pójść na rozmowy i zobaczyć, czy ktoś będzie chciał osobę, która tak naprawdę nie jest po studiach informatycznych, zatrudnić jako programistę.

0:27 · Historia Szymona i jego doświadczenia 7

Ona zajmuje się generalnie licencjonowaniem danych. Ja jestem tam programistą takim bardziej od strony backendowej, czyli żadnego frontendu tam przynajmniej ja za niego w ogóle nie jestem odpowiedzialny, raczej to jest praca na ogromnych plikach danych. I tak wygląda w skrócie mój taki powiedzmy wstęp, jak tutaj można powiedzieć się znalazłem w tym podcaście z Bartkiem i rozmawiamy sobie o mojej historii. Dotarcia do tej wymarzonej pierwszej pracy jako programista Javy. Tak naprawdę mogę wspomnieć, że aplikowałem i uczyłem się jako programista Javy, czyli uczyłem się języka Javy.

Natomiast finalnie stanowisko, na które się dostałem, wymagało ode mnie nauki, a przynajmniej chęci nauki Kotlina, czyli można powiedzieć takiej ulepszonej wersji Javy, jak to niektórzy nazywają. I jestem bardzo z tego faktu zadowolony, że uczę się Kotlina, bo to jest taki dosyć przyszłościowy język i naprawdę to jest taka Java plus plus, jak to też niektórzy nazywają. Tak, też mam super doświadczenia z Kotlinem. Czyli przed pracą nie był wymagany Kotlin, tak? Nie był wymagany Kotlin. Zadano mi tylko pytanie na rozmowie rekrutacyjnej, Jestem chętny do nauki tego języka, dlatego że on nie jest tak popularny jak... Można sprawdzić nawet tak naprawdę na ofertach pracy, wpisać sobie Kotlin, wpisać sobie Java i zobaczyć, ile tych ofert jest, więc przypuszczam, że po prostu u mnie w firmie było takie podejście, że jeżeli osoba umie Java, to nie będzie dla niej problemu, żeby się przerzucić na Kotlina.

I to nie jest jakaś taka, powiem szczerze, już z perspektywy tych tam dwóch, prawie trzech miesięcy nie była jakaś filozofia, Super, moim zdaniem Kotlin to przyszłość, jeżeli chodzi o Javę i jej istnienie. Ok, no dobra, no to wspomniałeś, że byłeś programistą PLC. To jest bardzo ciekawe, bo jaki to miał wpływ właśnie na naukę później przez te 8 miesięcy, czy 9, Javy? Czy to była jakaś duża pomoc?

Jak się wcześniej uczyłeś przed w ogóle zaczęciem pracy nad językiem Java, że tak powiem? Tak, generalnie programowanie sterowników PLC Przedtem, zanim dostałem się do firmy, która zajmuje się automatyką przemysłową jako programista PC, robiłem takie szkolenie w certyfikowanym centrum, które trwało dwa tygodnie po 8 godzin dziennie, tak że takie dosyć było naprawdę konkretne. Jak mi to pomogło? Generalnie programowanie PLC polega na przetwarzaniu sygnałów, powiedzmy, czy odczytywaniu sygnałów, które docierają do nas, powiedzmy, z czujników różnego rodzaju, czy to cyfrowych, czy analogowych.

Pisanie w tym języku, a właściwie możliwości tego języka w porównaniu do języków wyższego rzędu, takim językiem, jakim jest na przykład Java czy Kotlin, ma dużo mniej możliwości, taki język PLC, co nie? Więc ja bym powiedział, że to mi dało takie solidne podstawy, czyli te dwa lata jak programowałem PLCki dało mi solidne podstawy do w ogóle myślenia, czy wyuczenia się pewnej kreatywności podczas rozwiązywania problemów, Szymon Pawlikowski.

Czy osoby, które programowały, czy w ogóle rozwiązywanie zadań wymaga od nas pewnego rodzaju wytrwałości, żeby się nie poddawać, jeżeli jakieś rozwiązanie, wpadliśmy na jakieś rozwiązanie czy na jakiś pomysł rozwiązania, ale ono nie działa, to musimy szukać dalej. Więc tego na pewno nauczyłem się w poprzedniej pracy jako programista i to myślę też zadecydowało w jakiejś tam części o tym, że Dostałem też kilka tych ofert pracy, bo sami mi to mówili rekruterzy, że mam to doświadczenie i zawsze odwoływali się do tego, że w CV mam wpisane, że pracowałem już wcześniej jako programista w PLC i jak to się ma do programowania w Javy i żebym po prostu to opisał różnicę.

To ciekawe bardzo. A masz jeszcze jakieś tipy, wskazówki dla osób, które tak jak Ty kiedyś były tylko programistami tych sterowników PLC i teraz chciałyby się przebranżowić na Java? Jakieś takie przemyślenie po tych kilku miesiącach? Przemyśleń jest bardzo dużo, dlatego że ten czas mojej nauki był długi. Z tego co wiem, różni ludzie różnie do tego podchodzą, natomiast spotkałem się z taką opinią, że jeżeli ktoś chce uczyć się programowania, to faktycznie trzeba sobie uzbroić się w cierpliwość i założyć sobie, że to nie potrwa miesiąc, tylko to potrwa powiedzmy od pół roku nawet do roku, w zależności od tempa przyswajania wiedzy danej osoby.

6:48 · Rekomendacje dla programistów PLC chętnych do przebranżowania się na Java 3

Co bym mógł polecić tak naprawdę osobie, której się urodził pomysł pójścia w tym kierunku, czyli w kierunku programowania, zdobycia swojej pierwszej pracy w IT itd. Na pewno solidne podstawy, czyli jeżeli chcemy się uczyć na przykład takiej Javy, to robić zadania, skorzystać już z Szymon Pawlikowski, Codegym i Spring.

Jako umiejętności nawet juniora to uczyć się Javy, przede wszystkim. Ja mogę osobiście ze swojej strony polecić taką książkę, która również mi została polecona, to jest Java Rozżgłową. Ona jest dosyć dawno wydana, z tego co pamiętam chyba 2009 rok jest wydany, nie wiem czy jakieś kolejne było wydanie, takie świeższe, natomiast ona jest dosyć taka powiedzmy stara, część rzeczy jest tam nieaktualnych albo nie wszystkie, są po prostu takie bieżące, to są bieżące, interesujące tematy, natomiast myślę, że 80-85% tej książki jest naprawdę godna polecenia. Forma, w jakiej ta wiedza jest przedstawiona, jest naprawdę bardzo przystępna. Przynajmniej mi się naprawdę spodobała, bo było to na rysunkach, żeby sobie zobrazować to, jak się zachowuje kod, czy zdefiniują jakąś funkcję, czy jak działa pamięć w JVM itd.

Bo im szybciej złapiemy tą pierwszą pracę, Tak naprawdę lepiej, dlatego że część rzeczy, których się będziemy uczyli, to jest oczywiste, że nie wszystko będziemy dosłownie wykorzystywać, czy wszystkie technologie, wszystkich technologii, których nie nauczymy, nie będziemy wykorzystywać w swojej przyszłej pracy. To jest po prostu logiczne, to zależy od projektu, to zależy od firmy, czym się dokładnie zajmuje, dlatego myślę, że im szybciej się zdobędzie tą pracę, tym lepiej dla rozwoju, dla nas samych. Super, super. Jeszcze chciałbym wrócić na przykład do tej książki Java róż głową. Słyszałem właśnie wielokrotnie, że to jest bardzo dobra książka, a jak Ty do niej podchodziłeś? Czyli jak dokładnie ją przerabiałeś?

10:49 · Praca nad książką Java Róż Gową 3

Czy tylko czytałeś, nie wiem, przed snem? Bo jednocześnie pracowałeś, tak? Nie miałeś jakoś super chyba dużo czasu, żeby i czytać tą książkę tak od dechy do dechy? Jak to u Ciebie wyglądało z tym przerobieniem? Tak, więc właściwie jak ja zaczynałem jakby studiować tą książkę, to faktycznie wtedy jeszcze pracowałem, dlatego że później już stwierdziłem, żeby się skupić mocniej na czy bardziej efektywnie na nauce Java, zrezygnowałem z pracy, akurat mogłem sobie na to pozwolić, żeby się po prostu przygotować naprawdę porządnie do tych rozmów i tak dalej. Natomiast jak ja studiowałem tą książkę? Przede wszystkim nie spieszyć się z nią, bo to wiadomo, to nie jest jakaś powieść.

Jedne strony się czyta szybciej, drugie się czyta wolniej, dlatego że musimy się zatrzymać, żeby coś zrozumieć, jak to z technicznymi książkami. Natomiast skupiłbym się po prostu na konkretnych tematach, na konkretnych rozdziałach, żeby je naprawdę dobrze zrozumieć i być pewnym, że się je dobrze rozumie. Tam w każdym rozdziale, z tego co dobrze pamiętam, są zadania też takie czy do rozwiązania, szczerze mówiąc, nawet tam na kartce w tej książce, czy można je rozwiązać również oczywiście otwierając jakieś środowisko IDE na komputerze i ruszyć z tym. Natomiast myślę, że to nawet jeżeli ktoś naprawdę jest na samym początku i jeszcze nie otworzył sobie nigdy jakiegoś środowiska do pisania Javy, Oczywiście możemy pisać nawet w notatniku, ale takiego wspomagającego nam te kodowanie, to nawet nie trzeba się tym martwić, bo w tej książce naprawdę są nawet takie zadania, które pozwalają nam rozwiązać te zadania na kartce, żeby zrozumieć faktycznie jak działa składnia Javy i co się dzieje po napisaniu każdej linijki kodu.

Także skupiłbym się naprawdę na przerobieniu postaw tej książki ze zrozumieniem. Jeżeli czegoś nie wiemy, no to właśnie konsultacja z jakimś mentorem, albo to żeby to był znajomy, albo to żeby był mentor jakiś, gdzie się zapiszemy na jakiś kurs. Ważne jest, żeby naprawdę nie zostawać z tymi tematami, których nie zrozumiemy sami. I po prostu iść dalej, etap po etapie, skrawek wiedzy po skrawku wiedzy, zbierać, zbierać i zdobywać te solidne fundamenty, jakim jest wiedza o programowaniu Java. Ok, super, super. To na pewno, jeżeli chciałbym zaczynać, to na pewno wziąłbym tą książkę teraz i zaczął przerabiać jak najwięcej zadań właśnie z niej i przerabiać te tematy. I w przypadku, gdybym czegoś nie rozumiał, to szukam gdzieś jakiegoś mentora, może na jakiejś grupie na Facebooku piszę, że potrzebuję pomocy albo mam jakieś kilka pytań, zbieram je, wrzucam nawet na tą grupę, żeby sobie rozjaśnić, jeżeli nie chcę, nie wiem, wynajmować mentora powiedzmy, a dopiero wtedy, gdy nikt mi nie odpisze, to dopiero gdzieś tam szukam płatnych mentorów, tak?

13:33 · Mentoring i planowanie czasu na naukę 4

Ok, jeszcze chciałbym wrócić do tej sytuacji, o której powiedziałeś, że na początku, Uczyłeś się pracując, w sensie musiałeś pracować i się uczyć, a później stwierdziłeś, że wszystko rzucasz na jedną strzalę i teraz rzucasz pracę, czy odkładasz pracę na jakiś czas i skupiasz się tylko na nauce Javy. Chciałem Cię zapytać o to, jaki był, ile czasu poświęcałeś przed tym rzuceniem i później po. Czyli nie rzuceniu pracy, tylko przełączeniu się na tryb, że cały czas się uczysz. Jak to wyglądało godzinowo, bo to też może być ciekawe. Tak, więc jak pracowałem i faktycznie gdzieś tam po pracy siadałem do tej nauki, to przyznam szczerze, że też ze względu na specyfikę mojej poprzedniej branży, czyli że zdarzało mi się, że musiałem jechać po prostu na delegację i tam pracowałem na tyle dużo godzin, że człowiek po prostu już po tej pracy nie miał ochoty nawet zaglądać do jakiejkolwiek książki,

Nawet te 8 godzin czasem było trudno mi usiedzieć, Zdarzało się, że miałem dni już faktycznie jak nie pracowałem na pełny etat, tylko miałem cały dzień na skupienie się na nauce Javy, to zdarzało się dni, że uczyłem się po 5-6 godzin, a zdarzało się dni, że siedziałem po 10-11 godzin. Natomiast zdarzały się też takie dni, które miałem mało wydajne i to było 2-3 godziny, dlatego że po prostu być może właśnie takie usystematyzowanie sobie, że uczymy się faktycznie 5-6 godzin codziennie byłoby nawet lepszym rozwiązaniem niż właśnie to, że ja czasem w jedną stronę za dużo godzin jednego dnia, a innego dnia już po prostu mój mózg był na tyle wymęczony, że nie byłem w stanie się tak mocno skupić i z taką przyjemnością tak naprawdę usiąść do tej nauki,

To też ma być przyjemne. To, że ja się przebranżowiałem, to też wynikało z tego, że miałem w tym konkretny cel, żeby moje prywatne życie Jakby nie cierpiało na tym wszystkim, dlatego postanowiłem się przebranżowić, nauczyć się Javy, zdobyć pracę na miejscu. Natomiast tak naprawdę też sam nie wiedziałem, co będzie. Do jakiej firmy się dostanę, a może faktycznie tam też mnie będą gdzieś na delegację wysyłali, może będzie dużo godzin pracy itd. Natomiast Tak to wygląda, jeżeli chodzi o czas pracy, czas właściwie tej nauki. Po pracy na początku było to niewiele godzin, natomiast jak już faktycznie porzuciłem pracę na rzecz przebranżowienia się, to było to dużo więcej godzin.

Myślę, że tygodniowo to wychodziło około 25 godzin, jak kiedyś chyba sobie nawet sprawdzałem, zapisywałem sobie te godziny mniej więcej, to wychodziło mi mniej więcej na tydzień około 25 godzin, tak policząc od poniedziałku do piątku. Bardzo ciekawe i bardzo to tak inspirująco brzmi. Z jednej strony byłeś bardzo wytrwały z tym, żeby do tego siadać cały czas, codziennie. No i teraz samo się nasuwa takie pytanie, czy miałeś jakiś moment zwątpienia, jakiś upadek, który powodował, że może trochę zwątpiłeś i już nie chciałeś kontynuować tej nauki, czy raczej nie było czegoś takiego? Było, wielokrotnie było, dlatego że tak jak mówiłem już jak porzuciłem pracę na pełny etat i skupiłem się na nauce Javy, tak wyznaczyłem sobie pewien plan i ten plan zakładał, że ja powiedzmy tam po około pół roku będę już próbował aplikować

19:34 · Rozmowy rekrutacyjne i wysyłanie CV 7

Na którym kierunku ja powinienem iść tak naprawdę, a w którym nie szedłem? Czyli jakich technologii się powinienem uczyć, na czym się powinienem skupiać, a na czym się nie powinienem skupiać? Bo były nawet takie rzeczy, gdzie Ty wskazywałeś mi, że ja na przykład nie powinienem się aż tak bardzo przejmować, nie wiem, na przykład aż tak bardzo myśleć o architekturze projektu, tak? Że wiadomo, to jest ważna rzecz, ale dla Juniora to nie jest must have, że my musimy znać Bardzo dobrze, jak powinna być aplikacja zbudowana itd., infrastruktura i te różne podziały. Natomiast podstawy architektury MVC, czym jest architektura heksagonalna, żeby w ogóle wiedzieć o tym jak najbardziej, ale nie żeby się w to zagłębiać i żeby robić aplikację akurat pod tym kątem. Jest dużo innych, podstawowych, ważniejszych rzeczy, które trzeba opanować na początku, na które zwróciłeś mi uwagę i ja faktycznie

Czy to dużo, czy to mało? Nie wiem, natomiast uważam, że powinno się aplikować na każdego rodzaju oferty. Mam na myśli, nawet jeżeli jest oferta, która jest na mida, czyli już osobę powiedzmy nawet z rocznym, dwuletnim doświadczeniem, różnie to firmy definiują te doświadczenie na stanowisko midy. To ja bym po prostu wysyłał, bo czasem się okazuje i też nawet rozmawiałem z rekruterami, przynajmniej teraz jest taka sytuacja na rynku, że brakuje tych osób doświadczonych i nawet jeżeli firma szuka kogoś na stanowisko Mid, a nie na Juniora, To są w stanie odezwać się do takich osób. I mi się zdarzyło, że odezwali się ludzie, którzy...

Ja aplikowałem faktycznie na ofertę na Mida i odzywali się do mnie i nie było z tym problemu, że ja nie mam doświadczenia, że to będzie moja pierwsza praca w IT. Także tutaj bym się nie ograniczał i także też zachęcam wszystkich, żeby się nie bać wysyłać. Sami zobaczycie po prostu po zwrotnych telefonach czy jest zainteresowanie, czy ktoś faktycznie szuka osób, które nie mają doświadczenia i wszystko i tak wyjdzie tak naprawdę na rozmowie i rozmowa jest tutaj Można naprawdę na rozmowie też tak wypaść, że bez problemu i tak porozmawiać, że nagle się okaże, że manager stwierdzi, że okej, nie mamy mida, nie mamy żadnego konkretnego kandydata na stanowisko mida, ale otworzymy stanowisko juniora, tak?

Że jest na to budżet bez problemu, nie wiem, dostanie taki junior wsparcie po sobie właśnie jakiegoś mentora w pracy i tak dalej. I tutaj bym się też nie ograniczał w takich przypadkach. Także wysyłajcie CV, jeżeli faktycznie szukacie pierwszej pracy w Javy. Ok, super, super. Właśnie to jest fajny tip z tym Midem, żeby też tam wysyłać. I tak z mojej perspektywy, jako osoba, która już tam prawie dwa lata siedzi w tym, że pomagam innym zrobić pierwszą pracę, to 40 CV to jest jeszcze taka dobra liczba, nie? W sensie to jest jak najbardziej w porządku liczba i nie ma co się wstydzić, ani nie wiadomo bać, czy czegoś. Ale chciałem jeszcze tylko powiedzieć, że Ty, pamiętam, że szukałeś pracy we Wrocławiu, nie? I Ty, wszystkie te CV były do firm z Wrocławia, prawda?

Nie, z tego co pamiętam to nie wszystkie, bo tak naprawdę to ja pracuję w firmie, też nie wspomniałem o tym na początku, natomiast jak akurat mi się udało otrzymać ofertę, no i zgodziłem się na nią, na pracę zdalną całkowicie. Więc ja też wysłałem nawet, i nawet coraz więcej chyba jest ofert, nawet dla juniorów, na pracę zdalną, w formie pracy zdalnej. Także nie, większość była oczywiście Wrocław, tutaj jakby w miejscu mojego zamieszkania, natomiast zacząłem też wysyłać, właśnie, tak, wysyłać CV na oferty, które proponowały pracę zdalną, dlatego że stwierdziłem, że ja nic nie stracę, a jeżeli się odezwą, Kto wie, może mają ciekawą ofertę, może będzie to bardzo ciekawa firma i przedstawi mi bardzo ciekawe warunki pracy i ciekawe projekty i może naprawdę to się okazać strzał dziesiątkę.

Ok, to po tych kilku miesiącach, jak już właśnie uczyłeś się tej Javy, po mentoringu itd., to co było właśnie takim triggerem, że ok, teraz zaczynam wysyłać CV, teraz już mogę wysyłać CV, teraz jestem pewny i wysyłam. Co to u Ciebie było takiego? No to przyznam szczerze, że spotkania z Tobą między innymi i konsultacje właśnie z jednym z kolegów, którzy mnie wspierali w nauce, czy też ich się radziłem Właśnie, kiedy wysłać CV, kiedy jest ten moment, bo niewątpliwie są takie myśli wątpiące, czy to jest ten moment, czy ja jeszcze się... Jeżeli faktycznie się uczymy, to na pewno też osoby, które już rozpoczęły naukę programowania, to im dalej w las, tym ciemniej tak naprawdę, okazuje się, że

Tej wiedzy jest naprawdę bardzo dużo i tych technologii jest naprawdę bardzo dużo i człowiek w pewnym momencie się zastanawia, czy ja już nie powinienem się zająć np. nauką jakiejś tam konkretnej technologii, czy porzucić już podstawy Javy, bo już na tyle, ile potrafię tam napisać kod podstawowy, jakieś klasy, funkcje, to mi wystarczy. Więc tak bym to widział po prostu, że... Że nabierasz pewności w tych mocnych podstawach i wtedy już mogę wysyłać CV. Dokładnie tak. Więc moment kiedy wysyłać CV to jest

Pokazano pierwszych 25 dopasowań — doprecyzuj frazę, aby zawęzić wyniki. Transkrypcja generowana automatycznie i niesprawdzana ręcznie — może zawierać błędy.