Înapoi la blog

Ce este și cu se ocupă un Front-End Developer

Poate că și tu ai auzit în ultimul timp că industria IT se numără printre cele mai sigure în fața recesiunii care ne așteaptă ca urmare a epidemiei de Covid-19. Dacă te întrebi cum să devii Front-End Developer, ce trebuie...

Poate că și tu ai auzit în ultimul timp că industria IT se numără printre cele mai sigure în fața recesiunii care ne așteaptă ca urmare a epidemiei de Covid-19. Dacă te întrebi cum să devii Front-End Developer, ce trebuie să faci în calitate de Front-End Developer și ce tehnologii trebuie să înveți pentru asta, atunci ai venit unde trebuie. 

Ți-am pregătit un ghid în care îți răspundem pe larg la toate întrebările de mai sus, dar și la altele precum „Cum arată un anunț de angajare pentru un Front-End Developer”, „Cât câștigă un junior web developer” sau „Care sunt skill-urile de care ai nevoie în această meserie”. 

Pe net există o mulțime de anunțuri care îți promit că te învață HTML sau Java într-o săptămână, așa că vom analiza mai în amănunt și care este abordarea pe care trebuie să o ai când vine vorba de ce fel e cursuri să urmezi: sunt bune cursurile care îți promit cunoștințe aprofundate într-un timp incredibil de scurt? Mai trebuie să urmezi o facultate ca să devii programator?

Dar să începem cu începutul:

Ce este un Front-End Developer și ce face acesta?

Un Front-End Developer este persoana care implementează diverse web designuri folosind diverse limbaje de programare (vom vorbi mai mult despre acestea mai jos). La orice site te-ai uita, aproape tot ce vezi ține de partea de front end development: de la așezarea în pagină, la meniurile prin care navighezi, toate acestea au fost dezvoltate de către un Front-End Developer. 

Poate ai dat peste anunțuri de joburi care căutau Ingineri de Front-End și te întrebi ce fac aceștia. Ei bine, în cele mai multe cazuri „developer” și „inginer” sunt termeni interșanjabili. Așa că dacă dai peste un anunț de Inginer de Front-End, nu te panica.

Care sunt limbajele specifice jobului de Front-End Developer

Un Front-End Developer va folosi în principal ca limbaje de bază HTML, CSS, și JavaScript. Practic, aceasta este baza de cunoștințe pe care trebuie neapărat să o ai, urmând ca apoi să înveți alte skill-uri și tool-uri în funcție de compania la care vrei să lucrezi și de ce fel de web developer vrei să devii. Vei afla în continuare că există anunțuri de joburi pentru Front-End Developeri mai orientate către partea de design sau către partea de coding. Altele anunțuri cer și cunoștințe minime de back-end, de exemplu. 

Dar să începem mai întâi cu cele trei limbaje pe care un Front-End Developer trebuie neapărat să le stăpânească: 

1. HTML

HTML (HyperText Markup Language) este limbajul care definește anumite părți ale unei pagini web sau aplicații de mobil browserelor web. Practic, HTML îi „spune” browserului care parte a paginii este Header, Footer, unde sunt așezate imagini, grafici sau videouri. 

Browserele iau apoi conținutul HTML și îl traduc în ce vezi tu ca utilizator pe ecran. HTML-ul este folosit pentru toate browserele, inclusiv Safari, Firefox sau Google Chrome. De asemenea, HTML este limbajul universal pentru a face ca site-urile să fie „căutabile” de către motoarele de cătare precum Google, Yahoo sau Bing în funcție de cuvintele cheie. 

Nu vei ajunge prea departe fără HTML dacă vrei să construiești site-uri structurate și optimizate din punct de vedere SEO, motiv pentru care HTML este printre primele limbaje pe care le vei învăța dacă ești interesat de programare. 

2. CSS

CSS sau Cascading Style Sheets pune un mare accent pe cuvântul stil. În timp ce HTML-ul este folosit pentru a structura un document web (definind headline-uri și paragrafe și permițându-ți să integrezi imagini, video-uri și alte elemente media), CSS te ajută să definești aspecte care țin de stil: încadrarea în pagină, culorile și fonturile, toate acestea sunt definite cu ajutorul CSS. Gândește-te la HTML ca fiind structura unei case și la CSS ca fiind designul interior. 

3. JavaScript

JavaScript îți permite să adaugi mult mai multe funcționalități site-ului pe care îl construiești, și chiar vei putea construi multe aplicații web de bază folosind doar HTML, CSS și JavaScript. Acesta din urmă este folosit pentru a crea și a controla elemente precum hărți care se updatează în timp real, filmulețe interactive și jocuri online. Site-uri precum Pinterest folosesc foarte mult JavaScript pentru a-și face interfața ușor de folosit - datorită JavaScript, site-ul nu se reîncarcă de fiecare dată când dai pin la ceva. 

De asemenea, JavaScript este printre cele mai populare limbaje de programare din lume și indiferent de direcția carierei tale, îți va fi de folos să stăpânești acest limbaj. 

Ce cunoștințe trebuie să ai pentru a obține un job de Front-End Developer

Acum că ai aflat ce implică exact rolul de Front-End Developer, ce trebuie mai exact să faci pentru a deveni unul? 

Am acoperit mai multe surse pentru a veni cu răspunsuri complete și detaliate, inclusiv anunțuri de joburi, conținutul cursurilor al școlile de coding, tehnologiile folosite de către marile companii, dar și perspectivele liderilor din industria de web development. 

Astfel, vei înțelege care sunt cerințele reale pentru un job de Front-End Developer. 

Care sunt cerințele cerute de către angajatori pentru jobul de Front-End Developer

Ne-am uitat la anunțurile de joburi ale diverselor companii care caută să angajeze un Front-End Developer. Deși fiecare anunț de job este diferit, iar skill-urile cerute sunt diverse, nu trebuie să le știi chiar pe toate. De exemplu, există anunțuri care cer cunoștințe de Back-End, precum Python sau Django

Cerințe: 

  • Experiență de 2-4 ani cu JavaScript, CSS și HTML
  • Abilități de comunicare excelente și de a da și a primi feedback
  • Îți place să colaborezi și să participi la proiecte și discuții de echipă
  • Ești orientat spre a dezvolta produse accesibile, dar cu cele mai noi tehnologii
  • Ai experiență în a lucra cu React și alte framework-uri similare
  • Știi să testezi produsele dezvoltate pentru a te asigura că livrezi software-uri de cea mai înaltă calitate
  • Nu te temi să experimentezi și cu codurile de back-end (Python, mai exact)
  • Ești familiarizat cu framework-urile pentru partea de servere, precum Django

Altele cer skill-uri de UI/UX design și cunoștințe de Photoshop și Sketch. Acest lucru demonstrează că unele joburi de Front-End Developers sunt mai orientate pe coding, iar altele mai mult pe visual design, în timp ce multe altele le vor combina pe altele.

Cerințe:

  • 1-2 ani de experiență de visual design, în special pe partea de UI/UX. Cunoștințe de Photoshop și Sketch
  • 1-2 ani de experiență în Front-End Development, în special cu WordPress, PHP, JavaScript, jQuery, Grunt, SASS și CSS
  • O bună înțelegere a implementării practicilor de SEO, în special ce ține de web development
  • Abilitatea de face față mai multor proiecte fără a face rabat de la calitate
  • Abilitatea de a colabora cu mai multe echipe pe partea de digital și de a comunica în mod eficient  

Există și anunțuri care cer cunoștințe de ES6, d3, webGL sau alte cunoștințe de framework-uri de data visualization. O altă diferență în acest anunț este că acesta cere și o diplomă de licență sau master, spre deosebire de celelalte care cer doar experiență. 

Cerințe:

  • Cursuri de front-end de specialitate 
  • Experiență de design și construcție a unui număr mare de aplicații web
  • Cunoștințe complexe a celor mai moderne tehnici ce țin de JavaScript, inclusiv extensiile ES6 și ES2017
  • Cunoștințe solide informatică
  • Experiență cu React și Redux
  • Experiență cu d3, webGL și/sau alte framework-uri pentru data visualization
  • Cunoștințe de bază de visual design
  • Ești o persoană integră, credibilă și responsabilă
  • Flexibilitate și abilitatea de multi-tasking; poți lucra într-un mediu care se dezvoltă și evoluează continuu și capacități bune de prioritizare 

Ultimul anunț analizat cere skill-uri de Front-End Development, inclusiv framework-uri precum SASS și MVC, cunoștințe de Git și de tool-uri precum NPM, Webpack și Grunt. 

Cerințe:

  • 3 ani+ de experiență profesională într-o poziție de web development
  • Cunoștințe solide de SASS, CSS, Angular. JavaScript, REST. JSON, ES6
  • Înțelegerea programelor NPM, Webpack, Grunt și Unit
  • Cunoașterea framework-urilor MVC
  • Skill-uri foarte bune de scriere și comunicare
  • Cunoștințe solide de Git
  • O bună înțelegere a lucrului în medii de dezvoltare, planificare și producție

Pe lângă cunoștințele specifice domeniului, vei observa că toate anunțurile includ și anumite soft skills pe care angajatorii le caută într-un potențial candidat. În principal, trebuie să dai dovadă de seriozitate și să fii un bun comunicator. În ziua de azi, jobul de developer poate fi unul destul de social. Nu mai este cazul de prejudecăți că programatorii sunt niște tocilari închiși în casă care nu vorbesc nimeni! 

 

În ceea ce privește toate skill-urile tehnice menționate mai sus, nu este cazul să te descurajezi. Ține cont de faptul că majoritatea anunțurilor conțin un fel de wish list și că foarte puțini candidați bifează toate cerințele, și nici companiile nu se așteaptă să o faci. Însă în calitate de Front-End Developer, trebuie să acoperi un set de cunoștințe „obligatorii”, la care să mai adaugi câteva care să te facă mai valoros în ochii angajatorului, și în funcție de interesele tale. Dacă ești mai interesat de partea de design, bifează câteva la capitolul acesta. Dacă te interesează mai mult partea de programare, învață cât mai multe din această perspectivă. 

Care sunt tehnologiile de Front-End folosite de marile companii

Din moment ce anunțurile joburi pentru Front-End Developeri variază atât de mult, cel mai util este să te concentrezi pe ce te interesează cu adevărat. Dacă visul tău este să lucrezi la o companie anume, documentează-te cu privire la tehnologiile de Front-End folosite de către aceștia. Iată câteva exemple de tehnologii folosite de marile companii:

  • Airbnb folosește React, ES6, SASS, CSS/HTML și JavaScript
  • Uberfolosește Node.js, React, Angular, LESS, SASS, ES2015 și CoffeeScript
  • Amazonfolosește JavaScript, Typescript, Angular.js și LESS

Imaginează-ți că ai putea să lucrezi oriunde, ce companie ai alege? Caută apoi anunțurile de joburi pentru a vedea care sunt cerințele lor pentru un Front-End Developer și învață-le. Cine știe, poate într-o zi, chiar vei ajunge să lucrezi acolo!

În ceea ce privește cerințele pentru diplomele de facultate, conform studiilor noastre, peste 52% dintre angajatori sunt de părere că diplomele de facultate nu sunt necesare pentru a deveni un bun web developer, ci mai degrabă cunoștințele acumulate și soft skill-urile, care în ultimii ani au început să fie mai valoroase datorită faptului că sunt mai mult „înnăscute” și nu prea se pot învăța.  

Care sunt tehnologiile de Front-End pe care le vei învăța la Codecool:

Cursul online de programare Front-End este structurat în 4 module pe care le vei face LIVE, împreuna cu mentorii Codecool, fiecare cu o durată de 4 săptămâni. În aceste 4 module vei învăța cum să creezi un site, cum să construiești un site dinamic și interactiv, precum și aplicații web. 

În ceea ce privește tehnologiile pe care le vei învăța, printre acestea se numără cele mai noi de pe piață, precum HTML5, CSS3, Bootstrap4, React și Webpack, dar și JavaScript, Ajax Calls, JSON, HTML Forms și alte tehnologii de frameworks

Pe toată durata cursurilor, vei fi ghidat de mentorii noștri care te inspiră chiar și online și care te vor motiva să reușești. Programarea poate fi învățată în multe moduri, dar noi la Codecool suntem de părere că puterea exemplului este cea mai bună metodă. 

În plus, ce face diferența dintre un programator bun și unul excelent sunt soft skill-urile, așa că la Codecool le-am inclus obligatoriu în programă. În cadrul fiecărui modul vei avea ședințe special dedicate dezvoltării și deprinderii celor mai importante soft skill-uri pentru a învăța să abordezi corect și eficient orice task și a căpăta încredere de sine. 

 

Ce spun experții din domeniul IT că ar fine să știi pentru a îți crește șansele de a fi angajat 

Ne-am uitat la anunțurile de joburi, la tehnologiile folosite de companii, la cele predate în școli, acum haide să vedem și care sunt perspectivele experților din domeniu!

Brandon Morelli a dezvoltat această hartă mintală care subliniază cele mai importante limbaje de programare, tool-uri și framework-uri, și care arată mai clar legăturile dintre ele și ordinea în care acestea ar trebui învățate: 

Harta mintală a tehnologiilor de Front-End: începi de la cunoștințele de bază: HTML, CSS și JavaScript și apoi avansezi în funcție de interesele tale și de jobul care te interesează. Nu trebuie să înveți „tot”, ci trebuie să te documentezi dinainte ca să știi în ce să te specializezi. (Sursa imaginii)

După cum vezi, acesta menționează o mulțime de tehnologii de front-end (unele dintre acestea apar și în anunțurile de mai sus). Iată ce recomandă Brandon că ar trebui să înveți pentru a deveni un Front-End Developer:

1. JavaScript Frameworks

Există o mulțime de framework-uri de JavaScript, însă cele mai populare sunt Angular, React și Vue.js.

Cele mai recomandate sunt Angular sau React. Însă fii pregătit: framework-urile JavaScript sunt considerate cele mai dificile părți pe care trebuie să le înveți pentru a deveni un Front-End Developer. 

2. CSS Tools

Pentru a deveni Front-End Developer, trebuie să cunoști următoarele două tool-uri de CSS:

2.1 Preprocesoarele: 

Folosirea preprocesoarelor are multe avantaje, precum faptul că îți „curăță” codul, îl menține organizat și te ajută să respecți principiul DRY (Don't Repeat Yourself). Cele mai populare sunt Sass, Less și Stylus, însă Sass se numără printre cele mai folosite. 

2.2 CSS Frameworks: 

Acestea te vor ajuta să optimizezi workflow-ul cu ajutorul unor tabele deja construite și al altor componente CSS. Două exemple foarte folosite sunt Bootstrap și Foundation, însă Bootstrap este cel mai popular. 

3. Responsive Web Design

Un web design responsive însă abilitatea de a construi site-uri care funcționează corect pe toate dimensiunile de ecran: desktop, tabletă și mobil. Această abilitate este o funcție intrinsecă a framework-urilor Bootstrap și Foundation, așa că dacă înveți una dintre acestea, ai bifat și această abilitate. 

4. Testing 

Jest, Mocha, Jasmine și Enzyme sunt tool-uri care îi ajută pe developeri să scrie teste pentru aplicații. După ce vei învăța toate tehnologiile de mai sus, vei ajunge și la testarea aplicațiilor. E bine să cunoști și aceste tehnologii, însă vei putea obține un job și fără. 

Deși par foarte multe lucruri de învățat, nu trebuie să cunoști totul în cel mai mic detaliu. În funcție de compania la care alegi să lucrezi, poți obține un job de front-end developer și specializându-te în câteva skill-uri. 

 

Dar care sunt „soft skill-urile” de care vei avea nevoie?

În ultimii ani, „soft skill-urile” au devenit mai importante în ochii angajatorilor decât skill-urile tehnice. Spre deosebire de primele, cele din urmă pot fi deprinse mai ușor. Așa că pe lângă cele de bază, cum ar fi că trebuie să ai spirit de echipă și să fii un bun comunicator, iată care sunt „soft skill-urile” pe care ar fi bine să le ai în CV dacă vrei să ai o carieră de succes în front end development. 

1. Fii prietenos

Indiferent de cât de multe cunoștințe ai, dacă ai o personalitate drăguță și ești o persoană cu care se poate lucra ușor, vei avea mai mult succes decât dacă ai foarte multe cunoștințe, dar ești de-a dreptul intolerabil.

2. Fii un bun ascultător

Mai ales dacă ești la începutul carierei, vei avea multe de învățat de la colegii cu mai multă experiență în domeniu. Așa că reține de pe acum că nu vei termina niciodată de învățat în această meserie. Tehnologia evoluează constant, iar tu trebuie să ții pasul. 

3. Fii motivat

Arată că ești pasionat și motivat de ceea ce faci. 

4. Învață din greșeli

În mod inevitabil, vei greși la un moment dat. Însă trebuie să dai dovadă de atitudine și să înveți din asta pentru a nu mai repeta aceeași greșeală pe viitor. 

5. Dă dovadă de empatie

Ce înseamnă să ai parte de o experiență grozavă pe un site? Nu vei ști acest lucru dacă nu înțelegi care vor fi utilizatorii site-ului respectiv. Pe internet, site-urile pe care le vei construi vor fi vizitate de către o varietate de oamenii, fiecare cu device-urile, browserele și așteptările lor. Unii oameni au abilități diferite: unii văd mai bine decât alții, unii poartă ochelari și alții sunt daltoniști sau suferă de discromatopsie. Ideea este că în calitate de Front-End Developer, este de datoria ta să le oferi cea mai bună experiență pe site-ul pe care îl construiești, iar pentru aceasta trebuie să dai dovadă de multă empatie. 

6. Fii un bun comunicator

Developerii au această reputație de a fi antisociali - de a fi niște oameni care preferă să stea la calculator toată ziua și să programeze. Însă adevărul este că această percepție este mai mult o prejudecată, deoarece un Front-End Developer bun este neapărat și un bun comunicator. 

De multe ori, va trebuie să lucrezi cu designeri, cu alți developeri, cu manageri de proiect sau chiar cu clienți, așa că skill-urile de comunicare sunt un must dacă vrei să ai succes în această carieră.  

Care sunt salariile pe care le poți câștiga în calitate de Front-End Developer

Domeniul IT este cunoscut pentru salariile bune pe care le oferă, și mai ales în această perioadă, IT-ul este considerat ca fiind unul dintre cele mai sigure domenii. În funcție de anumite criterii, precum experiența de lucru, specializarea și soft skill-urile pe care le ai, salariul unui Front-End Developer arată în felul următor: 

  • Junior developer, 0-2 ani experiență: între 3.143 - 5.000 lei (salariu IT mediu de 805 EUR) 
  • Middle developer, 2-4 ani experiență: între 5.000 - 6.000 lei
  • Senior developer, peste 4 ani experiență: de la 9.000 lei

Ești pregătit pentru noul tău job de Front-End Developer?

Acum că ai aflat ce face, ce tehnologii trebuie să știe, ce skill-uri trebuie să aibă și cât câștigă un Front-End Developer, nu mai rămâne decât să te înscrii la cursul online de front end Codecool, acreditat de Ministerul Educației și Cercetării și de Ministerul Muncii și Justiției Sociale! 

Acesta durează doar 16 săptămâni, iar la sfârșit vei avea cunoștințele necesare pentru a crea site-uri  interactive, precum și aplicații web. Totodată, vei beneficia de un sistem care te va ajuta să fii gata pentru orice provocare și să te adaptezi rapid la medii noi. La finalul cursului vei putea aplica la unul dintre cele 900+ joburi de programatori din România, sau chiar să îți începi propriile proiecte de freelance!

 

Distribuie