W obecnych czasach programowanie jest coraz popularniejsze. Powstaje coraz więcej szkół programowania, bootcampów i kursów, a w internecie znaleźć możemy jeszcze więcej wiedzy. Najpopularniejszym i najbardziej pożądanym  językiem programowania jest JavaScript, co oznacza, że praca jako frontend developer staje się najlepszą opcją dla początkujących programistów. Tylko, tak właściwie, to kim jest frontend developer? 

Kim jest frontend developer?

Podstawowa definicja jest taka – Frontend developer to programista, który zajmuje się stroną webową projektu. Oznacza to, że frontend developer pracuje nad tym, co użytkownik widzi po wejściu na stronę www, oraz jak to, co widzi, działa. Podstawowo frontend developer powinien znać HTML, CSS i JS.

Co robi frontend developer?

Obecnie większość stron działa tak, że dzielą się na dwie części. Kiedy wpisujemy w przeglądarce adres strony www, nasza przeglądarka wysyła żądanie do serwera o plik HTML. Przeglądarka otrzymuje ten plik, a następnie z pliku ładuje kolejne pliki, tym razem różne – HTML, JS, CSS, obrazki itd. Serwer też udostępnia dane dla strony, i od razu w plikach HTML i w postaci API. Za tą część odpowiada backend developer.

Po otrzymaniu pliku HTML przeglądarka musi go wyrejestrować, czyli pokazać dla użytkownika końcowego. Tutaj wkracza do akcji frontend developer. Tworzy on wygląd strony www i odpowiada za jej działanie i interaktywność. Kiedyś do tego wystarczyła znajomość HTML, CSS i przede wszystkim JavaScriptu. Powstawały różne frameworki lub biblioteki, które to zadanie ułatwiały. Najpopularniejszym z nich było jQuery. Swoją drogą dalej około połowy internetu go używa. Niemniej to dalej była jedna biblioteka. Życie frontend developera było prostsze.

Ścieżki rozwoju frontend developera

W obecnych czasach jednak jest o wiele więcej bibliotek i frameworków, tak więc pojęcie frontend developer teraz określa głównie osoby pracujące z JavaScriptem, i może oznaczać naprawdę wiele zawodów. Jest wiele nazw i określeń, które określają frontendowców, jednak wyróżnić można pięć najpopularniejszych. Te określenia, które też definiują możliwe ścieżki rozwoju frontend developera, to:

Frontend/Web developer – Jest to najpopularniejszy przykład frontendowca, określający większość z nas. Osoba na tym stanowisku pracuje tylko przy części webowej aplikacji. Tylko i aż. Część webowa to obecnie głównie JavaScript, ale też CSS, HTML (a tworzenie semantycznego kodu na początku proste nie jest) oraz zrozumienie jak działają przeglądarki. A skoro JavaScript, to frameworki. Głównym, najczęściej używanym jest React.js. Inne popularne to Angular.io czy Vue. Technologii i frameworków jest jednak więcej, a każda z nich pozwala skorzystać z kolejnych, tak więc czeka nas sporo nauki.

JavaScript developer – Jest to frontend developer, który pracuje tylko przy użyciu JavaScriptu, nie odpowiada za szczegółowy wygląd aplikacji, designy czy implementację zaawansowanego wyglądu do aplikacji. Jego wiedzą i siłą jest czysty JavaScript. Pracować z JSem może i po stronie webowej, i po stronie backendowej, gdzie, przy użyciu node.js, może stworzyć swój serwer, tworzyć i edytować API oraz pobierać dane. Skupia się na działaniu aplikacji i JavaScriptu, wygląd zostawiając innym.

Full stack developer – Jest to frontend, który nauczył się bardzo dobrze programować część webową, ale też poznał dobrze programowanie backendu. Inaczej mówiąc, połączenie Web developera oraz JS developera. Może, tak samo jak JS developer, tworzyć potrzebny sobie backend, ale też może stworzyć świetną grafikę i wygląd aplikacji, a na koniec połączyć jedno i drugie odpowiednią technologią JavaScriptową. Jednoosobowa armia, która może od zera postawić w pełni działającą stronę oraz jej serwer, o ile jest potrzebny

Grafik frontend – Jest to frontend, pracujący też jako grafik, programujący stronę webową aplikacji, oraz tworzący designy i implementujący zaawansowany wygląd do kodu. Skupia się głównie na wyglądzie, mniej na logice, ale podstawy frameworków musi znać. Zwykle jest to web developer, który zaczął bardziej stylować i tworzyć wygląd niż zajmować się logiką w JSie.

Mobile frontend – Jest to frontend developer, który od tworzenia stron www przeszedł do tworzenia aplikacji mobilnych przy użyciu JavaScriptu. Główne biblioteki do tego to np. React Native, Flutter czy NativeScript. Tutaj już trochę odchodzi się od czystego JSa na rzecz konkretnej technologii do tworzenia aplikacji mobilnych. 

Sporo frameworków i bibliotek do nauki, i sporo do przerobienia. Jeżeli chcesz wiedzieć, co musi na początku umieć junior fronrend developer, sprawdź ten wpis – Co musi umieć junior frontend developer?

Podsumowanie

Jak widzisz, całkiem sporo możliwości. Ogólnie rzecz biorąc, frontend developer tworzy to, co użytkownik końcowy widzi, tak jak napisałem na początku. Możliwości rozwoju i specjalizacji jest jednak na tyle dużo, że każdy znajdzie coś dla siebie. Czy znalazłeś swoją ścieżkę rozwoju? Daj znać w komentarzu :)