Blog

Mityczny Frontend Developer – kim tak właściwie jest frontendowiec?

Każdy, kto jakkolwiek otarł się o świat branży IT na pewno słyszał pojęcie frontend. Termin ten jest dość szeroki, choć w dużym skrócie frontendem można nazwać wszystko to, co widzi użytkownik oraz przeglądarka. Frontend Developer zajmuje się więc m.in. programowaniem całej wersji UI/UX czy też wizualnym oddaniem tego, co zostało zapisane w backendzie. Wciąż pojęcie frontendu może się jednak wydawać tajemnicze – za co zatem odpowiada frontendowiec?

Frontend vs backend – podstawowe rozróżnienie

1. Frontend, czyli strefa wizualna

Przed wzrostem popularności frameworków javascriptowych, całość programowania frontendowego dotyczyła modyfikacji stron w taki sposób, by były przyjazne użytkownikom i przeglądarkom. Dodatkowo frontend dbał o responsywność stron. W owym czasie JavaScript służył głównie do pisania prostych skryptów (np. wysyłania formularzy), a więc do tego, czego nie dało się zakodować w CSS-ie. 

Rozwój nowych technologii frontendowych m.in. Reacta przysłużył się do rozwinięcia możliwości frontendu, a zarazem zwiększył wymagania odnośnie Frontend Developerów. Dawniej bowiem, żeby zostać frontendowcem konieczna była znajomość HTML-a, CSS-a i samych podstaw JavaScriptu. Dziś poza tymi technologiami wymagana jest dodatkowo znajomość jednego z frameworków JavaScriptu, zagadnień tworzenia przejrzystego kodu, operowania pamięcią w wykorzystywanych projektach i przeglądarce. W tym przypadku mowa o zdobywającym popularność programowaniu frontendowym w React, który wykorzystuje SPA (ang. Single Page Application). Dla branży IT taki rozwój frontendu oznacza ogromny wzrost obowiązków Frontend Developera, przy jednoczesnym sprowadzeniu backendu do wstawiania API (interfejsu pobierającego dane z serwera). Programista frontendowy nie odpowiada więc już tylko za estetyczne widoki na stronie i User Experience.

2. Backend, czyli żeby wszystko działało poprawnie

W bardzo dużym skrócie strefa backendowa programowania zajmuje się zarządzaniem bazami danych, czego skutkiem ma być wdrażanie w życie polityki biznesowej firmy prowadzącej projekt. Jeśli jednak w danym projekcie nie są wykorzystywane frameworki frontendowe – na barki backendu spada także generowanie widoków. To, co pojawi się na stronie jest zaciągane z serwera w formie kodu HTML. Są to szablonowe widoki właściwe danej technologii backendowej, która jest wykorzystywana w projekcie. W jakich frameworkach najczęściej pracują backendowcy? Otóż należą do nich m.in. Spring – Java; ASP.NET (C#); Ruby on Rails (Ruby), Laravel i Symfony (PHP) czy Django (Phyton).Backendowcy są jakby zapleczem powstającego projektu. Nie mają oni bowiem oczywistego kontaktu z odbiorcą strony, oprogramowania czy aplikacji. Użytkownicy podziwiają widoki (czyli pracę frontendu), jednak samo poprawne działanie oprogramowania to dla nich absolutny must have. Userom brakuje świadomości procesów zachodzących podczas używania danego oprogramowania, a samo wypełnienie formularza i przejście do płatności, to dla backendu często długa droga pisania kodu.

Frontend Developer – zakres obowiązków programisty

Frontendowiec odpowiada za stworzenie końcowego efektu oprogramowania, a więc tego, co zostanie oddane użytkownikowi. Do jego obowiązków należy więc zarządzanie całym interfejsem projektu, wdrożenie i animowanie elementów graficznych czy też dostosowanie funkcjonalności oprogramowania do różnych urządzeń. W pracy frontendowca trudności mogą pojawiać się przy szukaniu rozwiązań problemów, które w odróżnieniu od backendu, dużo częściej mogą być opracowane na wiele różnych sposobów. Frontend Developer nie zajmuje się bowiem tylko programowaniem – jego zadaniem jest także zrozumienie użytkownika i jego potrzeb. Co więcej, trendy wizualne dynamicznie się zmieniają, podobnie jak technologie frontendowe. Osoba pracująca na tym stanowisku musi więc stale poszerzać swoje kompetencje i być na bieżąco. 

Nie ma jednej konkretnej ścieżki, którą podążają wszyscy frontendowcy. Różne są także oczekiwania firm rekrutujących pracowników na stanowisko Frontend Developera. Czym on więc może się zajmować?

Frontend Developer programista

Wystarczy znajomość JavaScript i jednego frameworka, by móc aplikować na Frontend Developera. Zwykle praca takiego programisty skupia się m.in. na współpracowaniu z API dostarczonym przez backend. Programista frontend ma za zadanie odpowiednio zaprezentować zaciągane dane na stronie czy w aplikacji. Odpowiada również za komunikację danych z backendu z przeglądarką internetową. To we frontendzie odbywa się pobieranie danych od userów, a następnie ich przetwarzanie i wysyłanie do backendu przez API. Jak zacząć pracę na tym stanowisku? Koniecznie od nauki języka JavaScript, a następnie wyspecjalizowania się w pracy na konkretnym frameworku. Wymagana jest także znajomość HTML i CSS-a oraz narzędzi takich jak np. Sass czy Babel.

Frontend Developer webmaster o zacięciu graficznym

HTML, CSS i Photoshop? Nie inaczej – wiele firm poszukuje właśnie takiego zestawu umiejętności na stanowisko Frontend Developera vel Web Developera. Zdarza się, że jest ono bliższe obowiązkom grafika niż programisty. Stworzone widoki ma za zadanie zakodować w HTML i CSS, by stworzyć funkcjonalną wersję oprogramowania. Choć wydaje się, że jest to bardziej stanowisko dla grafika z zapleczem programistycznym – należy wiedzieć, że niekiedy można natknąć się i na takie rekrutacje w zakładkach pracy dla programistów

Nie tylko Frontend Developer, czyli fullstack

Choć wiemy, że frontend to frontend, niekiedy firmy poszukują prawdziwego człowieka renesansu. Na niektóre stanowiska potrzebna więc będzie znajomość nie tylko technologii frontendowych (jak np. HTML, CSS  i JavaScript), lecz także np. backendowego PHP-a. Zadanie osoby na tym stanowisku nie jest łatwe, bo wymaga zajęcia się całością tworzonego oprogramowania od samych jego podstaw, do wersji wizualnej. Zdarza się, że takie wymagania znajdziemy w ogłoszeniach na Frontend Developera lub Web Developera, a bardziej pasuje do nich Fullstack Developer. W tym przypadku wymagania technologiczne są naprawdę spore, zarówno z frontendu, jak i backendu.

Jak widać, frontendowiec ma szerokie pole do wykazania swoich umiejętności. Ważne jest przede wszystkim opanowanie podstawowych technologii frontendowych, a to jak będzie wyglądała dalsza kariera Frontend Developera – zależy już od tego, przy jakim projekcie będzie się rozwijał.

Avatar
Tomasz Kwiatkowski

Wszystkie artykuły autora