Zawód: Programista, czyli jak zostać Front-end Developerem.

22.07.2019

Artykuł

Zastanawiasz się nad rozpoczęciem swojej przygody w IT, ale nie wiesz, która ścieżka rozwoju będzie dla Ciebie najlepsza? A może właśnie zdecydowałeś się na kurs Front-end i chcesz dowiedzieć się, jak móc szybko znaleźć pierwszą pracę w branży? Sprawdź, co zrobić, aby zostać Junior Front-end Developerem, a także jak wygląda praca na tym stanowisku!

Kim jest Front-end Developer?

Osoba pracująca jako programista front-end odpowiada za zakodowanie wizualnej części projektu (zazwyczaj strony internetowej lub aplikacji webowej), czyli tej widocznej z perspektywy użytkownika. Jego zadaniem jest dodanie i ułożenie wszelkich elementów graficznych oraz zadbanie o to, aby funkcjonowały w oparciu o zasady tzw. responsywności, czyli dopasowywały się do różnego rodzaju urządzeń.

Święta trójca Front-end Developera

Trzy podstawowe umiejętności, jakie musi posiadać każdy programista zajmujący się front-endem to znajomość HTML, CSS i JavaScript. Te trzy technologie są zazwyczaj niezbędne, aby stworzyć w pełni funkcjonalną stronę internetową lub aplikację webową i są najczęściej wymagane przez pracodawców poszukujących Front-end Developerów.

Według ankiety serwisu Stack Overflow “Developer Survery 2019” są to także najpopularniejsze technologie na świecie.

wyniki ankiety Stack Overflow - JavaScript i HTML/CSS znajdują się w czołówce najpopularniejszych technologii na świecie

Co więcej, według innego badania przygotowanego przez Hackerrank – “2019 Developer Skills Report” – JavaScript i ściśle powiązany z nim TypeScript były jednymi z najczęściej wskazywanych przez programistów językami, których chcieliby się nauczyć w 2019 roku.

wykres prezentujący języki programowania, których chcą nauczyć się programiści - JavaScript na bardzo wysokiej pozycji

Dane te pokazują, jak duże znaczenie mają technologie, którymi posługują się programiści front-end i jak ważną rolę odgrywają w świecie IT.

Jakie cechy powinien posiadać Front-end Developer?

Wiemy już, na czym polega praca Front-end Developera oraz jakie technologie trzeba znać, aby zacząć pracę na tym stanowisku. Czas odpowiedzieć na pytanie, kto tak naprawdę sprawdzi się w tej pracy.

Cierpliwość

Podstawową cechą, którą powinien posiadać każdy programista, niezależnie od specjalności, to cierpliwość – podkreśla Bartosz Cytrowski – trener kursu Front-end w infoShare Academy – Wbrew pozorom jest to wręcz kluczowa sprawa, ponieważ w pracy developera niekiedy przychodzi taki czas, że można się do niej zniechęcić. Wynika to ze specyfiki pracy w IT, polegającej na ciągłym rozwiązywaniu nowo napotkanych problemów i szukaniu najlepszych rozwiązań. Bywa, że jest to naprawdę bardzo czasochłonne i żmudne zadanie, dlatego właśnie tak ważna w tej pracy jest cierpliwość – wyjaśnia.

Analityczne myślenie

Kolejną ważną umiejętnością, na którą często zwraca się uwagę, mówiąc o pracy w IT, jest zdolność analitycznego myślenia. Aby stosunkowo szybko i sprawnie znaleźć rozwiązanie napotkanego błędu, należy skrupulatnie i bardzo wnikliwie przeanalizować kod w poszukiwaniu przyczyny nieprawidłowego działania.

Komunikatywność

Wbrew obiegowym opiniom i obrazowi zbudowanemu przez popkulturę, bez czego bardzo ciężko byłoby sobie poradzić w pracy w IT, to zdolności komunikacyjne oraz umiejętność pracy w zespole. Jak podkreślają trenerzy infoShare Academy, większość błędów w projekcie wynika właśnie z niewłaściwej komunikacji.

Nieprawdą jest, że programista to osoba, która tylko siedzi przed komputerem i koduje odizolowana od innych współpracowników. Praca developera to głównie praca zespołowa, oparta na wzajemnej współpracy całego zespołu developerskiego, który wspólnie odpowiada za końcowy efekt projektu. Programiści, szczególnie ci pracujący w dużych firmach, mają w swoich grafikach masę spotkań i często muszą podczas nich prezentować przed członkami teamu jak i osobami z zewnątrz stworzone przez siebie funkcjonalności.

Otwartość na zmiany i chęć uczenia się nowych rzeczy

Branża IT bardzo dynamicznie się zmienia, w związku z czym wciąż pojawiają się nowe aktualizacje, rozszerzenia, narzędzia, biblioteki, frameworki, technologie. Aby nie stać się określanym przez środowisko programistów “dinozaurem”, należy stale poszerzać swoje umiejętności i być na bieżąco z tym, co nowego pojawia się w branży. W pracy programisty nie ma miejsca na sentymenty i nie można przywiązywać się do jednej technologii. Specyfika pracy programisty jest taka, że wciąż trzeba uczyć się nowych rzeczy i próbować różnych narzędzi i rozwiązań.

HTML, CSS, JavaScript i co dalej?

Poza znajomością “świętej trójcy Front-end Developera”, nasi trenerzy polecają zwrócić uwagę na jeszcze kilka bardzo istotnych zagadnień.

  • GIT – narzędzie umożliwiające synchronizowanie i kontrolowanie pomiędzy użytkownikami zmian dokonywanych na plikach. Jest to “must-have” każdego programisty, bez względu na specjalizację.
  • Framework (dowolny) – platforma programistyczna definiująca strukturę działania tworzonej przez nas aplikacji, zawierająca zbiór elementów, które ją tworzą. Pracodawcy nie wymagają zazwyczaj znajomości konkretnego frameworka, ponieważ działanie każdego z nich opiera się na podobnych zasadach. Dlatego ucząc się, warto wybrać jeden i poznać gruntownie jego działanie, by móc bez większego problemu, przesiąść się na dowolny inny, dobrany do wymagań danego projektu. Jak podkreślają nasi trenerzy – wybierając odpowiednie narzędzie, powinieneś zdecydować, które z nich najlepiej rozwiąże Twój problem.
    Według wspomnianego już raportu Stack Overflow, najpopularniejsze frameworki to: jQuery, React.js i Angular/AngularJS.
najpopularniejsze frameworki to według Stack Overflow: jQuery, React.js, Angular
  • TypeScript – stworzony przez Microsoft język programowania, będący nadzbiorem/nakładką dla języka JavaScript. Służy do weryfikacji poprawności typowania, dzięki czemu może automatycznie wyeliminować wiele potencjalnych błędów w kodzie.
  • Biblioteka (dowolna) – zbiór klas i funkcji, z których korzystają poszczególne programy. Najpopularniejsze biblioteki front-endowe to: Bootstrap, jQuery, Ext JS i AJAX.
  • Edytor (dowolny): Visual Studio Code (najbardziej popularny), Jetbrains, StackBiltz, CodeSandbox
  • język angielski – bez znajomości tego języka, ciężko funkcjonować w świecie IT. Większość dokumentacji, a także wartościowych materiałów dydaktycznych jest napisanych właśnie po angielsku.