pisany z pasją
25/08/2017
Nie od dziś wiadomo, iż na polskim rynku istnieje duży deficyt developerów. Może wydawać się to nieco dziwne, w momencie wielkiego bumu na studia informatyczne (trwającego już od kilku lat) i rzeszy osób, które przebranżowiły się na programistów. Z czego wynika ten problem? Jak to możliwe, że rekrutacje kończą się dla firm niepowodzeniem, a bezrobotnych developerów wciąż przybywa?
Problem w tym, że każdy chciałby być dzisiaj informatykiem, a nie każdy być nim może. W dzisiejszych czasach rzadko kto wie, co tak na prawdę chciałby robić w życiu. Młodzi luzie wybierają studia biorąc pod uwagę kilka kryteriów: Czy łatwo będzie je skończyć? Czy będę po nich miał/miała pracę? Ile będę zarabiać? Jednak prawda jest jedna, choć jak widać nieznana: Aby z powodzeniem skończyć studia, znaleźć dobrą i przyjemnie płatną pracę potrzebna jest pasja, pracowitość, profesjonalizm i zaangażowanie.
Praca informatyka, choć wielu się wydaje zupełnie inaczej, nie jest w swojej istocie prosta i łatwa. Osoba zajmująca się tą dziedziną musi mieć wachlarz cech, których nabycie nie jest łatwe. Jeśli jednak jesteś osobą cierpliwą i pracowitą, lubisz wychodzić poza strefę swojego komfortu i uczucie, kiedy Twój mózg pracuje na najwyższych obrotach, to czytaj dalej!
Jeśli Twoim codziennym rytuałem jest czytanie klasycznej angielskiej literatury, skończyłeś studia na kierunku biologia i nie wiesz co dalej zrobić ze swoim życiem, a najbardziej zaawansowana rzecz, jaką udało Ci się zrobić na komputerze to instalacja antywirusa, to uwierz, że ta ścieżka nie jest dla Ciebie. Nie chodzi oczywiście o to, że nie możesz mieć innych zainteresować, ani o to żebyś od razu był front-end ninja/seniorem/masterem/wymiataczem czy kimkolwiek innym. Musisz jednak posiadać w sobie ciekawość do specjalizacji, w jakiej chcesz się rozwijać. Nie musisz tego kochać, lecz przynajmniej to polub. Nie znam developera, który byłby świetny w tym co robi i nie lubił swojej pracy.
Właśnie obejrzałeś kurs HTML’a, CSS’a, RWD’a, JS’a, przeczytałeś 50 postów takich, jak ten i pociąłeś kilka szablonów? Jestem z ciebie na prawdę dumna. Nie masz jeszcze świetnej pracy, nie zarabiasz milionów, a na odpowiedź od rekruterów czekasz już 3 miesiąc? Jakoś mnie to nie dziwi. Widzisz, chirurg też nie przeprowadził swojej pierwszej operacji na otwartym mózgu po 2 tygodniach od uzyskaniu dyplomu, a policjant nie został od razu nadinspektorem. To dopiero początek, teraz czas przejść do następnego etapu.
To oklepane powiedzonko ma w sobie dużo prawdy. Jasne są zawody, gdzie raz się czegoś nauczysz, a potem możesz pracować jak robocik. Niestety, a może stety informatyka do takich nie należy. Najlepszy sposób to stawiać sobie cel: nie abstrakcyjny i niemożliwy, ale poza Twoim zasięgiem. Umiesz napisać stronkę w HTML’u i CSS’ie? W takim razie spróbuj nadać jej proste animacje i slider. W żadnym wypadku nie korzystaj z gotowych rozwiązań. Ważne żeby wszystko budować od podstaw. Otwórz pustą kartę i wgraj dwa zdjęcia, spróbuj czystym JS dodać proste animację, zamienić je miejscami. Łatwizna? Teraz czas na kalkulator bądź prostą grę, itd., itd., itd…
Kopiować gotowy kod można zawsze. Żeby jednak być programistą z prawdziwego zdarzenia, trzeba umieć abstrakcyjnie myśleć, wychodzić poza z góry ustalone schematy, tworzyć. I niech mi tutaj nikt nie mów, że front-end developer nie może być inżynierem, nawet w CSS’ie można stworzyć coś niezwykłego. Zobaczcie tutaj:
http://www.species-in-pieces.com
Praca developera świetnie wpisuje się w koncepcję nauki przez całe życie. Świat postępuje do przodu każdego dnia, powstają nowe technologie, rozwiązania. To co wczoraj było modne, ładne, funkcjonalne, już jutro może takie nie być, a może już dzisiaj takie nie jest. Jeśli nie jesteś przygotowany na ciągły rozwój, naukę, doskonalenie się, to nie zaczynaj się w to bawić.
Język angielski! – Zupełna podstawa, bez tego ani rusz. Większość materiałów do nauki i specyfikacji jest w języku angielskim.
HTML, CSS, ECMAScript i jego implementacje: np. Java Script. To na nich możesz budować swoją specjalizację. Aby być świetnym programistą, trzeba rozumieć kod. Na początek odpuść sobie frameworki, biblioteki, preprocesory i inne takie. Bez nich się obędziesz, bez podstaw nie. Pamiętaj, że te narzędzia mają jedynie usprawnić pracę programisty, który umie programować!
GIT, GULP – przydatne do pracy w zespole i automatyzacji zadań. To tylko przykładowe narzędzia.
Photoshop albo inny program graficzny.
A potem już cały stos technologiczny stoi przed Tobą otworem!