Spis treści
- 1. Początki
- 2. Metody nauki
- 3. Nastroje na rynku IT
- 4. Poszukiwanie pracy
- 5. Refleksje
- 6. Wskazówki i materiały
Podziel się wpisem ze znajomymi!
KODOWANIE SWOJEJ ŚCIEŻKI IT
OD INŻYNIERA LOKALIZACJI DO JUNIOR SOFTWARE DEVELOPERA
Zmiana ścieżki kariery w kierunku IT to podróż pełna niepewności, wyzwań, ale także satysfakcji i osobistego rozwoju. Poniżej historia Macieja Drzewka, w której przedstawił on swój proces przebranżowienia się z inżyniera lokalizacji (czyli tak naprawdę całkowicie spoza branży IT) do Junior Software Developera. W artykule opis trasy wybrukowanej ciekawością, pasją do technologii i chęcią ciągłego uczenia się. Mimo braku bezpośredniego doświadczenia w IT i wykształcenia niezwiązanego z branżą, ale zainteresowaniem komputerami i programowaniem od najmłodszych lat, Maciej postawił na swoje i zdobył swoją wymarzoną pracę programisty.
Opowiemy o wyborach, przeszkodach, z którymi musiał się Maciej zmierzyć, oraz o tym, co okazało się kluczem do sukcesu. Wskażemy również, dlaczego, mimo wielu trudności, warto było podjąć to wyzwanie i jak Maciej patrzy na swoją decyzję po około roku pracy jako programista. Jest to historia o pasji do technologii, determinacji i ciągłym dążeniu do rozwoju, która mam nadzieję, zainspiruje innych do podążania własną ścieżką w IT oraz udowodni, że choć rynek może rzucać kłody pod nogi, to nie należy się poddawać i dążyć do swoich celów.
Trudny początek, który okazał się celnym strzałem
Ile miałeś lat, gdy udało Ci się przebranżowić? Co skłoniło Cię do rozważenia zmiany ścieżki kariery, dlaczego wybrałeś IT?
Miałem 28 lat, gdy udało mi się zostać programistą, uprzednio nie mając żadnego wykształcenia kierunkowego ani doświadczenia w IT. Moja decyzja o przebranżowieniu i rozpoczęciu kariery w programowaniu nie była impulsywna. Przez lata pracy jako inżynier lokalizacji zdobyłem cenne doświadczenie i umiejętności, jednak w pewnym momencie stwierdziłem, że czas na zmiany i najwyższa pora na spróbowanie swoich sił w programowaniu. Tym bardziej, że od zawsze fascynowało mnie IT.
Jakie były Twoje główne wyzwania podczas przebranżowienia się na programistę?
Rozważając zmianę kariery, stanąłem przed wieloma trudnościami. Największym z nich był brak formalnego wykształcenia informatycznego i doświadczenia programistycznego. W dodatku, zmiana branży w wieku, który społeczeństwo często uznaje za "za późno" na tak radykalne decyzje zawodowe, mogła wydawać się ryzykowna (pomijając fakt, że całkowicie nie rozumiem osób, które uważają, że po przysłowiowej 40-ce czy nawet 30-ce nie da się znaleźć pracy). Jednak po głębokim namyśle, zdecydowałem, że to najlepszy moment na taką zmianę.
Wsparcie rodziny i przyjaciół, a także pozytywne historie osób, które również zdecydowały się na podobny krok, zmotywowały mnie do działania. Zrozumiałem, że kluczem do sukcesu będzie ciągłe kształcenie się, otwartość na nowe wyzwania i gotowość do wyjścia ze strefy komfortu. Podjęcie decyzji o zmianie ścieżki kariery było dla mnie momentem przełomowym, który otworzył nowy rozdział w moim życiu zawodowym. Był to krok, który wymagał odwagi, determinacji i ciężkiej pracy, ale także decyzja, która przyniosła mi nie tylko zawodową satysfakcję, ale i potwierdzenie, że nigdy nie jest za późno na realizację swoich marzeń zawodowych.
Jakie technologie i narzędzia są kluczowe w Twojej codziennej pracy?
Pracuję jako programista nad Adobe Experience Manager (AEM), którego domena wymaga od programisty znajomości i umiejętności w zakresie różnorodnych technologii i narzędzi. Podstawą mojej pracy jest Java – język, w którym tworzone są serwerowe komponenty AEM. Java pozwala na tworzenie skalowalnych i wydajnych rozwiązań, które są kluczowe dla systemów CMS.
W projekcie mam również do czynienia z warstwą wizualną aplikacji, czyli front-endem, a do takiej pracy niezbędne są umiejętności w HTML i CSS. Te języki znacząco wpływają na wygląd i użytkowanie strony, co jest istotne przy tworzeniu spersonalizowanych doświadczeń dla użytkowników. Znajomość tych technologii pozwala mi efektywnie współpracować z zespołem designerskim i szybko implementować wizualne aspekty projektów.
Oprócz tego, w mojej codziennej pracy korzystam również z HTL (HTML Template Language), który ułatwia bezpieczne i efektywne tworzenie dynamicznego contentu w AEM. HTL, jako następca JSP (JavaServer Pages), pozwala na oddzielenie logiki biznesowej od prezentacji, co jest zgodne z najlepszymi praktykami w rozwoju oprogramowania..
Czy są jakieś narzędzia lub technologie, które szczególnie pomogły Ci w pracy jako programista Javy?
W codziennej pracy wykorzystuję również narzędzia takie jak Maven do zarządzania zależnościami projektu i budowania aplikacji. Znajomość Dockera pozwala mi na łatwe uruchamianie i testowanie aplikacji w izolowanych środowiskach. Korzystam także ze Springa, który wspiera mnie w tworzeniu bardziej złożonych aplikacji w Javie, oferując rozbudowane wsparcie dla różnych wzorców projektowych i mechanizmów integracji.
Praca z AEM to nie tylko znajomość samego systemu zarządzania treścią, ale również umiejętność pracy z szerokim zestawem technologii i narzędzi. Java, HTML, CSS, HTL, Maven, Docker oraz Spring to tylko niektóre z technologii, które na co dzień wspierają mnie w tworzeniu skutecznych i efektywnych rozwiązań dla moich klientów, pozwalając na ciągły rozwój i doskonalenie moich umiejętności w dynamicznym środowisku IT.
Dlatego obecnie uważam, że must-have dla osoby, która chce zostać programistą Javy jest: bardzo dobra znajomość języka, umiejętność posługiwania się frameworkami (jak np. Spring / HTL) oraz dodatkowymi rozwiązaniami jak: Maven, Docker, HTML, CSS czy rozwiązania cloudowe (np. AWS).
Wiele metod nauki, a tylko kilka skutecznych
Jak rozpocząłeś swoją naukę programowania?
Rozpoczynając przygodę z programowaniem, kluczowe jest zrozumienie, że solidne fundamenty teoretyczne są równie ważne jak praktyczne umiejętności kodowania. Podstawą jest nauka języków programowania, które stanowią narzędzia pracy każdego dewelopera. W moim przypadku, pierwszym krokiem była Java – język charakteryzujący się silnym typowaniem i wszechstronnością, co czyni go doskonałym wyborem dla początkujących, jak i zaawansowanych programistów.
Opanowanie HTML i CSS jest niezbędne dla zrozumienia, jak tworzone są strony internetowe i jak można manipulować ich wyglądem oraz zachowaniem. HTML odpowiada za strukturę strony, podczas gdy CSS pozwala na stylizację i prezentację treści w przeglądarce. I choć w obszarze, w którym się specjalizuje HTML & CSS są raczej opcjonalnymi rozwiązaniami do nauki, tak zdecydowałem się również na ich opanowaniu z racji, że lubię również mieć wpływ na to, jak wyglądać będzie front-endowa część moich aplikacji.
Ważnym aspektem nauki programowania jest również zrozumienie algorytmów i struktur danych. Pozwala to na efektywniejsze rozwiązywanie problemów oraz optymalizację kodu. Wiedza na temat algorytmów, takich jak sortowanie czy wyszukiwanie, oraz umiejętność pracy ze strukturami danych, takimi jak listy, tablice, stosy i kolejki, jest fundamentem umiejętności programistycznych.
Równie ważne jest zapoznanie się z koncepcjami programowania obiektowego (OOP), które dominuje w wielu językach i projektach programistycznych. OOP opiera się na klasach i obiektach, umożliwiając organizację kodu w sposób bardziej intuicyjny i zbliżony do realnego świata, co ułatwia zarządzanie dużymi projektami i współpracę w zespołach.
Opanowanie tych podstawowych elementów stanowi fundament, na którym można budować dalszą wiedzę i specjalizować się w konkretnych technologiach czy narzędziach, takich jak Adobe Experience Manager. Podstawy nauki programowania to nie tylko nauka składni czy języków, ale przede wszystkim rozwijanie sposobu myślenia, który umożliwi rozwiązywanie problemów i tworzenie efektywnych rozwiązań programistycznych. Osobiście początkowo skupiłem się na samodzielnej nauce Javy, korzystając z kursów online i dokumentacji technicznej. Następnie, aby przyspieszyć naukę i zyskać bardziej ustrukturyzowane wprowadzenie do programowania, zdecydowałem się na udział w mentoringu.
Jak zorganizowałeś swoją praktykę programistyczną, aby rozwijać umiejętności?
Po opanowaniu podstawowych koncepcji programowania, kluczem do dalszego rozwoju są praktyka i ciągłe doskonalenie umiejętności. Moja praktyka rozpoczęła się od prostych zadań programistycznych, które z czasem ewoluowały w bardziej złożone projekty. Aktywne kodowanie i realizacja konkretnych projektów stanowiły fundament, na którym mogłem budować i rozwijać moje kompetencje programistyczne. Jedną z metod, która znacząco przyspieszyła mój rozwój, było codzienne programowanie.
Nawet krótkie, codzienne sesje kodowania pomagały mi utrwalać wiedzę i z czasem stawać się coraz bardziej płynnym w używaniu języka Java, a także innych technologii. Stawianie sobie małych, realizowalnych celów pozwalało mi na stopniowe zwiększanie złożoności projektów i lepsze zrozumienie zaawansowanych aspektów programowania.
Dodatkowo wszystko zwieńczyłem projektem do portfolio zbudowanym z mentorem (o czym więcej w dalszej części artykułu).
Bardzo przydatne okazało się również robienie na bieżąco notatek w formie roadmapy. Pomogła mi ona efektywnie przygotować się do rozmów rekrutacyjnych oraz przechowywać w jednym miejscu wszystko, czego się dowiedziałem. Link do tej, którą sam przygotowałem, udostępniam na końcu artykułu.
Co było kluczowe w Twojej nauce programowania?
Kluczowe było również rozwiązywanie problemów i pracowanie nad własnymi projektami. Start od prostych zadań programistycznych, dostępnych na platformach takich jak HackerRank, umożliwił mi praktyczne zastosowanie teoretycznej wiedzy. Z czasem przeszedłem do bardziej złożonych projektów, które wymagały nie tylko kodowania, ale również planowania, projektowania architektury i implementacji. Aktywny udział w społeczności IT, czy to przez uczestnictwo w forach, czytanie dokumentacji i korzystanie z materiałów naukowych na Udemy, FreeCodeCamp oraz z Baeldung również mocno pomogły mi w nauce programowania.
Nie mniej ważne było ciągłe kształcenie i aktualizacja wiedzy. Technologia szybko się rozwija, a nowe narzędzia i biblioteki są wprowadzane na rynek w alarmującym tempie. Regularne śledzenie trendów w IT, uczestnictwo w kursach online, czytanie książek i artykułów branżowych pomagało mi nie tylko utrzymać wiedzę na bieżąco, ale także inspirowało do eksplorowania nowych obszarów. Podsumowując, praktyka i ciągły rozwój umiejętności w programowaniu wymagają dedykacji, cierpliwości i gotowości do ciągłego uczenia się. Moje doświadczenie pokazuje, że systematyczna praca, wytrwałość i otwartość na nowe wyzwania są kluczowe dla osiągnięcia sukcesu w dynamicznie zmieniającym się świecie technologii.
Tak więc puentując, w mojej nauce programowania bardzo istotna była:
- Dyscyplina, która pozwoliła mi osiągnąć efekt "małych kroków"
- Liczne zadania, projekty oraz rozbudowany projekt do portfolio zbudowany z moim mentorem, do którego linki znajdziesz na moim GitHubie: https://github.com/m-drzewko?tab=repositories
Efekt "małych kroków". W rozwoju i osiąganiu sukcesu najważniejsza jest dyscyplina i strategiczna realizacja kolejnych celów. Nie chodzi o ilość, a jakość i sumienność w pracy.
Jednak trzeba mieć na uwadze jedno zagrożenie... tutorial hell!
To wszystko, co wskazałem wyżej w teorii brzmi super, ale prawda jest taka, że w pewnym momencie mojego rozwoju, wpadłem w tzw. "tutorial hell". Wiedziałem, że praca nad projektami, ciągłe doskonalenie się w technologiach jest kluczowe dla przebranżowienia, ale w pewnym momencie doszedłem do sufitu w rozwoju, przez który ciężko mi było się przebić.
Rozwiązaniem tego problemu był dla mnie mentoring, który zasadniczo wpłynął na moją karierę w IT, oferując spersonalizowane podejście do nauki, które dopasowane było do moich potrzeb i celów. W tym kluczowym momencie mojego rozwoju, wsparcie otrzymałem od Devs-Mentoring - firmy, która dzięki bezpośredniemu kontaktowi z doświadczonym mentorem pozwoliła mi na szybsze przezwyciężenie początkowych trudności i nauczyła mnie, jak efektywnie pracować oraz rozwijać swoje umiejętności w praktyce. Dzięki mentoringowi miałem dostęp do cennych rad, motywacji i inspiracji od kogoś, kto już osiągnął sukces w branży. Możliwość zadawania pytań, dyskutowania problemów i uczenia się na realnych projektach znacznie przyspieszyła mój rozwój. Ponadto, mentor z Devs-Mentoring pokazał mi wartość ciągłego doskonalenia i nauczył, jak adaptować się do dynamicznie zmieniającego się świata technologii. Dodatkowo mentor pomaga zorganizować proces nauki, ale też wspiera w konkretnych problemach, co jest niezwykle cenne w drodze do zmiany kariery.
Czy są jakieś wyjątkowe lekcje lub rady od mentora, które miały na Ciebie największy wpływ?
Mentoring otworzył mi drzwi do społeczności IT, pomagając zbudować sieć kontaktów zawodowych, co miało ogromne znaczenie dla mojej dalszej kariery. Dzięki rekomendacjom i wprowadzeniu do projektów open-source, miałem szansę na rozwój i zdobycie nowych doświadczeń wśród innych profesjonalistów. Mentoring był kluczowy nie tylko dla mojego technicznego rozwoju, ale także dla zrozumienia branży i budowania zawodowych relacji. Ta inwestycja w rozwój zarówno zawodowy, jak i osobisty, okazała się nieoceniona, otwierając przede mną nowe możliwości i przyspieszając moją ścieżkę kariery w IT.
Teraz patrząc na wszystko z perspektywy minionego czasu, jestem w stanie śmiało stwierdzić, że prawdopodobnie nie udałoby mi się przebranżowić lub zajęłoby to znacznie dłużej, gdybym nie zdecydował się na współpracę z moim mentorem - Krzyśkiem.
Ryzyko pracy w IT i nastroje wśród Juniorów
Jakie specyficzne ryzyka i wyzwania wiążą się z pracą w branży IT, o których powinni wiedzieć początkujący?
Praca w branży IT wiąże się z szeregiem wyzwań i ryzyk, które są nieodłączną częścią tej dynamicznie rozwijającej się dziedziny. Jednym z głównych ryzyk jest ciągła potrzeba aktualizacji wiedzy i umiejętności. Technologia ewoluuje w zawrotnym tempie, a to, co było aktualne kilka lat temu, dziś może być już przestarzałe. Dla profesjonalistów IT oznacza to konieczność ciągłego uczenia się i dostosowywania do nowych narzędzi, języków programowania czy metodyk pracy.
Innym aspektem ryzyka jest presja czasu i wysokie oczekiwania dotyczące dostarczania projektów. Praca nad złożonymi projektami często wiąże się z napiętymi harmonogramami i wymogiem szybkiego rozwiązywania problemów, co może prowadzić do stresu i wypalenia zawodowego. Dodatkowo, branża IT często oferuje możliwość pracy zdalnej, co dla wielu jest zaletą, ale może też stanowić wyzwanie w zakresie samodyscypliny i zarządzania czasem pracy.
Bezpieczeństwo informacji to kolejne ważne ryzyko w pracy w IT. Z wzrostem cyberataków i naruszeń danych, profesjonaliści IT muszą nie tylko chronić infrastrukturę i dane swoich firm, ale również być na bieżąco z najlepszymi praktykami w zakresie cyberbezpieczeństwa.
Pomimo tych ryzyk, praca w IT oferuje również szereg korzyści, takich jak możliwość pracy nad innowacyjnymi projektami, szybka ścieżka kariery i atrakcyjne wynagrodzenie. Ważne jest, aby być świadomym wyzwań oraz rozwijać strategie ich minimalizowania, takie jak planowanie ścieżki rozwoju zawodowego, dbanie o równowagę między pracą a życiem prywatnym oraz budowanie solidnej sieci wsparcia zawodowego.
Co sądzisz o obecnej narracji wśród Juniorów, którą się obserwuje na rynku?
W obecnej narracji, zwłaszcza w grupach społecznościowych skupiających osoby szukające pracy na poziomie juniora, dominuje pesymizm. Niektórzy twierdzą, że na wejście na rynek jest już za późno, co może wynikać zarówno z rzeczywistych przekonań, jak i z ludzkiej zawiści, mającej na celu zniechęcanie potencjalnej konkurencji. Rozmowy z moim mentorem, który przebranżawiał się kilka lat temu, wskazują, że wcześniej było to łatwiejsze. Obecnie, wymagania dla pozycji juniorskich są znacznie wyższe, porównywalne z tymi dla pozycji mid-level sprzed kilku lat. Konkurencja jest ogromna, a wymagania rynku wzrosły, co nie oznacza, że sukces jest niemożliwy. W moim przypadku, potrzebne było dużo samozaparcia i szczęścia, choć uważam, że szczęście też nie przyszło znikąd, a z mojej sumienności i zaciętości w poszukiwaniu pracy. Obecnie musimy się przede wszystkim uzbroić w cierpliwość, zbudować samodzielnie lub z pomocą kogoś doświadczonego solidną strategię na rozwój i się jej trzymać.
Skoro mówisz o zaciętości, to ile czasu potrzebowałeś, aby się przebranżowić?
Zaangażowanie w proces szukania pracy trwało około 5 miesięcy, od momentu, gdy zacząłem aktywnie wysyłać CV. Aby jednak móc w ogóle rozsyłać CV, potrzebowałem przepracować z moim mentorem solidny rok, a wcześniej jeszcze sam prowadziłem swoją naukę programowania przez kilka miesięcy.
Tak więc sumarycznie, zajęło mi to ponad 1.5 roku.
Konfrontacja z rynkiem pracy
Jak wyglądał Twój proces rekrutacji?
Przyjęcie do świata IT nie było dla mnie prostą ścieżką, co odzwierciedla obserwacje wielu, którzy mówią o końcu "El Dorado" w branży IT. W oparciu o moje doświadczenia, proces aplikacyjny okazał się być rzeczywistym wyzwaniem, pokazującym, że czasy, gdy praca w IT była dostępna niemal od ręki, już minęły. Przejście przez proces rekrutacyjny było trudnym, ale pouczającym doświadczeniem, które zakończyło się sukcesem po około pięciu miesiącach intensywnego szukania pracy i aplikowania.
Wysłanie około 90 CV przyniosło ograniczoną ilość odpowiedzi – jedynie 6 firm zdecydowało się na dalszy kontakt, co doprowadziło do otrzymania zadań rekrutacyjnych i zaproszeń na rozmowy kwalifikacyjne. Spośród tych procesów, pięć przeszło do etapu bezpośrednich rozmów, a tylko jeden zakończył się sukcesem (otrzymałem pracę w Ergo Technology & Services), otwierając przede mną drzwi do dalszej kariery w IT.
Zadanie rekrutacyjne, które otrzymałem…
Zadaniem rekrutacyjnym, które otrzymałem, było stworzenie prostej aplikacji webowej obliczającej ciąg liczb pierwszych. Zadanie brzmi na dość proste, jednak największym haczykiem w nim była konieczność wprowadzenia różnych optymalizacji i zaprojektowania architektury kodu tak, aby kod spełniał wszystkie reguły zasad SOLID i programowania webowego. To zadanie umożliwiło mi pokazanie umiejętności kodowania oraz zaprezentowania podstawowych koncepcji web developmentu. Dodatkowo, po zaakceptowaniu rozwiązania przez rekruterów, musiałem zmierzyć się z pytaniami na rozmowie technicznej, gdzie na szczęście udało mi się solidnie zaprezentować.
Cały proces szukania pracy był dla mnie lekcją wytrwałości i zrozumienia rynku pracy w technologii w nowej rzeczywistości, gdzie konkurencja i wymagania od kandydatów do pracy są bardzo wysokie. Każde odrzucenie stawało się kolejnym krokiem do lepszego dostosowania mojego CV i sposobu prezentacji, co z czasem zaowocowało pozytywnym wynikiem. Zrozumiałem, jak ważne jest, aby nie tylko skupiać się na umiejętnościach technicznych, ale również na umiejętności adaptacji do szybko zmieniających się wymagań i oczekiwań pracodawców w branży IT.
Rynek pracy w IT wymaga nie tylko ciągłego doskonalenia technicznego, ale także rozwoju umiejętności miękkich, takich jak komunikacja, praca zespołowa i zarządzanie czasem. Moje doświadczenie pokazało, że sukces w tej dziedzinie jest możliwy, jednak wymaga cierpliwości, gotowości do nauki i otwartości na feedback, co ostatecznie pozwala na znalezienie miejsca w dynamicznie rozwijającej się branży technologicznej mimo coraz trudniejszej sytuacji na rynku pracy.
Refleksje nad pracą w IT
Patrząc wstecz, jak oceniasz swoją decyzję o przebranżowieniu się na programistę?
Po około roku pracy w branży IT, moje refleksje nad tym doświadczeniem są głęboko zakorzenione w zrozumieniu dynamiki i nieprzewidywalności tej ścieżki zawodowej. Praca w IT, choć pełna wyzwań, przynosi równie wiele satysfakcji i możliwości rozwoju.
Jednym z kluczowych wniosków jest to, jak szybko zmienia się technologia i jak ważna jest elastyczność oraz gotowość do ciągłej nauki. Praca nad projektami, takimi jak Adobe Experience Manager, ujawniła mi wielowymiarowość branży IT, gdzie innowacje i rozwiązania problemów idą w parze z codziennym rozwojem umiejętności.
Zrozumiałem także, że droga do zostania programistą nie jest liniowa i wymaga ciągłego dostosowywania się do nowych warunków oraz wyzwań. Sukces w IT to nie tylko znajomość najnowszych technologii, ale także umiejętność pracy w zespole, komunikacja i zdolność do szybkiego rozwiązywania problemów.
Refleksja ta dotyka również znaczenia równowagi między życiem zawodowym a prywatnym. Branża IT jest znana z napiętych terminów i projektów wymagających intensywnej pracy, co nauczyło mnie, jak ważne jest znalezienie czasu na odpoczynek i regenerację, aby utrzymać wysoką efektywność i zapał do pracy.
Zarobki w mojej pierwszej pracy nie są oszałamiające, jednak zdaję sobie sprawę, że w branży programowania jest ogromna możliwość na bardzo wysokie skalowanie pensji, do czego dążę. Na co dzień pracuję zdalnie, choć we wcześniejszej pracy miałem już taką możliwość, więc nie jest to dla mnie duża zmiana.
Moje wskazówki dla przyszłych programistów
Przekraczając próg branży IT i zdobywając doświadczenie jako programista, chciałbym podzielić się kilkoma radami, które mogą okazać się pomocne dla osób aspirujących do roli w tej dynamicznej i wymagającej dziedzinie:
1. Nigdy nie przestawaj się uczyć: Technologia rozwija się w zawrotnym tempie, więc ciągła nauka i aktualizacja umiejętności są kluczowe. Znajdź obszary, które Cię pasjonują, i śledź najnowsze trendy oraz technologie w tych dziedzinach.
2. Praktyka jest niezastąpiona: Teoria i podstawowa wiedza są ważne, ale to praktyczne doświadczenie programowania przynosi największą wartość. Pracuj nad własnymi projektami, uczestnicz w hackathonach lub dołącz do open-source'owych projektów, aby zyskać praktyczne umiejętności i budować portfolio.
3. Buduj sieć kontaktów: Świat IT to nie tylko technologie, ale również ludzie. Networking może otworzyć przed Tobą nowe możliwości, zarówno w kwestii nauki, jak i potencjalnych ofert pracy. Dołącz do społeczności IT, grup tematycznych czy uczestnicz w branżowych wydarzeniach.
4. Rozwijaj umiejętności miękkie: Umiejętności techniczne to fundament, ale w pracy zespołowej równie ważne są komunikacja, umiejętność pracy w grupie i zarządzanie czasem. Pracodawcy cenią programistów, którzy potrafią skutecznie współpracować i przekazywać swoje pomysły.
5. Znajdź mentora: Wsparcie doświadczonego mentora może znacznie przyspieszyć Twój rozwój, dostarczając bezcennych rad i wskazówek. Mentor może również pomóc Ci w nawigacji po branży IT i doradzić w kwestii planowania kariery. Tak, jak wspomniałem - uważam, że niemożliwe lub bardzo trudne by było przebranżowienie w moim przypadku, gdybym nie zdecydował się na współpracę z kimś doświadczonym z branży. Oferta mentoringu, z którego korzystałem znajduje się tutaj: https://devs-mentoring.pl/
6. Podejmuj wyzwania: Nie bój się trudnych zadań i projektów. To właśnie one oferują najlepszą okazję do nauki i rozwoju. Podejmowanie wyzwań buduje Twoją odporność i uczy kreatywnego rozwiązywania problemów.
7. Dbaj o równowagę: Zapewnienie sobie czasu na odpoczynek i regenerację jest kluczowe dla długotrwałej kariery
8. Zapewnij sobie komfort psychiczny w trakcie nauki: Nie chodzi o to, aby od razu rzucić pracę i rozpocząć naukę full time z ryzykiem szybkiego wyczerpania się poduszki finansowej. Nauka programowania to proces długotrwały, w którym to psychika gra bardzo ważną rolę, dlatego zapewnij sobie spokój ducha w trakcie rozwoju.
Dodatkowe źródła
W wywiadzie wspominałem o następujących źródłach nauki, z których korzystałem:
- Moje indywidualne roadmapy z merytoryką, którą przygotowałem znajduje się do pobrania tutaj oraz tutaj
- Polecany przeze mnie serwis z różnymi kursami do nauki freeCodeCamp oraz Baeldung
- Strona z różnymi zadaniami programistycznymi: HackerRank