69

Nauka programowania – jak zacząć uczyć się zawodów przyszłości

Programowanie to dla osób, które nie mają nic wspólnego z tą dziedziną coś w rodzaju wiedzy magicznej, tajemnej - niezdatnej do nauczenia się przez "zwykłego śmiertelnika". Co więcej, osoby, które tę sztukę posiadły są uznawane za wysoce genialne, inne niż wszyscy. Czy tak jest naprawdę? I tak i nie. Programiści są różni - leniwi, genialni, innowacyjni, schematyczni: każdy z nich ma swoje mocne i słabe strony. Co więcej - niektórzy z nich nigdy nie myśleli, że zostaną programistami - a jednak!

Przede wszystkim – ustalmy sobie, że programowanie to wcale nie wiedza tajemna. To nie jest też coś, czego nie można się nauczyć. Mówi się, że gdyby dać małpie odpowiednio dużo czasu, papieru i maszynę do pisania – w końcu napisze Hamleta. Nie do końca tak jest z programowaniem, bo jednak trzeba do niego odrobinę zaangażowania – mimo wszystko taki jednak przykład jest bardzo dobry, aby zwrócić Waszą uwagę, że każdy może to pojąć. Jeżeli będzie tylko chciał i serio się przyłoży.

Dobrze mieć swojego… patrona

Myślisz o nauce programowania i nie wiesz jak się do tego zabrać? Wystarczy, że znajdziesz sobie dobrego znajomego, który poprowadzi Cię przez ten proces. Nawet, jeżeli jest Junior Developerem, może wskazać Ci fajne drogi do samorozwoju, opowiedzieć Ci swoją historię dojścia do wprawy w koniecznych obecnie umiejętnościach, a także polecić Ci fajne repozytoria, w których znajdziesz potrzebną wiedzę. Poradników w sieci jest multum – również za darmo. Jeżeli uważasz jednak, że wiedza za którą nie zapłacisz ani złotówki to dla Ciebie za mało, istnieją także ciekawe kursy online, które przygotują Cię w niedługim relatywnie czasie do podjęcia pierwszej pracy jako Junior. Reszty nauczyć się możesz w trakcie pracy – wystarczy, że będziesz mieć najważniejsze podstawy.

Taki znajomy opowie Ci jak sam dochodził do wiedzy w zakresie programowania, a także opowie Ci jak obecnie wygląda rynek pracy. To ważne w kontekście poszukiwania pierwszego miejsca, w którym zaczniesz pierwsze kroki jako programista. Nie spodziewaj się, że przyjdzie Ci to szybko, łatwo i przyjemnie. Czasami będziesz musiał się zdrowo pogłowić, aby przyswoić sobie konkretne umiejętności oraz metody. Warto także zapytać o to, jak ogólnie wygląda praca jako programista, albo dowiedzieć się jak wygląda typowy software house. Ja akurat mam jakieś porównanie – sam zresztą pisałem o tym, jak wygląda wykonywanie obowiązków w takim miejscu w Rzeszowie.

programowania

Dlaczego warto pracować jako programista?

Trzeba to podkreślić, to z pewnością nie jest praca dla kogoś, kto nie lubi ciągle się uczyć. Rynek programistyczny ciągle się zmienia – zarówno pod kątem potrzebnych umiejętności, jak i metod wykonywania swojej pracy. Ciągle pojawia się coś nowego, co warto opanować – dlatego też przygotujcie się na ciągłe rozwijanie swoich kompetencji. W odpowiedzialnej firmie będzie to prostsze, gdyż one same wdrażają nowinki i inwestują w swoich programistów – oferując im atrakcyjne szkolenia, wyjazdy branżowe.

Jako programista, w dobrych firmach możesz liczyć także na bardzo atrakcyjne benefity – karty do siłowni, darmowe posiłki, chill zone’y dla pracowników, prywatne ubezpieczenia zdrowotne i pakiety w prywatnych przychodniach. Oprócz tego, ważne są także zarobki: programiści to cały czas jedni z lepiej opłacanych specjalistów w branży IT. Wraz z doświadczeniem i umiejętnościami płace drastycznie rosną – miesięczna wypłata w wysokości 10 000 złotych nie jest ogromną rzadkością i jeżeli człowiek ma głowę na karku i wie gdzie może tyle zarobić – właśnie tyle może inkasować co miesiąc.

Gdzie mogę nauczyć się tego fachu?

Drogi są zasadniczo dwie (a nawet trzy). Znam programistów samouków, którzy samodzielnie nauczyli się tajników programowania – bez większej pomocy z zewnątrz. Pytając ich o to, skąd w ogóle brali materiały do nauki – podali mi te repozytoria:

Jako jedno z ważniejszych miejsc, w których można nauczyć się programowania samemu – i co ważne: za darmo wskazano mi Codecademy, pełne bezpłatnych kursów, ale głównie w języku angielskim. Tutaj napiszę coś ważnego – jeżeli chcecie nauczyć się programowania, nie możecie pokpić sobie tego najważniejszego języka obcego. Wiele materiałów w pracy, dokumentacji to właśnie teksty napisane po angielski, więc jeżeli macie w nim poważne braki – lepiej jak najszybciej je uzupełnić, a idealnie będzie, gdy technicznego angielskiego nauczycie się przy okazji nauki programowania.

Link do Codecademy

Jeżeli szukacie kursów także z innych dziedzin – Coursera również Wam się bardzo przyda. Według niektórych moich rozmówców to jeden z lepszych serwisów, w których możecie nauczyć się konkretnych dziedzin programowania. Mnóstwo wykładów, materiałów oraz przydatnych ćwiczeń to jedne z większych zalet tego miejsca. Co ciekawe – niektóre z nich dostępne są także po polsku.

Link do Coursera

Natomiast, jeżeli zależy Wam na wyłącznie darmowych zbiorach potrzebnych do nauki programowania – Khan Academy będzie dla Was idealny. Baza jest naprawdę spora i właściwie każdy, nawet bardziej zaawansowany programista znajdzie tutaj coś ciekawego dla siebie. Tutaj nie znajdziecie jednak materiałów przystosowanych do języka polskiego.

Link do Khan Academy

Natomiast, jeżeli macie odłożone trochę pieniędzy i koniecznie chcecie przeznaczyć je na samorozwój – możecie zainwestować je w platformie Udacity, która zajmuje się jedynie kursami dla informatyków (i programistów). Ważnym punktem funkcjonowania Udacity są kursy „nanodegree”, które mają przygotować uczniów do podjęcia pierwszej pracy w zawodzie tuż po ich zakończeniu – dając im oczywiście najważniejsze umiejętności wymagane w pracy.

Link do Udacity

Poznaliście w tym momencie dwie drogi nauki programowania. Co z trzecią? To firmy, które specjalizują się w kształceniu przyszłych programistów – szeroko reklamują się ostatnio wszędzie, w mediach społecznościowych, w Google, również w mediach technologicznych. Płacąc za szkolenie w określonym kierunku otrzymujecie coś w rodzaju gwarancji, że po pozytywnym ukończeniu całości będziecie w stanie aplikować na startowe stanowiska w firmach zajmujących się tworzeniem oprogramowania: resztę doświadczenia nabywać będziecie już drogą praktyki – co więcej, ktoś Wam jeszcze za to nieźle zapłaci. To dobra opcja, ale wbrew pozorom dla najbardziej zdeterminowanych przyszłych programistów. Płacąc bowiem, musicie się naprawdę dobrze przyłożyć – ucząc się samemu zawsze możecie zrezygnować, przerwać naukę. Tutaj tak prosto nie ma.

Pamiętajcie o tym, że programowanie to również samorozwój – wymaga się tutaj ciągłej chęci poszerzania swoich horyzontów, a mile widziane jest nawet uczestnictwo w branżowych imprezach, konferencjach, gdzie prezentowane są nowe metody pracy lub też tworzenia softu. W firmach natomiast warto interesować się ścieżkami kariery: co lepsi pracodawcy bardzo dbają o ten aspekt – to dla nich niejako gwarant, że zmieniająca się sytuacja na rynku IT nie będzie kolidowała z możliwościami ich doskonale już zgranego teamu. W niektórych przedsiębiorstwach ta świadomość dopiero „raczkuje”, ale to i tak dobry znak.

Jeżeli już uda Wam się osiągnąć tyle, że bez wstydu będziecie mogli startować na Juniora – nie bójcie się niepowodzeń. Programiści to z reguły dobrzy koledzy i pomogą Wam w pierwszych dniach pracy w nowym miejscu. Product Managerowie i reszta kadry to też ludzie, którzy najpewniej będą chcieli Wam pomóc – znajdą się też jednak tacy, którzy będą Wam głównie wadzić (jak wszędzie). Róbcie swoje, uczcie się i rozwijajcie się. Życzę powodzenia!