Poznaj Pythona!

Popularność Pythona rośnie z roku na rok, wielość zastosowań tego języka i “niski próg wejścia” – jak mówią specjaliści z branży, mając na myśli łatwość w uczeniu się – gwarantują programistom bezpieczną przyszłość na rynku IT. Skąd bierze się zawrotna kariera tego języka, ile może zarobić programista i jak wybrać odpowiedni kurs programowania w Python? O tym rozmawiała Paulina Brudka, przedstawicielka Future Collars, szkoły nowoczesnych zawodów, z Robertem Górzyńskim.

Mentor dla adeptów Pythona

Robert Górzyński od 6 lat zawodowo programuje w Pythonie.  Wcześniej “po prostu” programował, teraz pełni role zarządcze w zespołach – rekrutuje, przygotowuje juniorów do pracy, dba o jakość kodu i sukcesy zespołów. Jako Chief Tech Officer odpowiada za wszystkie aspekty techniczne związane z oprogramowaniem dla firm i wdrożenia oprogramowania. Jak sam podkreśla – z Pythonem zawsze najlepiej mu się pracowało i najłatwiej szkoliło początkujących. Uczenie innych to coś, co lubi i umie robić- obecnie jest mentorem kursu programowania Python Developer w Future Collars i zdradza, jak wygląda kurs od środka.

Python vs. Java

Badanie Stack Overflow przeprowadzone w lutym 2020 r. na próbie 65000 respondentów pokazało, jakiego języka programowania najczęściej używają – JavaScript 67,7%, CSS/HTML 63,1%, SQL 54,7%, Python 44,1%, Java 40.2%.

Java i Python wydają się ze sobą konkurować, jednak nasz ekspert twierdzi, że te języki w kontekście zastosowań uzupełniają się. Java to język statyczny, składnia jest bogata, bardzo rozbudowana, a z kolei Python jest dynamiczny. Aby programować w Pythonie, nie potrzeba aż tylu bibliotek i frameworków, żeby osiągnąć cel.

Java sprawdza się w korporacjach, gdzie podstawą są stabilne rozwiązania – w bankowości jest to niezwykle ważne: pięcioletni bankomat musi działać obecnie i jeszcze niezmiennie służyć użytkownikom przez jakiś czas. Jeśli jednak ważniejszy jest szybki rozwój oprogramowania i konieczne są częste aktualizacje, np. pod wpływem oczekiwań klienta bądź użytkowników – Python jest idealny.

Do działań związanych ze sztuczną inteligencją Python jest odpowiedni, programista musi szybko reagować i aktualizować kod, żeby być bieżąco ze zmianami na rynku, wymaganiami klienta lub zmieniającymi się danymi wyjściowymi. Podejście pythonowskie sprawdza się w projektach webowych – np. w e-commerce, przetwarzaniu danych, pozyskiwaniu ich przez API dostępowe.

Obserwujemy boom na IoT (Internet of Things). To system urządzeń, które mogą komunikować się ze sobą i wymieniać dane bez udziału człowieka – to m.in. inteligentne urządzenia składające się na smart home. Platformy takie Raspberry czy Arduino mają lepsze interfejsy dla Pythona i jeśli te interfejsy będą się zmieniać, Java ich nie dogoni.

W Pythonie projektuje się  interfesjy i biblioteki tak, żeby były maksymalnie proste w użytkowaniu. Zdecydowanie najłatwiej jest się go nauczyć. Kod jest przyjazny do prześledzenia, zamiast struktur opierających się na klamrach i znakach, które nie są alfanumeryczne, stosuje się wcięcia i niewiele symboli. Szkoła Pythona polega też na tworzeniu łatwych nazw, co pomaga zrozumieć strukturę kodu.

Co musi umieć junior?

Na bootcampie Future Collars kursanci uczą się składni języka i podstaw programowania – pętlli, konstrukcji warunkowych, przechwytywania wyjątków i wypracowują sposób myślenia programistycznego w rozwiązywaniu problemów. To podejście polega na analizie problemu, rozbiciu go na jak najmniejsze kroki i później testowaniu rozwiązań.

Bootcamp prowadzony przez Roberta przewiduje, że kursant będzie uczył się około 5 godzin dziennie, włoży wiele pracy w zadania i projekty, a przy braku systematyczności – nadrobi zaległości. Jako mentor poświęca tyle czasu uczestnikom kursu, ile potrzebują w czasie konsultacji 1:1 i dzięki temu zdecydowana większość radzi sobie dobrze. Wyposaża ich w taką wiedzę i umiejętności, że po skończonym kursie mogą ubiegać się o stanowiska juniorskie. Kursanci sami wspierają się, konsultują problemy, uczą się od siebie.  Dwa razy w tygodniu odbywają się lekcje na żywo. Kurs Pythona trwa 10 tygodni, z czego 8 tygodni to nauka, a pozostałe dwa – realizacja projektu.

– Jest ciężej niż na innych bootcampach, ale osoby, które prowadzę, są w stanie wyjść z konkretnymi umiejętnościami. Mam kontrolę nad tym, jak i czego uczymy. Te umiejętności wiążą się z podstawami Pythona, użycia wiedzy w konkretnych przypadkach. Zadania są rzeczywiste, a projekt zaliczeniowy można wybrać z dość szerokiej listy, żeby był unikalny i można było się nim pochwalić w portfolio – zdradza Robert.

Okiem rekrutera

Robert opowiedział również, jak wygląda proces rekrutacyjny, Jeśli ktoś aplikuje na stanowisko juniorskie, zakłada się, że ma podstawowe umiejętności programistyczne w danym języku programowania. Na pierwszym spotkaniu nie testuje się kandydata pod kątem znajomości bibliotek, ale sprawdza się, czy potrafią napisać fragment abstrakcyjnego kodu albo rozwiązać test lub zadanie w określonym czasie. Największe znaczenie ma podejście do problemu

W rekrutacji wiek nie ma znaczenia, w pierwszej fazie rekrutacji sprawdzane są umiejętności i rekruter może nawet nie wiedzieć, jakiej płci jej kandydat, bo dostaje tylko rozwiązane zadanie. Wiek może być problematyczny tylko dla osób, które z czasem trudniej przyswajają wiedzę – w tej branży to ważne, programista uczy się cały czas.

Istotne są również kompetencje miękkie i to, czy ta osoba rzeczywiście jest zainteresowana pracą jako programista, jak dużo poświęci czasu i energii na uzupełnienie ewentualnych braków. Język angielski to must have kandydata, ponieważ dokumentacja dla języków programowania jest dostępna w języku angielskim.

Staże i praktyki czasem kierowane są do osób, które mają wiedzę teoretyczną, ale brakuje im jeszcze doświadczenia komercyjnego i oprócz projektu z kursu, nie mogą się niczym pochwalić. Robert Górzyński poleca takie rozwiązania osobom, które są zdecydowane na współpracę z tą konkretną firmą.

Future Collars współpracuje z firmami oferującymi projekty stażowe. Polega to na tym, że organizacja doszkala absolwentów kursu, a po okresie stażowym – proponuje pracę. Jeśli to okres bezpłatnej pracy, co się zdarza – warto potraktować go jako kolejny miesiąc bootcampu, zdobyć projekt do portfolio, a z czasem – zatrudnienie. Taka inwestycja z pewnością się opłaca, bo koszty początkowe zapoznania się z jakąś biblioteką lub frameworkiem są duże.

Od juniora do seniora

Trzeba zdać sobie sprawę, że junior to jest osoba, w którą organizacja więcej inwestuje niż od niej bierze. Jednak zazwyczaj ta inwestycja firmom się opłaca, bo junior, który dużo się uczy, za jakiś czas będzie bardzo cenny.

Początkującymi programistami opiekują się mentorzy – oni odpowiadają za jakość kodu juniora, muszą go kontrolować, sprawdzać, komentować, przetestować. Zdarza się, że w firmie jeden senior odpowiada za całą ekipę juniorów. Najczęściej zdarza się to w organizacjach, które szybko potrzebują nowych programistów. Typową praktyką jest przydzielenie jednego juniora seniorowi.

Wynagrodzenia w IT

Żeby się nauczyć programowania, trzeba poświęcić wiele czasu. Poszukujący pracy w IT muszą być gotowi na niższe stawki, takie jak w innych branżach. W sytuacji covidowej firmy rzadziej rekrutują i obniżają proponowane stawki. W województwie kujawsko-pomorskim junior mógł zarobić 4-5 tysięcy, ale zdarzały się oferty z niższymi stawkami, proponowanymi osobom, które mają spore braki, ale chcą pracować. Duże pensje są zarezerwowane dla najbardziej doświadczonych – 20 tys. zarabia specjalista po wielu latach pracy. Na rynku IT zapotrzebowanie na ekspertów ciągle przekracza ilość takich osób na rynku, dlatego stawki z czasem idą w górę.

Jak wybrać szkolenie?

Osoby początkujące muszą cenić swój czas poświęcony na naukę. Można się uczyć z materiałów dostępnych w Internecie, ważne, by nauka była efektywna i prowadziła do celu. Kontakt z mentorem jest jednak nieoceniony – przyspiesza proces nauki, pozwala nie utrwalać schematów, które potem są problemem w pracy programisty.

Kurs teoretyczny nie jest dobrym rozwiązaniem, lepiej spróbować zrealizować projekt – motywacja do nauki jest większa, kiedy uczymy się na realnych problemach. Praca programisty to ciągła nauka, nawet istniejące biblioteki zmieniają się, trzeba się ich uczyć, a przecież ciągle powstają nowe.

Po bootcampie w Future Collars z powodzeniem można próbować startować na juniora – Robert uczy tak, żeby absolwenci byli gotowi do pracy. Pod koniec trwania kursu rekruterka pomaga opracować CV, poprawić lub stworzyć profil na LinkediInie i przygotowuje pod kątem wejścia na rynek pracy w IT.

Jaka jest rada Roberta Górzyńskiego dla tych, którzy chcą zacząć, ale nie wiedzą od czego? – Otwórz Notatnik, ściągnij Pythona i spróbuj coś uruchomić. Znajdź mentora lub kogoś, kto podziela Twoje zainteresowanie i działaj – radzi nasz mentor.

Dlaczego Python?

Python to jeden z najpopularniejszych języków programowania, uważany za też za łatwy do nauczenia się. Jego znajomość daje ogromne możliwości pracy w różnych branżach, szczególnie tam, gdzie oprogramowanie zmienia się dynamicznie lub operuje się danymi. Ścieżka kariery i zarobki Python Developera są raczej typowe dla branży, przy czym obserwuje się duży wzrost wynagrodzenia wraz z rozwojem umiejętności i doświadczenia. Rekruterzy zwracają uwagę na programistyczny sposób myślenia, zaangażowanie i chęć do nauki oraz kompetencje miękkie.

Specjalistyczny kurs online Python Developer jest doskonałym wyborem dla osób, które chcą szybko wejść do branży, nauczyć się praktycznej strony pracy programisty i pracować od razu na rzeczywistych projektach. Kontakt z mentorem pozwala na ukierunkowaną naukę i nieutrwalanie błędów, które w późniejszej pracy mogą przeszkadzać.

Zachęcamy do skorzystania z bezpłatnej konsultacji z doradcą zawodowym Future Collars. Skonsultuj się, jeśli nie jesteś pewny/pewna, jaki bootcamp wybrać, czy kurs programowania Python online jest dla Ciebie. Ponadto konsultanci udzielą informacji, w jaki sposób można sfinansować kurs bez angażowania własnych środków bądź zdobyć dofinansowanie nauki.