W internecie jest naprawdę wiele różnych materiałów do nauki frontendu. Czasami ciężko się nie pogubić będąc przytłoczonym ilością rzeczy, których trzeba się nauczyć. Dlatego właśnie przedstawiam Ci listę tego, co musi umieć junior frontend developer. Zapraszam do lektury.

Angielski

Angielski to absolutna podstawa. Większość materiałów obecnie, oraz tych, które dopiero powstaną, związanych z frontendem jest po angielsku. Owszem, można znaleźć polskie książki czy blogi na temat frontendu, ale o wiele szybciej i skuteczniej odnajdziesz odpowiedź na pytanie w angielskiej dokumentacji czy na angielskich forach. Chociażby  nieśmiertelny https://stackoverflow.com/ – bez angielskiego ani rusz. dlatego angielski jest pierwszym językiem, którego musisz się nauczyć jako junior, niezależnie czy frontend, czy backend, czy bazodanowiec itd.

Szukanie informacji

Drugą podstawową umiejętnością jest sztuka zbierania informacji, inaczej zwana sztuką używania Google. Musisz po pierwsze umieć zdefiniować swój problem, co nie zawsze jest proste. Po drugie, musisz umieć go dobrze wpisać w wyszukiwarkę. Czy cała nazwa błędu, czy tylko kod, czy może jakieś konkretne słowa z błędu, jakich słów kluczowych użyć, jak długie czy skomplikowane zapytanie zadać, jak znaleźć powiązane rzeczy do głównego pytania itd. Musisz nauczyć się dobrze zadawać pytania, aby znaleźć dobre odpowiedzi.

Rozbijanie zadań na mniejsze

Jak zjeść słonia? Po kawałku! Tak samo jest z zadaniami. Jeżeli ma ono zająć Ci więcej czasu, musisz rozbić je na etapy. Podziel zadanie np. na pięć mniejszych, i rób je po kolei. Dzięki temu widzisz postęp, podświadomie cieszysz się ze skończenia zadania, oraz masz jasną wizję tego, ile Ci jeszcze zostało.

Konfiguracja środowiska

Różne projekty frontendowe mają różną konfigurację. Różne wersje node.js, babel, webpack, grunt, gulp, sass czy scss to tylko część technologii, która może być użyta w projekcie. Musisz nauczyć się odpowiednio konfigurować i uruchamiać projekt, aby w nim pracować, niezależnie od użytych technologii. Głównie chodzi o postawienie serwera developerskiego, zrozumienie co się dzieje w plikach konfiguracyjnych oraz co robią konkretne narzędzia użyte w projekcie.

Podstawy baz danych

Wbrew pozorom warto poznać podstawy baz danych. Jak dane są przechowywane, w jakich formatach, jak się wyciąga konkretne rekordy itd. Dzięki temu będziesz w stanie prosić o konkretniejsze dane oraz stworzysz aplikację, która będzie przesyłać dane lepiej pasujące do bazy. No i kiedyś przyjdzie czas, że poza JS na frontendzie zainteresujesz się node.js, czyli backendem, a tam już wiedza z baz na pewno się przyda.

Podstawy technologii webowych

Musisz poznać podstawy technologii webowych, inaczej robienia stron www, czyli np. czym jest HTML, CSS, selektory, znaczniki, klasy, id, atrybuty itd. Musisz poznać podstawy tworzenia stron internetowych oraz jak się tworzy strony w sposób poprawny i semantyczny. 

Sposób działania przeglądarki

Musisz wiedzieć, jak działa przeglądarka, jak wyświetla stronę, jak JS działa z przeglądarką, jak JS jest interpretowany, czym są funkcje przeglądarki, czym jest event loop itd. Musisz też wiedzieć jak używać przeglądarki w sposób, który usprawni Ci pracę, czyli np. konsola, inspektor, przeglądanie plików, przeglądanie akcji sieciowych wraz z odpowiedziami czy różne dodatki do przeglądarki, ułatwiające pracę z konkretnymi bibliotekami czy frameworkami.

Znajomość działania internetu

Kiedy wiesz już, jak działa przeglądarka, dowiedz się, jak działa internet. Jak to się dzieje, że po wpisaniu adresu dostajesz stronę, jak odnajduje się odpowiednie strony w internecie, jak działa wyszukiwarka, czym jest CORS itd. Poznaj podstawy działania internetu.

Znajomość javascript

Musisz wiedzieć, czym jest i jak działa javascript. Musisz znać podstawy JSa, umieć pisać w nim prostą logikę, obsługiwać eventy, modyfikować DOM lub zmieniać HTML i CSS. 

Testowanie

Podstawy testowania aplikacji to ważna rzecz. Na początku testowanie manualne, później możesz się nauczyć dowolnej biblioteki do testowania automatycznego lub do testów jednostkowych. Najpopularniejsze obecnie biblioteki do testowania to MochaJS, JEST oraz Selenium.

JSON

Musisz wiedzieć, czym jest JSON, gdyż to właśnie w tym formacie Twoja aplikacja będzie odbywała całą komunikację z serwerem. Na początek dowiedz się, co może być przesłane, co nie, jak się JSowe dane zamienia na JSON i jak się JSON poprawnie odczytuje.

Kontrola wersji kodu

Musisz wiedzieć, czym są narzędzia do kontroli wersji kodu, czym się charakteryzują, czym jest najpopularniejsze narzędzie do kontroli wersji, czyli GIT, podstawowe komendy i pojęcia takie jak: push, pull, commit, checkout, branch itd. Dodatkowo dobrze by było znać GIT FLOW.

Podsumowanie

Teraz już wiesz, co musi umieć junior frontend developer. Jak widzisz, jest całkiem sporo rzeczy do poznania, jednak bez tej wiedzy znalezienie pierwszej pracy i utrzymanie się w niej może być trudne. Później przyjdzie czas na frameworki i biblioteki. Na początku poznaj podstawy i zrozum je. Dzięki temu będziesz lepszym kandydatem podczas rekrutacji i lepszym pracownikiem po zatrudnieniu!