A jak nie to dla kogo?
Wątpliwości, mity i półprawdy
Co jakiś czas piszą do mnie kolejni znajomi z pytaniem, czy ten kurs IT jest porządny, czy ten język programowania jest najlepszy dla początkujących, czy praca programisty to siedzenie przed monitorem 8h dziennie i czy będą musieli nosić okulary i koszule w kratę.
Odpowiedzi na te pytania nie są proste, gdyż każdy jest inny i kierują nim inne ambicje, ale też każdy z nas lubi co innego i co innego mu przeszkadza. Nawet jeśli wiemy, że praca programisty to jest to, co chcemy robić w przyszłości (przynajmniej niedalekiej), to wciąż mamy wiele wątpliwości, które skutecznie chronią nas przed podjęciem decyzji. Ja te wątpliwości nazywam „wewnętrznymi demonami” ? i zaraz pomogę Ci je wypędzić.
Demon #1: Nie mam ścisłego umysłu, jestem słaby z matmy, nie ogarniam komputerów, nie poradzę sobie
Programowania naucza się już dzieci w wieku przedszkolnym. I w tym miejscu mógłbym zakończyć ten akapit, bo skoro przedszkolaki sobie radzą, to Ty chyba tym bardziej, ale jednak jest to blog i jestem tu po to, żeby pisać, a Ty — czytać.
Czy wszystkie dzieci w przedszkolu są dobre z matmy? No nie. Czy wszystkie wiedzą jak obsługiwać komputer? No nie. Bardzo częstym błędem jest łączenie programowania z matematyką. Owszem, ta umiejętność może się przydać, ale wcale nie jest kluczowa. Kluczowe jest logiczne myślenie.
Dzieci w wieku przedszkolnym nie są uczone programowania po to, aby każde z nich w przyszłości napisało innowacyjną aplikację. Są uczone dlatego, że właśnie to pomaga rozwijać logikę, która na pewno każdemu z nas bardzo się przyda w życiu.
A jeśli wydaje Ci się, że logika nie jest Twoją mocną stroną, to mam na to jedną, ale bardzo prawdziwą radę — trening czyni mistrza.
Wracając do matematyki… Dzisiejsze narzędzia pozwalają odciążyć nieco programistę, a wciąż rozwijająca się technologia sprawia, że po jego stronie jest przede wszystkim przemyślenie koncepcji oprogramowania (logika). Kodowanie jest tą prostszą częścią.
No dobra, ale skoro ciągle mówię o tych przedszkolakach, to zapewne teraz powiesz:
Demon #2: Jestem na to za stary
W ten sposób można bardzo łatwo wyrzucić do śmieci wszystkie swoje plany i marzenia. Jeśli ten wpis czytają osoby, które właśnie zastanawiają się nad kursem IT, a są w różnym wieku, to wszyscy mają takie same szanse. Młodzi mogą nieco szybciej pojmować nowe zagadnienia, ale za to starsi mają ze sobą doświadczenie. Obie te rzeczy tak samo pomagają w nabywaniu nowych umiejętności. Starsi natomiast mogą posiadać już jakieś oszczędności, które zabezpieczą ich podczas trwania kursu, a młodzi pewnie nie muszą się tym przejmować, bo w młodym wieku trzeba ponosić ryzyko, gdyż mniej nas ono kosztuje.
W szkoleniach, które prowadzę, uczestniczą osoby w bardzo zróżnicowanym wieku, a ta różnica może wynosić nawet 30 lat. Miałem naprawdę zdolnych 20-latków, jak i bardzo szybko pojmujących 40-latków. Najważniejsze, to zrozumieć, że wiek nie gra tu roli. Owszem, pracodawcy chętniej zatrudniają młodych, ale tak było od początku istnienia świata, więc w innych branżach może Cię czekać to samo. Argumenty stoją też po stronie starszych — pracodawcy wierzą, że takie osoby zostaną z nimi na dłużej.
Demon #3: Nie mam czasu
Ciekawe ile okazji nas ominęło za każdym razem, jak wypowiadaliśmy to zdanie! Czasu nie można mieć, wszyscy mamy go tyle samo. 24 godziny dziennie, czyli 1440 minut, czyli 86 400 sekund.
Spora część może nam umykać między palcami z wielu powodów, np. za długo śpimy, marnujemy znaczną część na przyjemności, jesteśmy źle zorganizowani. Nie musimy zaraz tego wszystkiego zmieniać. Ważne, że zmienimy chociaż to — poprawmy swoje nastawienie. Sposobów motywacji jest bardzo wiele (osobiście polecam podcast „Jak się motywować, gdy nie chce się nic robić”), ale jest coś, co pomaga, nawet gdy tej motywacji nam brakuje — rutyna. Jak każdego dnia zrezygnujemy z jednego odcinka ulubionego serialu i skupimy się na nauce, to z czasem może się okazać, że przynosi nam to więcej satysfakcji. Aby coś osiągnąć, trzeba z czegoś zrezygnować, więc zastanów się, ile czasu dziennie jesteś w stanie zaoszczędzić i przeznacz go na naukę.
Jeśli jesteś bardzo zdeterminowany, to możesz pójść krok dalej i zmniejszyć etat u obecnego pracodawcy. To pozwoli Ci przeznaczyć zaoszczędzony czas na pozyskanie umiejętności.
Demon #4: W pobliżu nie ma żadnych pracodawców z branży
Obecnie coraz więcej firm umożliwia pracę zdalną. Nie trzeba nigdzie jeździć, pracować można z dowolnego miejsca na Ziemi. Okres trwania koronawirusa udowodnił, że wiele firm świetnie sobie daje radę w takim trybie pracy. Takie podejście wymaga pewnej dyscypliny, ale jest to na tyle obszerny temat, że pewnie przeznaczę na niego oddzielny wpis.
Jeśli praca w domu nie jest dla Ciebie atrakcyjna albo po prostu lubisz mieć kontakt z ludźmi, to po prostu poszukaj ofert. W Internecie jest wiele witryn z ogłoszeniami, oferty można znaleźć w mediach społecznościowych, wakaty są nieodłączną częścią konferencji branżowych. Jak obecnie brakuje ofert, to poczekaj — zaraz się pojawią kolejne. Rynek naprawdę potrzebuje programistów (podobno w Polsce brakuje ich ponad 50 tys.).
Nie zamykaj się też na Polskę. Obcokrajowcy w branży IT to norma. W Unii Europejskiej jest podobno otwartych prawie milion stanowisk. Pewnie znajdzie się też miejsce dla Ciebie 😉
Jeśli przejrzałeś już wszystko, to może też warto rozważyć przeprowadzkę? W większych miastach łatwiej trafić na otwarte pozycje, a i pracę można szybciej zmienić.
Demon #5: Za dużo chętnych na to samo stanowisko
Ja wiem, że to artykuł o kursach IT, ale jeśli przed podjęciem decyzji o wzięciu udziału w kursie powstrzymuje Cię właśnie ta myśl, to wiedz, że bez podjęcia ryzyka nikt nigdy nie dostał pracy :). Skoro rozważasz udział w kursie, to o ryzyku już chyba co nieco wiesz. Ile jest takich osób, które przed wysłaniem CV się waha? Po prostu wciśnij przycisk „wyślij” i zdobądź przewagę nad tymi, którzy wciąż się wahają.
Liczba osób biorących udział w rekrutacji nie ma żadnego znaczenia. Ważne jest, jak Ty wypadniesz i jak się do niej przygotujesz, aby poszło Ci lepiej niż innym.
Dla pocieszenia mogę jeszcze dodać, że coraz więcej osób zamienia pracę fizyczną na umysłową. Świat idzie do przodu i zapotrzebowanie na tego typu pracowników będzie rosło. Praca programisty jest pracą kreatywną i daleko jej do bycia zastąpioną przez sztuczną inteligencję.
Demon #6: Kursy są za drogie
To prawda, do tanich nie należą, ale cena będzie tylko rosła. Prawo popytu i podaży — im więcej zainteresowanych, tym wyższa cena. Nie ma nic za darmo, a za jakość trzeba zapłacić.
Polecam spojrzeć na to z innej strony… Kurs, który szkoli na programistę totalnych laików, kosztuje około 10 tys. zł. Ta inwestycja zwróci się po podjęciu nowej pracy w 2, najwyżej 4 miesiące. Górne widełki dla programistów są na tyle wysokie, że po jakimś czasie będziesz mógł sobie pozwolić na taki wydatek co miesiąc.
Gdyby użyć kalkulatora i podzielić te 10 000 zł przez przeciętną długość takiego kursu wynoszącą około 300 godzin, to wyjdzie na to, że za godzinę nauki płacimy nieco ponad 30 zł. A ile kosztuje Twój karnet do siłowni, z której nie korzystasz? 😉
Wiele firm szkoleniowych ma też w ofercie różne sposoby finansowania. Być może uda Ci się z któregoś skorzystać. Pomóc może też najbliższa rodzina. Czasem wystarczy porozmawiać.
Ktoś może też powiedzieć — „przecież to wszystko jest w Internecie za darmo!”. Zgadza się. Ale to samo można powiedzieć o różnego rodzaju książkowych poradnikach, które jednak się sprzedają. Ucząc się samemu, najtrudniejsze kroki czekają Cię na początku, kiedy nie masz jeszcze wyczucia, co jest tak naprawdę ważne, a co jest mało wartościową ciekawostką. Stosując takie podejście, musimy mieć sporo czasu i cierpliwości, a przede wszystkim umieć dobrze wyszukiwać cenne informacje i rozróżniać je od tych mniej ważnych. Takie podejście jest zdecydowanie trudniejsze, i to właśnie oszczędność czasu i wysiłku jest tą ceną, którą płacisz za kurs IT. Jeśli jesteś w stanie się zmotywować i nauczyć się tego wszystkiego indywidualnie, ja to jak najbardziej pochwalam!
Obalę jeszcze jeden mit. Otóż programiści są często postrzegani jako samouki, którzy całą tajemną wiedzę wyssali z Internetu. Wbrew temu co pokazują w filmach (szczególnie o genialnych hakerach w pojedynkę wkradających się do systemów Pentagonu), jest to nieprawda — zdecydowana większość albo ukończyła odpowiednie studia, albo wzięła udział w kursie IT, albo nabyła wiedzę i umiejętności od kogoś z rodziny lub znajomego. Naprawdę niewielu przebyło tę drogę całkowicie samodzielnie.
Demon #7: Kurs okaże się ściemą i niczego się nie nauczę
Firm szkoleniowych pojawia się coraz więcej, ale na rynku pozostaną ci, którzy zaoferują wyższą wartość za te same pieniądze. To już nie te czasy, kiedy można było oszukać klienta i zwinąć interes. Internet jest bezlitosny i wszelkiego rodzaju serwisy z opiniami szybko weryfikują słabszych graczy.
Nie mogę oczywiście obiecać, że kurs będzie znakomity, ale na pewno warto poczytać komentarze na temat firm/szkół i popytać wśród znajomych. Opinia z pierwszej ręki może okazać się bardzo cenna i wartościowa. Dobrze jest postawić na sprawdzone firmy ze znaną marką, ale nie warto też przekreślać te mniejsze.
Ważnym elementem jest, aby na kursie nauczali praktycy. Takie osoby przekażą Ci wiedzę, która nie będzie przestarzała, a może nawet zarażą miłością do programowania 🙂
Teraz uwaga, bo przedstawię prawdopodobnie najważniejszą radę tego wpisu: aby się czegoś nauczyć, trzeba w to włożyć dużo wysiłku. Ja wiem, że to „oczywista oczywistość”, ale mam wrażenie, że niektórzy myślą, że opłacenie faktury za kurs IT było tym najtrudniejszym krokiem. Otóż nie — najtrudniejsze jeszcze przed nimi 🙂
Zrozumienie programowania może być z początku nie lada wyzwaniem. Nie chcę tu nikogo zniechęcić, ale ja miałem w swoim życiu taki moment „AHA!”, po którym już wszystko było dla mnie łatwiejsze. To, jak szybko do tego momentu dojdziesz, zależy tylko od tego, ile pracy wcześniej włożysz. Tak, ja wiem, wiele zależy też od nauczyciela, ale jego zadaniem jest przede wszystkim wprowadzić w temat i zainteresować. To Ty później musisz to przećwiczyć.
Pomimo tego, że ukończyłem studia informatyczne, moim głównym nauczycielem był Internet. Jak czegoś nie potrafiłem, to szukałem, czytałem, oglądałem tutoriale, próbowałem. Może czasem utknąłem z błędem na 2 dni, ale jak już go raz naprawiłem, to nigdy więcej go nie popełniłem 😉
Kolejna bardzo ważna kwestia — powtarzanie. Jedna z najistotniejszych rzeczy w programowaniu, a szczególnie na początku, kiedy jeszcze szybko wychodzimy z wprawy. Na kursach IT, które prowadzę, potrafię w ciemno wskazać, kto w domu powtarza materiały, a kto tego nie robi. Zaległości mają to do siebie, że lubią się kumulować, a my wtedy tracimy motywację i ogarnia nas poczucie, że nic nie rozumiemy. Nie doprowadź do tego, pracuj na bieżąco. Pogódź się z tym, zanim zdecydujesz się na kurs.
Demon #8: Nie wiem jaki rodzaj kursu wybrać
Wieczorowy, zaoczny, dzienny, zdalny, stacjonarny, bootcamp, przyspieszony, specjalistyczny… No właśnie, rodzajów kursów IT jest cała masa. Nie pomogę Ci w wyborze trybu zajęć, gdyż to zależy od Twojej sytuacji i preferencji, ale mogę nieco wyjaśnić inne kwestie.
Bootcamp różni się od kursów standardowych przede wszystkim długością trwania. Trwa on przeważnie ponad 300 godzin na przestrzeni od 3 do 6 miesięcy i jest przeznaczony dla osób, które dopiero zaczynają przygodę z programowaniem. Po takim kursie nie będziesz drugim Zuckerbergiem, ale będziesz mógł podjąć pracę jako junior. Przekazana Ci wiedza powinna pokryć wszystkie najważniejsze technologie, które wykorzystasz w pracy oraz nauczy Cię obsługi narzędzi i procesów wykorzystywanych w branży IT.
Czasem takie kursy kończą się gwarancją pracy, ale nie przywiązywałbym do tego szczególnej uwagi. Twój sukces zależy tylko od Ciebie i tego, jak wiele pracy włożysz w swój rozwój.
Są też kursy skoncentrowane na konkretnej technologii. Skupiają się one na jednym języku programowania i rzeczy z nim związanych. Charakteryzują się krótszym czasem trwania (poniżej 100 godzin), ale pozwalają dość dobrze poznać pewien wycinek z ogromnego zbioru rozmaitych technologii. Taki kurs mogę polecić osobom, które są zdecydowane na konkretny język programowania, ale biorą na siebie odpowiedzialność nauki pobocznych umiejętności, które przydadzą się w przyszłej pracy.
Zostają jeszcze kursy specjalistyczne, ale one są przeznaczone dla obecnych programistów i nie będziemy się nimi zajmowali w tym artykule.
Demon #9: Nie wiem, który język programowania jest najlepszy
Zacznę od tego, że nie ma czegoś takiego jak „najlepszy” język programowania. Wszystkie się od siebie różnią i mogą mieć różne zastosowania. To dokładnie tak samo jak z samochodami — jeden woli duży i pojemny, drugi mały i szybki, a jeszcze inny wysoki i bezpieczny.
Najbardziej popularne języki programowania typu Python, Java, C#, JavaScript mają bardzo szerokie możliwości. Wiele z nich znajdzie zastosowanie w tych samych obszarach. Mniej popularne języki mają węższy wachlarz zastosowań, przez co konkurencyjność programistów jest mniejsza, ale też mniejsza jest liczba ofert na rynku.
Ważne jest, aby traktować języki programowania jak narzędzie pracy. Nie zamykaj się na jeden, naucz się wielu — tacy programiści są na rynku pracy najcenniejsi. Nauka kolejnych jest tym szybsza, im więcej ich znasz. Wyobraź sobie hydraulika, który umie posługiwać się tylko śrubokrętem. Czy byłbyś zadowolony z jego pracy? 😉 Oczywiście nie mówię, że masz odwlekać składanie CV, bo nie znasz co najmniej kilku języków programowania. Zwracam tylko uwagę na to, że z czasem będziesz ich poznawał coraz więcej i to właśnie ich znajomość zacznie zbliżać się do zostania ekspertem. Dobry programista używa na co dzień więcej niż jednego języka i sprawnie potrafi się między nimi przełączać. Nie myśl o tym za dużo — na kolejne języki przyjdzie czas. Teraz skup się na jednym, do wszystkiego trzeba dojść metodycznie.
Powtórzę jeszcze raz, żebyśmy się dobrze zrozumieli… Nie wybór konkretnego języka programowania jest najważniejszy. Najważniejsze jest zacząć się uczyć programowania, bo koszt nauki kolejnego języka jest dużo niższy, niż koszt zrozumienia programowania w ogóle.
Demon #10: Nie wytrzymam tyle przed monitorem, ta praca jest niezdrowa dla organizmu
O ile zgodzę się, że siedzenie cały dzień przed monitorem nie należy do najzdrowszych czynności na świecie, o tyle nie zgodzę się, że na tym polega ta praca. Programista poświęca tylko skrawek swojego czasu na rzeczywiste rozwijanie oprogramowania. Sporą część dnia zajmuje komunikowanie się ze współpracownikami, czytanie dokumentacji i szukanie rozwiązań, spotkania. Nie zapominajmy oczywiście o przerwie na lunch ;). Proporcje trwania tych poszczególnych części są mocno zależne od firmy, projektu i formy pracy, ale generalnie jest wiele sytuacji, w których wcale nie siedzimy nieruchomo przez kilka godzin przed komputerem.
Ze swojego doświadczenia muszę przyznać, że im dłużej się jest w tej branży, tym mniej się koduje, a więcej rozmawia. Z czasem myślimy coraz bardziej wysokopoziomowo i rzadziej piszemy kod, a więcej obmyślamy nad architekturą aplikacji (a to wymaga koordynacji z wieloma osobami).
Warto także dodać, że normą w branży (a wręcz obowiązkiem pracodawcy) są bardzo wygodne ergonomiczne krzesła, a czasem także elektrycznie podnoszone biurka, które pozwalają na pracę w pozycji stojącej. To od nas zależy, jak będziemy dbać o postawę, i w którym miesiącu pracy zacznie nas boleć kręgosłup podczas wiązania buta.
Praca przy komputerze nie jest już domeną pracowników IT — komputery są wykorzystywane w wielu innych branżach i stają się nieodłącznym kompanem w wielu firmach.
Moja mała rada, którą stosuję: pić dużo wody i nie zapełniać kubka po brzegi. Dzięki temu częściej będziemy musieli wstać i uzupełnić szkło, a przez to też częściej wstać i pozbyć się płynów 😉 W ten sposób potrafię w pracy zrobić kilka tysięcy kroków dziennie.
Wspomnę jeszcze o tych słynnych hamakach i konsolach do grania. Tak, wielu pracodawców ma to w ofercie, ale zdecydowanie nie można się tym kierować przy wyborze firmy. Pokoje relaksu, minisiłownie, sale gamingowe, planszówki, PlayStation, ping-pong, bilard… Te wszystkie atrakcje można znaleźć w przestrzeniach biurowych do dyspozycji pracowników. To bardzo atrakcyjne benefity, które trzeba traktować jako dodatki pozwalające oderwać się czasem od intensywnej, umysłowej pracy, ale w praktyce rzadko się z nich korzysta. Pozwalają natomiast budować bliższe relacje ze współpracownikami i świetnie integrują zespoły, co mocno wpływa na panującą w pracy atmosferę i pozwalają czerpać przyjemność z pracy.
Ostateczna odpowiedź
No właśnie… Myślę, że na tym etapie już udało Ci się podjąć decyzję, albo chociaż rozwiać wątpliwości. Starałem się zwrócić uwagę na różne aspekty, które mogą powstrzymywać Cię przed zrobieniem kolejnego kroku, ale ten krok należy już tylko do Ciebie :). Takiej decyzji nikt za Ciebie nie podejmie.
Po raz ostatni jeszcze zaakcentuję, jak ważne są zaangażowanie i regularna praca. Bez tych czynników sam kurs IT nie zrobi z Ciebie programisty.
Na koniec muszę przyznać, że naprawdę Ci zazdroszczę! Początki są bardzo ekscytujące — te momenty oświecenia i pierwsze działające linijki, satysfakcja z naprawienia błędu po 2 dniach debugowania oraz ten uczuć, gdy Ty mówisz komputerowi, co ma robić, a on to robi! Bezcenne 🙂
Kiedy będę już za stara na robienie zdjęć… zawsze mogę nauczyć się czegoś nowego! Super napisane!
Konkretny przekaz ! Bardzo fajnie napisane ??
Everything is very open with a precise clarification of the challenges. It was really informative. Your website is useful. Thanks for sharing!