Polub bloga na fejsie!

Pierwsza praca – Junior Front-End Developer

4

Dziś pierwszy w historii bloga wpis gościnny! Myślę, że temat – pierwsza praca jako junior front-end developer – będzie dla wielu bardzo interesujący. Autorem posta jest Marcin Zalewski – front-end developer, absolwent ekonomii, entuzjasta JavaScript. Prowadzi on również, fanpage mzalewski.pl na Facebooku – polecam zacząć go obserwować, a teraz zapraszam do lektury wpisu!

Nie jestem pewny czy wzmożone zainteresowanie front-endem związane jest z pojawiającymi się w szybkim tempie kolejnymi kursami, ilością ofert na rynku pracy, zarobkami czy może promocją ogólnopojętego programowania? Jednak w odpowiedzi na wiele pojawiających się pytań postanowiłem na bazie swoich doświadczeń odpowiedzieć przynajmniej na kilka z nich. Tekst to moje luźne przemyślenia i nie twierdzę, że wszystko w 100% pokrywa się z realiami. Obrazuje on tylko moje zdanie na ten temat i pokazuje na co powinien zwrócić uwagę przyszły Junior Front-end Developer.

Język angielski

Pierwsza kwestia niemająca wiele wspólnego z programowaniem to język obcy, którym naturalnie jest angielski. Uważam, że opanowanie tego języka w stopniu przynajmniej średnio zaawansowanym to podstawa, bez której napotkamy liczne problemy. Począwszy od komunikacji, przez pisanie i czytanie dokumentacji na nauce kończąc. Zdecydowana większość materiałów pisana jest w języku angielskim, a tłumaczenia (o ile takowe istnieją) często nie oddają w pełni tego co autor miał na myśli, bądź niepotrzebnie komplikują tłumaczone problemy. Ponadto rozmowy językowe przeprowadzane przez pracowników z HR’u są często pierwszym etapem rekrutacji, więc nawet będąc dobrze rokującym programistą możecie nie dostać szansy na wykazanie się przez ‘braki językowe’.

ENGLISH 4 IT - POLECAM KSIĄŻKĘ

Jako programista, prędzej czy później będziesz musiał korzystać w pracy z języka angielskiego.

Książka English 4 IT to niezastąpione źródło słownictwa z zakresu szeroko pojętego IT!

Wymagania techniczne

Co do wymagań technicznych na junior front-end developera – oczekiwania są duże względem faktycznej wiedzy większości juniorów. Przynajmniej takie jest moje zdanie i mówię to na podstawie obserwacji wymagań w ofertach na stronach takich jak nofluffjobs, pracuj.pl czy grupach pokroju „Front-end pierwsza praca” (Facebook – tutaj link). Na tych portalach świetnie widać przekrój tego stanowiska. 90% ogłaszających posiada portfolio z jedną stroną typu one-page i ewentualnie kilkoma rezultatami zadań z Freecodecampa czy Codeacademy. Oznacza to jednak, że mobilizacja i trochę pracy może was mocno wyróżnić na tle całej grupy!

Przez duży wzrost chętnych do pracy na tym stanowisku rekruterzy mogą przebierać w CV i wybierać osoby, które faktycznie spełniają wymagane minimum, a nawet przewyższają oczekiwania pracodawcy. Myślę, że potencjalnej firmie często nie opłaca się w krótkim okresie zatrudniać kogoś, kto będzie potrzebował ‘opieki’ seniora przez większość czasu. Nie wynika to jednak z kosztów zatrudnienia juniora, tylko konieczności poświęcenia zasobów bardziej wykwalifikowanych pracowników. Bycie samodzielnym będzie zatem bardzo procentowało!

pierwsza praca - twórz własne projekty!

Wspominając mobilizację i dodatkowe projekty miałem na myśli oczywiście powiększenie portfolio, które nie tylko oznacza, że umiecie kodować, ale też rozmawiać z klientem, szukać zleceń czy najzwyczajniej doprowadzić projekt do końca. Porównanie kilku prac tworzonych w różnych odstępach czasowych pozwala również na obserwację waszych postępów w nauce, które przekładają się na jakość kodu i poniekąd stanowią dla pracodawcy informację jak szybko potraficie dostosować się do nowych technologii i wdrażać poznane rozwiązania.

Jak dobrze znasz wymagane języki programowania?

Kolejna kwestia to najczęściej subiektywne opinie odnośnie znajomości danego języka programowania. Informacja o bardzo dobrej znajomości chociażby języka HTML to według mnie jedno z najczęściej powielanych kłamstw, które nie ma żadnego odniesienia do  rzeczywistości.  Jak bowiem zdefiniować znajomość danego języka? Możemy oczywiście oszacować procentową znajomość składni, porównać się do innych czy stwierdzić, że opanowaliśmy daną technologię, bo poprzedni projekt nie sprawił nam większych problemów. Ale skąd pewność, że nie traficie na takowe przy kolejnym zleceniu? Z własnego doświadczenia wiem, że do pewnego momentu im dłużej uczę się danego języka tym bardziej zdaję sobie sprawę jak duże mam w nim braki.

Stos technologiczny

Kolejna kwestia to ogrom stosu technologicznego we front-endzie. Większość firm korzysta obecnie z task runnerów, wybranych IDE, systemów kontroli wersji, frameworków, bibliotek czy OS. Nie oznacza to jednak, że musicie znać na wylot każde narzędzie, bo i po co? Potencjalna firma/freelancer/wykonawca ma często swój gotowy build, który jedynie ulepsza i z którego korzysta w każdym projekcie. Nie musicie umieć napisać od podstaw środowiska pod wieloosobowy projekt, ale warto mieć doświadczenie przy pracy z kilkoma narzędziami. Znajomość Gulpa/Webpacka, CLI, wiedza o tym jakie możliwości kryje za sobą ulubiony edytor tekstu, bundler czy lintery zdecydowanie działa na Waszą korzyść. Inaczej jednak wygląda kwestia użytkowania preprocesorów CSS. Uważam to za ‘must have’ i nie wyobrażam sobie obecnie pracy bez SCSS i rozsądnego podziału plików. Atutem natomiast będzie na pewno stosowanie określonego nazewnictwa klas zgodnie z metodyką BEM czy OOCSS poparte przykładami.

JavaScript

Ostatnia pomijana, a według mnie najistotniejsza kwestia – JavaScript. Kolejna rzecz, którą każdy przyszły junior dumnie oznaczył w CV, jednak jego doświadczenie sprowadza się do edycji kilku sliderów z jQuery. Już całkowicie nie rozumiem osób, które nie potrafią napisać prostego skryptu w VanillaJS, ale dzielnie brną w kolejne tutoriale Angulara. Robią po raz n-ty tę samą aplikację co wszyscy inni kursanci, przepisując 95% proponowanego przez autora kodu. W pełni rozumiem pokusę płynącą z tworzenia SPA i niską barierę wejścia, jednak proponuję najpierw zająć się „czystym” JavaScriptem. Opanowanie funkcji wyższego rzędu, IIFE, asynchroniczności, promises, closures, dziedziczenia prototypowego, event bubble, hoistingu, jak działa „this” czy „strict mode”, zamiast zabierać się od razu za coś czego nawet do końca nie rozumiemy przez braki w podstawach zdecydowanie da nam więcej efektów.

Pierwsza praca – podsumowanie

Podsumowując, jeżeli od dłuższego czasu nieskutecznie poszukujesz pracy, może warto zastanowić się nad zmianą strategii? Zwiększenie swojej atrakcyjności jako pracownika przez poświęcenie kolejnych kilku tygodni, a nawet miesięcy na naukę brakujących technologii na pewno przyniesie znaczne rezultaty.

REACT, REDUX, REACT-ROUTER - KURSY ON-LINE

Chcesz od podstaw poznać tajniki React, Redux oraz react-router? Zapraszam do moich szkoleń on-line:

Przejdź do szkoleń

Uwaga! Obecnie trwa przedsprzedaż kursów - premiera 1 sierpnia 2017!

  • Sławomir

    Artykuł jak dla mnie wiele wyjaśnia. Chciałbym troszkę usprawiedliwić niedoszłych juniorów ponieważ wielu z nich w ciągu 8h (per day) zajmuję się czymś innym, bo za coś trzeba żyć. Sam jestem obecnie w takiej sytuacji i jak sobie pomyślę, że przez 8h mógłbym robić to co lubię i to co chcę robić w przyszłości to mnie krew zalewa… Często, gęsto mam do czynienia z juniorami frontendu i backendu i czasami mam wrażenie, że ich wiedza jest na miernym poziomie a jednak pracują, mogą się spełniać i co najważniejsze wpisać sobie doświadczenie w CV. Macie rację JS to podstawa i to dobry JS, później można wybrać Reacta czy AG.

  • coderek

    W Polsce jest w ogóle taka mentalność, że pracodawca chciałby osobę na studiach, która może pracować 40h tygodniowo, a najlepiej klepać nadgodziny, pracować za minimalną krajową i wszystko umieć. Kurcze, jak idziesz na Juniora to jesteś Juniorem. To całkiem normalne, że na początku trzeba być pod opieką Seniora czy Team Leadera. Trochę czułbym się przytłoczony jakby Codete (firma gdzie pracuję) wprowadziło taką politykę, że każdy sobie. Teraz praca nad projektem przebiega bardzo sprawnie, dużo się uczę, bo ma mnie kto skontrolować i pomóc, a w innym przypadku chyba szybko bym się zniechęcił.

  • AdamG

    Sam nie spotkałem się jeszcze z takim podejściem, że junior to osoba, która coś potrafi, ale jest do douczenia, teraz firmy oczekują klasyki – zaraz po studiach z 5 lat doświadczenia, 3 języki obce, 10 technologii i za 2000zł na rękę. Już ze dwa razy zostałem odrzucony w rekrutacji, bo źle klasa nazwana czy zła ilość wcięć w kolejnym wierszu. W rzeczywistości są to JanuszSofty, które szukają regulara czy nawet seniora w cenie juniora. A nawet jak taka osoba znajdzie pracę to jest to trochę kpina, bo robi tak, że działa, ale nie ma kto jej skontrolować i poprawić jak trzeba, bo najczęściej wtedy zespół składa się z samych juniorów, którzy zaraz uciekną po paru miesiącach, bo jest taka rotacji lub zwyczajnie januszone podejście.
    W dodatku na tą chwilę branża IT to porażka – od paru lat w telewizji i internecie mówi się o tym, że jest praca dla programistów, tylko zapomina się dodać, że te 12k nie dostaje się od tak tylko trzeba przepracować kilka ładnych lat i to potem sprawia, że jest wysyp instalatorów templatek od wordpressa po campach. Banany którym rodzice zapłacili za kurs na którym nauczyli się przepisywać od instruktora lub jak dobrze pójdzie to taki jeden z drugim zrobi paralaksa na onepage’u.

  • inzKornel

    „Z własnego doświadczenia wiem, że do pewnego momentu im dłużej uczę się danego języka tym bardziej zdaję sobie sprawę jak duże mam w nim braki.” – święta prawda!

Google Analytics Alternative