Historia niemal hollywoodzka – Piotr Rudziński najpierw hobbystycznie stykał się z programowaniem, potem postawił sobie za cel przebranżowienie i zajęcie tym, co naprawdę lubi. Skończył bootcamp w infoShare Academy i dziś koduje w Javie na pełen etat. A to nie koniec, bo kolejne cele przed nim!
Skąd pomysł na programowanie?
Cóż, od dawna się tym zajmowałem, jednak czyniłem to jedynie hobbystycznie i w nieco innym obszarze. Interesuję się elektroniką, a szczególnie techniką cyfrową i systemami mikroprocesorowymi. Budowałem dla siebie różne urządzenia zawierające mikrokontrolery, co samo z siebie skutkowało koniecznością napisania dla nich oprogramowania. Tworzyłem je z wykorzystaniem asemblera.
Pomysł zrobienia z moich zainteresowań sposobu na życie pojawił się w momencie, gdy zacząłem odczuwać, że dotychczasowe zajęcie już mnie nie rozwija i stało się rutyną nieprzynoszącą żadnej satysfakcji. Zdecydowałem, że pora się przebranżowić, zająć tym, co mnie ciekawi i zachęca do poszerzania wiedzy i pogłębiania umiejętności.
Jak wyglądała Twoja kariera zawodowa przed zrobieniem kursu Javy?
Moje wcześniejsze zajęcie całkowicie odbiegało od tego, czym zajmuję się teraz. Wprawdzie z komputera korzystałem na co dzień, jednak było to tylko narzędzie do wykonywania obowiązków zawodowych. Nie było w tym żadnego programowania. Uważam jednak, że doświadczenie zebrane w poprzedniej pracy będzie bardzo przydatne na stanowisku developera. Polega ona przecież na wykonywaniu produktów dla klientów, a tym samym, przynajmniej od pewnego momentu, będzie wymagała kontaktów z biznesem i prezentowania efektów wykonanej pracy.
Lubisz to, co aktualnie robisz?
Zdecydowanie tak. Przede wszystkim mam poczucie, że to ja mam wpływ na to, jak będę dalej rozwijał się jako developer. Nie ma innej drogi niż poznawanie i wykorzystywanie nowych technologii. To, ile się nauczę, zależy ode mnie, od mojego zaangażowania i włożonej pracy.
Przyjemne jest także to, gdy zaczynam rozumieć kod, który kiedyś był dla mnie czarną magią, zawierającą dziwne adnotacje i niezrozumiałą składnię. Daje to poczucie, że idę do przodu w poznawaniu tematyki, którą się obecnie zajmuję.
Co lubisz robić w wolnym czasie?
To trudne pytanie, bo wolnego czasu za wiele nie mam. Jednak gdy trochę wygospodaruję, to zwykle poświęcam go na kwestie związane z programowaniem. Staram się wtedy, szukając informacji w internecie i w książkach, nadrobić zaległości, rozwiać wątpliwości dotyczące nowopoznanych tematów bądź po prostu odświeżyć wiedzę. Mam świadomość, że nadal jestem na początku mojej developerskiej drogi i dużo się jeszcze muszę nauczyć, zanim poczuję się pewnie w tym temacie. To taka moja inwestycja. A gdy już naprawdę znużę się Javą, to wracam na chwilę do płytek drukowanych, układów scalonych i mikrokontrolerów. Takie oderwanie, przynajmniej dla mnie, jest odstresowujące i resetujące umysł.
Od razu wiedziałeś, jaki język programowania wybrać?
W sumie tak. Bardziej interesuje mnie to, jak coś działa pod spodem niż prezentowanie informacji i ich pobieranie. Dlatego naturalnym dla mnie było zwrócenie się w stronę backendu. Z kolei skoncentrowanie się na Javie było wynikiem jej popularności, tym, że już ją odrobinę znałem oraz możliwością tworzenia za jej pomocą aplikacji dla wielu platform. Istotne było dla mnie także to, że znając Javę będę mógł w przyszłości łatwiej poznać inne języki programowania.
Dlaczego wybrałeś kurs w iSA? Brałeś pod uwagę inne formy nauki? Jakie?
Gdy już zdecydowałem się na przebranżowienie, zacząłem rozglądać się za odpowiednim kursem. Od razu założyłem bowiem, że najefektywniejsze będzie podejście do nauki w sposób zorganizowany. W pamięci miałem moje wcześniejsze doświadczenia z nauką Javy. Wtedy brakowało mi kogoś, kto wyjaśniłby mi wątpliwości i wskazał popełniane błędy, usuwając tym samym kwestie blokujące mój rozwój. Chciałem uczyć się programować mając ten komfort, że zawsze będę miał dostęp do osoby, która udzieli odpowiedzi na moje pytania. Takie wymagania spełniały bootcampy programistyczne. Oferta tego typu kursów jest na rynku szeroka, natomiast ja od razu celowałem w rynek lokalny. O ile samą instytucję, jaką jest iSA, znałem wcześniej, to na moją decyzję o wyborze tego bootcampu duży wpływ miały opinie znajomych oraz komentarze z internetu. Ważnym kryterium był także szeroki zakres tematów poruszanych podczas zajęć. Na etapie wyboru kursu bardziej chyba jeszcze przeczuwałem, niż miałem świadomość, że bycie developerem to nie tylko kodowanie w wybranym języku, ale także cała masa dodatkowych umiejętności. Zacząłem się o tym przekonywać już podczas pierwszego weekendu zajęć, na których przerabialiśmy system wersjonowania Git. Ucząc się samodzielnie, a nie na bootcamie, najprawdopodobniej części z tych tematów jedynie bym dotknął, o ile w ogóle bym się nimi zajął, nie wiedząc, że są także istotne.
Jak wyglądał sam kurs? Spotykaliście się stacjonarnie, zdalnie? Weekendowo? W tygodniu?
Ostatecznie zdecydowałem się na bootcamp weekendowy. Wprawdzie trwał on sześć miesięcy, czyli dwa razy dłużej niż kurs dzienny, jednak z mojego punktu widzenia był to lepszy wybór. Nauka weekendowa powodowała, że w trakcie tygodnia miałem czas na powtórne przerobienie tematów, przygotowanie pracy domowej i zadań dodatkowych oraz przynajmniej ogólne zaznajomienie się z tematami, które miały być poruszane na następnym zjeździe. Sama nauka miała formę wykładów online. Zalogowani byliśmy do Zooma, na którym trenerzy prowadzący zajęcia pokazywali nam prezentacje, kodowali online oraz odpowiadali na nasze pytania. Mieliśmy także konta założone na Slacku. Ten sposób kontaktu pozwalał nam przesyłać pliki z materiałami do zajęć oraz wspólnie komunikować się, co było niezwykle przydatne w trakcie przygotowywania projektu zespołowego.
Nauka zdalna ma oczywiście swoje wady i zalety. Wadą było to, że tak właściwie nigdy nie spotkaliśmy się w realnym świecie, zawsze byliśmy tylko widokiem i dźwiękiem generowanym przez komputer. Z drugiej strony, dzięki formie online zajęcia były nagrywane, a pliki z nagraniami udostępniane, co pozwoliło wrócić do nich w ciągu maksymalnie czternastu dni. To była nieoceniona pomoc.
Musiałeś z czymś łączyć naukę?
Tak. W pierwszej części kursu pracowałem i musiałem wykonywać moje zwykłe obowiązki służbowe. Później było już łatwiej, bo zakończyłem współpracę z moim dotychczasowym pracodawcą.
Co z Twojej perspektywy jest najważniejsze w trakcie nauki? Jak to robić najefektywniej?
Patrząc z mojego punktu widzenia w pierwszej kolejności wskazałbym zaangażowanie. Decyzja o przebranżowieniu się to kwestia mająca daleko idące konsekwencje, dlatego już od początku obiecałem sobie, że zaangażuję się w naukę jak tylko będę mógł. Potraktowałem to jak inwestycję, poświęcając swój wolny czas, zainteresowania, a także możliwość przyjemnego spędzenia czasu na rzecz zgłębiania tajników Javy. Dlatego potencjalnym uczestnikom sugeruję, by – jeśli zdecydują się na udział w kursie – podeszli do niego na poważnie i uczciwie w stosunku do siebie. Opuszczanie zajęć i brak systematycznej pracy to nie jest dobra droga. Materiału jest dużo i łatwo znaleźć się w punkcie, w którym opóźnienia się nawarstwiają.
Drugą moją radą jest przynajmniej wstępne zapoznanie się z tematami, które zostaną przedstawione na kolejnych zajęciach. Łatwiej jest o coś zapytać, kiedy mamy nawet niewielką wiedzę na jakiś temat, niż w sytuacji, gdy temat jest zupełnie nowy. Prework, który każdy kursant miał do wykonania przed bootcampem, obejmował wiele zagadnień poruszanych później na kursie, więc jest to dobry punkt wyjścia do takiego wstępnego zapoznania się z poszczególnymi tematami. A będąc już przy temacie pytań sugeruję, żeby nie bać się ich zadawać. Żadne pytanie nie jest głupie, a zwłaszcza takie, które jest zadawane przez osobę uczącą się wszystkiego od zera.
Kiedy dostałeś pierwszą pracę w IT? Pamiętasz, jak wyglądał proces rekrutacji?
Bootcamp rozpoczął się w lutym, a w połowie sierpnia przeszedłem egzamin rekrutacyjny i zostałem przyjęty do pracy. Stało się to zatem jeszcze w czasie trwania bootcampu. Sam proces rekrutacji składał się z kilku części. Pierwszą z nich był egzamin z języka angielskiego prowadzony online. Druga część obejmowała test ze znajomości Javy i była realizowana w ten sam sposób. Trzecią część stanowił już właściwy egzamin przeprowadzony stacjonarnie. W jego trakcie najpierw odbył się krótki test z języka angielskiego, a w drugiej części trzeba było napisać aplikację konsolową zawierającą ściśle określone funkcjonalności. Bardzo pozytywnym aspektem tego egzaminu było to, że kandydat ostateczną decyzję otrzymywał w godzinę po zakończeniu tworzenia kodu.
Czy w Twojej pracy wymagana jest znajomość języka angielskiego? Na jakim poziomie?
Tak. Pracuję w firmie międzynarodowej, w której zespoły projektowe często składają się z osób wielu narodowości. Znajomość języka angielskiego jest tym samym niezbędna, aby móc się komunikować ze współpracownikami i efektywnie wykonywać swoje zadania. W tym języku prowadzona jest także komunikacja wewnątrzfirmowa. Pomijając to, należy oczywiście pamiętać o tym, że zdecydowana większość dokumentacji napisana jest po angielsku, przez co raczej nie ma możliwości niewykorzystywania angielskiego na co dzień.
Proces rekrutacji zakładał, że kandydaci znają język angielski na poziomie minimum B2. Wprawdzie podczas testów, o których wcześniej mówiłem, sprawdzano ogólną znajomość tego języka, jednak w trakcie wykonywania codziennych obowiązków konieczna jest znajomość terminologii dotyczących samego języka programowania, słownictwo charakterystyczne dla wykorzystywanych technologii, jak i dotyczące ogólnie branży IT oraz biznesu, dla którego wytwarza się oprogramowanie.
W jak dużym zespole pracujesz?
Na to pytanie nie mogę jeszcze odpowiedzieć. Aktualnie pracuję z kilkunastoma osobami, które zostały przyjęte razem ze mną. Kończymy okres nauki i przygotowań do wdrożenia do poszczególnych projektów, co nastąpi na przełomie roku. Dopiero wtedy będę wiedział, jaki jest skład zespołu i kim będą moi współpracownicy.
Pracujesz zdalnie?
Nie. Obecnie wszyscy spotykamy się w biurze w Gdańsku. Natomiast jak będzie po przejściu do projektu, to się dopiero okaże. Jednak ze względu na ogólną sytuację nie ma przeciwwskazań, żeby praca odbywała się w trybie zdalnym. Swoją drogą, mam wrażenie, że taki styl pracy w projektach IT powoli staje się normą.
Jak wyglądają dalsze plany co do rozwoju zawodowego?
Mija jedenasty miesiąc, odkąd zacząłem się uczyć programowania w języku Java. Trochę już umiem, ale zdecydowanie więcej muszę się nauczyć. Moje plany zakładają dalsze koncentrowanie się na poznawaniu tego języka i towarzyszących mu oraz uzupełniających go technologii. Kolejnym moim celem, po osiągnięciu stanowiska juniora, jest przejście na poziom mid. Chciałbym także za jakiś czas rozpocząć naukę innego języka programowania oraz poznać tajniki JavaScript i jednego z frameworków frontendowych. Niejako w tle tych wszystkich działań chciałbym także o jeden poziom podnieść moją znajomość języka angielskiego. W tym przypadku z pewnością dużym wsparciem będzie konieczność używania tego języka na co dzień.
Jakie rady mógłbyś dać świeżo upieczonym programistom?
Cóż, pewnie nie będę oryginalny, ale w mojej opinii najważniejsza jest wiara w siebie i wytrwałość. Nie raz będzie tak, że się czegoś nie zrozumie, wiedza gdzieś ucieknie bądź popełniać się będzie szkolne błędy. To będzie powodować zniechęcenie oraz powstawanie wątpliwości co do sensu dalszej nauki. Może zabrzmi to banalnie, ale prawdą jest, że nie liczy się wygranie bitwy, ale całej wojny. Dlatego nie należy się poddawać, tylko uczyć się dalej. Nie należy także zbytnio porównywać się do innych. Każdy rozwija się we własnym tempie i ważne, żeby być lepszym niż było się wczoraj. To samo odnosi się do rozmów rekrutacyjnych. Nawet jeśli takie spotkanie nie zakończy się sukcesem, to jest to swego rodzaju weryfikacja tego, co się wie, a czego nie. Tym samym wiadomo, czego należy się nauczyć bądź powtórzyć. Wierzę, że może małymi krokami, ale dojdzie się do celu.
Czy poleciłbyś naukę w infoShare Academy?
Zdecydowanie tak. Przede wszystkim dlatego, że zakres tematów poruszanych podczas kursu był naprawdę szeroki. Prawdę mówiąc, gdybym nie zapisał się na kurs, a uczył się samodzielnie z książek i internetu, wielu z zagadnień poruszanych na bootcampie prawdopodobnie bym w ogóle nie dotknął.
Po drugie, materiał podany został w sposób usystematyzowany, a zajęcia ułożone były w logicznej kolejności. Dzięki temu, przechodząc do nauki kolejnych zagadnień, miałem już bazę wiedzy, która pozwalała zrozumieć i przyswoić nowy materiał.
Dużą wartością był dla mnie także kontakt z praktykami, którzy przekazywaną podczas kursu wiedzę wykorzystują na co dzień w pracy. Nauka w iSA była dla mnie dobrym startem do rozpoczęcia pracy w branży IT.
Dzięki za rozmowę!
————–
Java to od wielu lat jeden z najpopularniejszych języków programowania. Dojrzałość Javy powoduje, że cały czas jest to jedna z najchętniej stosowanych technologii. Z badań StackOverflow wynika, że z tego języka korzysta na co dzień ponad 40% programistów na całym świecie. Wynika to w dużej mierze z tego, że kilkanaście lat temu wiele dużych systemów napisano właśnie w Javie, więc do dziś są one rozwijane i wspierane właśnie w tym języku. Jest to więc nadal niezwykle pożądany język programowania na rynku IT.
Dla kogo? W przypadku Javy bariera wejścia jest nieco wyższa niż np. w przypadku technologii frontendowych. To dobra ścieżka dla osób ambitnych, których nie przeraża ciężka praca, chcących pracować przy dużych i zaawansowanych projektach. Idealnym przykładem zastosowania Javy są systemy bankowe, oparte o dużą ilość zależności biznesowych i logiki. To droga pełna wyzwań, ale też satysfakcji – zarówno zawodowej, jak i finansowej.
👉 Weekendowy Bootcamp Java ze Springiem (przebranżowienie)
Przeczytaj: Czy Java jest dla Ciebie? >>