Het verschil tussen een frontend en backend developer

Ontwikkelaars zijn er in alle soorten en maten. In de totstandkoming van een digitaal product zijn er dan ook verschillende rollen te onderscheiden. 'Frontend' en 'backend' zijn veelgebruikte termen, maar wat is nou eigenlijk het verschil tussen die twee?

profielfoto van Thomas
Geschreven door Thomas
frontend en backend developers
frontend en backend developers

De letterlijke betekenis van deze Engelse woorden is respectievelijk ‘voorkant’ en ‘achterkant’. Dit verklapt natuurlijk al een beetje de richting waarin je moet denken. Hieronder vertel ik je meer over beide kanten en hoe ze van elkaar verschillen. Ook behandel ik de rol die ertussenin zweeft: de ‘full stack’ developer.

Wat is een frontend developer?

De klassieke frontend developer richt zich tot alle zaken die betrekking hebben tot de voorkant, de ‘front’, van een digitaal product. De voorkant (front end) van een website, app of programma is alles wat een gebruiker ziet. Dit wordt ook wel de user interface genoemd. Dit komt neer op:

  • De look de plaatsing van alle zichtbare elementen (o.a. teksten, kleuren, animaties, media) en hoe deze zich tot elkaar verhouden.
  • En de feel de manier waarop je een digitaal product gebruikt (o.a. interacties, knoppen, menu’s, navigatie). Dit wordt ook wel gebruikerservaring genoemd.

Wat doet een frontend developer? Met het schrijven in verschillende programmeertalen (bv. HTML en CSS) levert deze ontwikkelaar een product dat, in het beste geval, er niet alleen visueel aantrekkelijk uitziet, maar ook een goede gebruikerservaring levert. Zo moeten moeten alle interacties met het product soepel verlopen en moet het voor de gebruiker direct duidelijk zijn waar hij of zij op kan klikken.

Ook is het de taak van een frontend developer om een responsief product te realiseren. Dit houdt in dat een website, app of programma op verschillende apparaten en/of verschillende schermgroottes overal goed wordt weergegeven en door iedereen goed kan worden gebruikt. Toegankelijkheid is daarbij ook een woord dat je steeds vaker hoort. Dat houdt in dat je rekening houdt met gebruikers met een mogelijke beperking (o.a. slechtzienden, slechthorenden, dyslectici). Voor overheidswebsites bestaan hier zelfs regels voor. De frontend developer moet inspanningen leveren om hieraan te voldoen. Denk aan duidelijke foutmeldingen bij formulieren en een duidelijk contrast tussen tekst en achtergrond.

De developer staat er niet alleen voor. Het realiseren van websites, apps en programma’s gaat vaak op basis van designs. Deze worden gemaakt door een (UX/UI) designer. De designer bedenkt (samen met de developer) hoe het product eruit komt te zien en hoe deze kan worden gebruikt. Door middel van programmeertalen als JavaScript en/of HTML vertaalt de front-end developer vervolgens het design naar een website, app of programma.

Developer Marley en designer Marley overleggen over UX
Designer Arthur en front end developer Marley bespreken de gebruikerservaring van een website

Verschillen binnen frontend

In de bovenstaande beschrijving noemde ik de frontend developer bewust ‘klassiek’. Er is namelijk een tweedeling binnen frontend die de laatste jaren steeds duidelijker wordt. Je hebt enerzijds de creatieve frontender. Deze sluit goed aan bij de klassieke rol: iemand die design naar pixel vertaalt aan de hand van HTML, CSS en ‘een beetje’ JavaScript. Daartegenover staat de technische frontender.

De technische frontender werkt voornamelijk met JavaScript en frameworks/libraries als React, Angular en Vue. Deze frontender krijgt steeds meer invloed op de data die een backend systeem aanlevert. Bijvoorbeeld in apps waar gebruik wordt gemaakt van GraphQL. Hier bepaalt de frontend welke data wel en wordt opgehaald, in tegenstelling tot een API die vanuit de backend alle data aanlevert.

Ook verzorgt de technische frontend logica binnen apps en websites die eerder was weggelegd voor de backend. Een goed voorbeeld hiervan is te herkennen in de app van Walker Fire die Linku heeft gemaakt. In deze app worden de meeste data mutaties in de frontend gedaan. Dit omdat een online verbinding met de backend niet altijd gegarandeerd is en de app dus ook offline moet werken.

Een diepere analyse van de tweedeling in frontend is te lezen op de website van CSS-tricks.

Wat is een backend developer?

De backend developer creëert, regelt en beheert alles wat aan de achterkant van een digitaal product gebeurt. Dit zijn de dingen die je als gebruiker vaak niet kunt zien, denk aan:

  • het beheren en inrichten van servers zodat data digitaal aangeleverd en verwerkt kan worden op basis van de interacties van gebruikers aan de ‘voorkant’.
  • applicatie- en databeheer zodat de juiste actie verbonden wordt aan de interactie. Je kunt veel met data, denk aan: opvragen, aanmaken, opslaan, bewerken, berekenen, versturen, vergelijken, combineren etc. De applicaties en databases aan de achterkant worden ingericht door back end developers om deze acties mogelijk te maken voor de gebruiker.
  • de koppelingen tussen applicaties en databronnen het stroomlijnen van data zodat digitale producten met elkaar kunnen communiceren.
  • de beveiliging van digitale producten het afschermen van data voor onbevoegden, het verminderen van veiligheidsrisico’s en het risico op dataverlies beperken.

Doordat je backend niet kunt zien, klinkt deze rol misschien wat minder eervol. Niets is minder waar. Hoewel de werkzaamheden van de backend developer niet zichtbaar zijn voor de eindgebruiker, zijn de taken van uiterst belang voor een goed functionerend product. frontend developers hebben bovendien vaak een backend nodig om een werkende user interface te kunnen bouwen. Denk aan een CMS (zoals WordPress) als achterkant van een website.

Mijn focus als back end developer ligt op de techniek achter applicaties en de zaken eromheen die nodig zijn om ze te laten werken.

Robin
Webdeveloper bij Linku

Developers kiezen voor de backend vanwege de uitdaging en complexiteit die het brengt. Je bent als programmeur onder de motorkap bezig en brengt losse onderdelen samen tot één geoliede machine. De automatisering die in de achterkant gerealiseerd kan worden, helpt bedrijven veel slimmer en effectiever te werk te gaan. Als backend developer kun je dus ook zeker het verschil maken.

Wat is een full stack developer?

Er is natuurlijk ook een alleskunner: de full stack developer. Dit is een dynamische ontwikkelaar die raad weet met zowel de frontend als de backend van een digitaal product. Een full stack developer heeft een brede kennis en helpt bij de afstemming tussen de twee werkvelden.

Een full stack developer kan makkelijker een leidende rol op zich nemen binnen een bedrijf en/of een team, aangezien deze op beide niveaus kan meepraten. Het is ook een nuttige rol voor een freelancer die alles in zijn eentje op moet lossen.

Wat zijn de verschillen tussen frontend en backend?

Het verschil tussen frontend en backend zit hem dus voornamelijk in de werkzaamheden die de developers verrichten.

In backend development schrijf je veel code en werk je met data. Je zorgt ervoor dat alle processen keurig verlopen. De stappen die je zet zijn uiteindelijk minder zichtbaar voor de site gebruiker, maar wel van uiterst belang. Met een goede backend bouw je een fundament en voorkom je fouten, traagheid, haperingen en veiligheidsproblemen.

In frontend development ga je aan de slag met het uiterlijk en de gebruikerservaring van een digitaal product. Je resultaten zijn visueel zichtbaar en je kunt vaak meer van je creativiteit laten zien. Je bouwt voort op de backend en werkt samen met designers om goede interfaces te realiseren.

Als full stack developer ben je in staat om zowel de voor- als achterkant van een website of programma te realiseren. Het is de perfecte rol voor een ontwikkelaar die afwisseling zoekt of genoeg talent (en wil) heeft om in beide werkvelden te presteren.

Dus… twee eilandjes?

Uiteindelijk betekent deze rolverdeling niet dat ontwikkelaars los van elkaar hun ding doen. Bij de ontwikkeling van digitale producten werken developers samen om de voor- en achterkant goed op elkaar af te stemmen. Een full stack developer kan dit proces verder begeleiden.

Bij Linku werken frontend, backend en full stack developers samen én tegelijkertijd aan projecten. Op deze manier is er veel contact, kunnen we snel schakelen en leren we veel van elkaar. Zo groeien we niet alleen zelf als ontwikkelaars, maar verbeteren we ook de kwaliteit van onze dienstverlening.