Front-end development

Wat is front-end development en wat doet een front-end developer?

jellow

Wat is front-end development en wat doet een front-end developer?

Om je precies te kunnen vertellen wat front-end development is en wat een front-end developer doet, hebben wij Timothy Kleijn geïnterviewd, een actieve freelancer in het Jellow-netwerk. Hij is freelance full-stack developer, wat inhoudt dat hij zowel gespecialiseerd is in de front-end als in de back-end.

Timothy Kleijn
Ik ben Timothy Kleijn. Full-stack software ontwikkelaar gespecialiseerd in Django (Python) en React (JavaScript). Naast Django en React heb ik ook uitgebreide ervaring met Ruby on Rails en C#/.NET. Als full-stack ontwikkelaar specialiseer ik me in het volledige proces. Van de conceptfase met het design, het ontwikkelen van de front, en back-end, tot het regelen van de hosting in de cloud. Wil je meer weten? Kijk dan op mijn website. 

Wat is front-end development?

Front-end is eigenlijk alles wat aan de voorkant van een website of app gebeurt. Het openen van een website is vanuit technisch oogpunt niets meer dan het downloaden van een aantal bestanden die door je webbrowser worden omgetoverd tot een website. Daar zit van alles en nog wat tussen: een aantal foto’s die worden getoond op de pagina, metadata over de site en de lettertypes die gebruikt moeten worden. 

Sommige van deze bestanden zijn geschreven in HTML, CSS en JavaScript. En dat zijn de bestanden die je website tot leven brengen. Waarbij HTML en CSS verantwoordelijk zijn voor het leeuwendeel van wat je ziet als je een site opent en JavaScript voor de interactie. 

Welke kleur is de tekst? En hoe groot? Hoeveel ruimte zit er tussen de titel en de subtitel? Dat is vrijwel allemaal HTML en CSS. 

Als je op een knop klikt en je wil dat het menu naar beneden schuift? Als je op een pijltje naar rechts drukt en wil dat de volgende foto getoond wordt? Dat is Javascript. Dit deel is de afgelopen jaren steeds complexer geworden.

Wat doet een front-end developer?

Een front-end developer houdt zich bezig met alles wat er uiteindelijk in de browser gebeurt als iemand de site bezoekt. Een goed voorbeeld hierbij is het vormgeven van websites.

Designers maken vaak hun design in een specifiek design programma (Photoshop, Figma, Zeplin, of andere programma’s), maar de browser snapt alleen HTML en CSS. Een front-end developer wordt ingezet om een design om te zetten in code. Daarnaast zorgt de developer ervoor dat het design er goed uit komt te zien in verschillende browsers en op verschillende typen apparaten; van een desktop tot een iPhone en van Safari tot Chrome. Dit wordt meestal via HTML en CSS gedaan.

Daarnaast worden steeds meer grote front-end frameworks als React, Vue of Angular gebruikt om de front-end in elkaar te zetten. Deze frameworks gebruiken JavaScript om de hele site op te bouwen. Als dit goed gedaan wordt, zorgt het voor een heel snelle, vloeiende site die prettig is in het gebruik. Dit soort frameworks zijn de laatste jaren steeds populairder geworden. Dit komt zeker door de vloeiende interacties op sites als Facebook, Netflix of AirBNB. Als er veel interactie nodig is op een site, bieden deze frameworks vaak de beste oplossing.

Misschien is dit wel interessant voor jou:

De term ‘front-end ontwikkelaar’ is de afgelopen jaren veranderd

Door de opkomst van front-end frameworks als React, Vue, en Angular is de nadruk van front-end development steeds meer op JavaScript komen te liggen. In het verleden waren websites veel minder interactief en kon je met gedegen kennis van HTML en CSS prima uit de voeten als front-end ontwikkelaar. Nu wordt er vaak meer verwacht. 

HTML en CSS zijn sterk gericht op het design. Om hier goed mee overweg te kunnen hoef je eigenlijk niet zo veel te programmeren. Bij JavaScript is dat anders. Het schrijven van een applicatie in React of Angular kan net zo complex zijn als het bouwen van de back-end. Overigens is er nog steeds meer dan genoeg vraag naar developers die zich focussen op de design kant van het verhaal via HTML en CSS.

Wat is het leukste aan front-end development?

Ik ben zelf full-stack developer. Dat betekent dat ik zowel front-end als back-end development doe. Daarnaast houd ik me bezig met DevOps. 

DevOps is een samentrekking van “development” en “operations” en is een gebruik en een praktijk binnen softwareontwikkeling die tot doel heeft softwareontwikkeling (Dev) en software operaties (Ops) samen te brengen

Ik vind het zelf het leukst om de variatie op te zoeken. Door je bezig te houden met verschillende technologieën krijg je ook een beter totaalbeeld. Alles moet natuurlijk met elkaar samenwerken en om een groot systeem op te zetten moet je bekend zijn met alle facetten van een applicatie.

Je zit als freelancer altijd bovenop de nieuwste ontwikkelingen en je kan je niet verschuilen achter teamgenoten

Freelancen vind ik geweldig, omdat je steeds nieuwe uitdagingen voorgeschoteld krijgt. Je moet altijd bovenop de nieuwste ontwikkelingen zitten. Je hebt niet de mogelijkheid om je te verschuilen achter teamgenoten. Je moet wel houden van die uitdaging, omdat er over het algemeen meer van je verwacht wordt als freelancer.

front-end development

Hoe kan je als bedrijf een freelance front-end developer inzetten?

Er zijn globaal gezien twee soorten werkzaamheden waarbij front-end kennis nodig is:

  1. Bij het implementeren van een design. Als het belangrijk is dat een design goed geïmplementeerd wordt en op alle schermen goed getoond wordt, dan heb je daar een developer voor nodig die goed overweg kan met HTML en CSS. De meeste back-end developers zijn bekend met de basisprincipes, maar om een ingewikkeld design om te zetten in code heb je vaak toch iemand nodig die echt verstand heeft van front-end development. Specifiek HTML en CSS in dit geval.
  2. Bij het implementeren van een grote site of app met veel interactiviteit. Netflix is natuurlijk een extreem voorbeeld, maar er zijn genoeg kleinere sites die een vloeiende interface nodig hebben, zodat de site aanvoelt als een app. Voor het maken van dit soort applicaties heb je mensen nodig die verstand hebben van een front-end framework. React, Vue, en Angular zijn drie van de grootste. De nadruk bij dit soort opdrachten ligt meer op JavaScript.

Wanneer is een front-end developer écht nodig? 

Het goed implementeren van een ingewikkeld design is iets waarbij je over het algemeen niet om een front-end ontwikkelaar heen kan. Hoewel HTML en CSS in beginsel niet al te ingewikkeld lijken, wordt het een stuk lastiger als je gaat werken met ingewikkelde layouts. Zonder diepgaande kennis van zaken als Grid of Flexbox, ben je gemakkelijk uren kwijt aan het stylen van een simpel onderdeel van een pagina. Met de juiste kennis kan dit veel sneller en mooier opgelost worden.

Freelancer vinden? Download het 6 stappenplan


Wat zijn veelgemaakte fouten die je tegenkomt in front-end development?

Een veelgemaakte fout (die ook nog eens duur kan uitpakken) is als een applicatie wordt gebouwd met technologie die eigenlijk niet geschikt is voor de opdracht. Hoewel React momenteel heel populair is, is het voor veel projecten een overkill. Ik zie regelmatig applicaties die een enorm complexe React opbouw hebben, terwijl dat niet nodig was geweest. Dit kost veel meer tijd om te maken en te onderhouden, terwijl de voordelen soms minimaal zijn.

Het andere uiterste zie ik ook weleens voorbij komen. Mensen die een simpele WordPress site proberen te optimaliseren tot op een niveau dat eigenlijk niet meer haalbaar is. Het resultaat is dat de site uiteindelijk steeds trager en steeds minder voorspelbaar wordt. Er komen rare fouten voor en uiteindelijk is de site bijna niet meer te onderhouden.

Waar loop je het meest tegenaan bij opdrachtgevers?

Er wordt vaak niet genoeg tijd besteed aan het onderhouden en opschonen van code. Het resultaat is dat de codebase door de tijd heen steeds rommeliger wordt. Daardoor treden er sneller fouten op en wordt het allemaal steeds moeilijker te onderhouden.

Er wordt vaak niet genoeg tijd besteed aan het onderhouden en opschonen van code, met als resultaat dat er steeds sneller fouten optreden

Wat is je leukste freelance opdracht? En waarom? 

Ik werk momenteel als freelancer bij Mediahuis Nederland. Dat is het bedrijf achter onder andere de Telegraaf en Metro. Het is echt een full-stack opdracht waarbij ik met veel verschillende technologieën aan de slag kan. Van front-end tot back-end en een beetje DevOps. Er zitten veel uitdagingen aan, maar dat is alleen maar goed. Daar word je uiteindelijk beter van.

Wat zijn je tips voor front-end developers die starten met freelancen?

DOE HET NIET!!! Nee, geintje. Het is een geweldige keuze om te gaan freelancen, maar je moet er wel voor zorgen dat je profiel op orde is. Ik werkte zelf nog maar tweeënhalf jaar als developer toen ik begon als freelancer. Dat bleek erg kort. In eerste instantie kijken mensen natuurlijk naar je cv. Als je maar een paar jaar werkervaring hebt – al ben je nog zo goed – kom je meestal niet door de eerste selectie. Via intermediairs ben ik wel tientallen keren voorgesteld bij bedrijven. Uiteindelijk heb ik er maar één interview uit gehaald.

Bij één-op-één contact met mijn beoogde klant ging dat al een stuk beter. Ik kreeg de kans om mijn verhaal te doen. Die manier van werken bleek voor mij het meest effectief. Als je bij een groot bedrijf aan de slag wil als freelancer, blijft de moraal van het verhaal: zorg dat je een mooi profiel hebt: een mooi cv en mooi portfolio. Als je nog niet zo veel werkervaring hebt, laat dan een aantal mooie projecten zien om dat te compenseren. En zorg ervoor dat je klaar bent voor een goed interview met de klant. Opdrachtgevers stellen vaak hogere eisen aan freelancers ten opzichte van vaste medewerkers en stellen gerichte vragen over resultaten en productiviteit.

Wat zijn je tips voor opdrachtgevers die op zoek zijn naar een front-end developer?

Laat je goed informeren over wat je nodig hebt. Dat is cliché, dat weet ik. En bovendien is het moeilijk. Maar vraag verschillende partijen welke technologieën ze zouden gebruiken om een bepaald probleem op te lossen. Vraag ze om hun keuzes toe te lichten. Sommige developers kennen maar één bepaalde technologie en willen daarmee alles oplossen. Dat kan leiden tot veel te complexe oplossingen, of problemen op langere termijn omdat sites uit elkaar vallen van ellende. Als iemand een weloverwogen toelichting geeft waarom jouw project in een bepaalde technologie gemaakt kan worden, is dat meestal een goed teken dat er goed over nagedacht is.

 

Tags: Development - Freelancers - Front-end

Deel dit bericht

Misschien vind je dit ook interessant?

Wat is een content marketeer

Wat is een content marketeer?

Wat is een content marketeer? Op het moment van schrijven is de rol van een content marketeer (je schrijft eigenlijk contentmarketeer maar ja,...

6 minuten tijn