Artikelen / 6 minuten leestijd, door Jorn Henkes
Wat doet een allround webdeveloper?
We krijgen regelmatig de vraag: “wat doen front-end en back-end developers zoals jullie eigenlijk?” Bovendien gebruiken we in onze vacatures de term ‘allround webdeveloper’. Het verschil tussen front-end en back-end development zit met name in het soort code dat we schrijven en met welk onderdeel van een project we bezig zijn. Tijd om dit eens nader toe te lichten. Spoiler: het artikel kan een beetje technisch worden 😉
Data onderhouden en weergeven
Het verschil tussen ‘front-end’ en ‘back-end’ is eigenlijk het makkelijkst uit te leggen aan de hand van de verschillende soorten data die in een webproject een rol spelen. Onze back-end developers richten zich op het verwerken ervan; hoe de data het best opgeslagen, maar ook beschikbaar gemaakt kan worden voor de gebruiker. De front-end developers gaan vervolgens aan de slag met de beschikbaar gestelde data. Ze zorgen ervoor dat de data niet alleen opgevraagd kan worden, maar er presentabel én leesbaar uitziet.
Programmeertalen
Het onderhouden en weergeven van data vergt kennis van verschillende programmeertalen, en doorgaans wordt het verschil tussen front-end en back-end hier het duidelijkst. Bij ons heb je als back-end developer uitgebreide kennis van de programmeertaal PHP nodig. Die gebruiken we als basis voor onze applicaties. Afhankelijk van het soort project, gebruiken we een framework (Laravel) of CMS (WordPress) om de data op te slaan en te verwerken. Onze projecten zijn echter altijd maatwerk. We gebruiken de frameworks dus als basis, want vervolgens maken we ze op maat voor de klant. Zie het als de stof waar een kleermaker uiteindelijk een maatpak van maakt.
Als front-end developer heb je bij ons – voor het presenteren van de data – kennis nodig van de opmaaktalen HTML en CSS, en van de programmeertaal JavaScript. Met de talen HTML en CSS wordt opmaak toegevoegd, waar de website zijn uiterlijk van krijgt. Javascript kan gebruikt worden om interactiviteit aan de website toe te voegen. Voor Javascript gebruiken wij meestal de frameworks Vue.js of Nuxt.js. Deze talen zijn typisch het kennisdomein van front-end, omdat met deze talen een ontwerp vertaald kan worden in een werkende, interactieve website.
Wat doet een allround webdeveloper dan?
De laatste jaren is de scheiding tussen front-end en back-end steeds vager geworden. Allereerst door Content Management Systemen zoals WordPress. Met een CMS is het heel eenvoudig om data te verwerken zonder back-end kennis. Je kunt als developer zowel front-end als back-end werk afhandelen met WordPress, met een beetje basiskennis van de back-endtaal PHP en kennis van de opmaaktalen HTML en CSS. Daarnaast is de laatste jaren de focus verschoven van PHP applicaties naar JavaScript applicaties, waarbij de dataverwerking ook direct in JavaScript gedaan kan worden. Met hulp van frameworks als Vue.js of Nuxt.js is dit makkelijk uit te voeren en hoeft er niet altijd een back-end developer bij het werk betrokken te worden.
Eigenlijk zijn al onze ontwikkelaars allround webdeveloper. Iedereen kan bij ons aan beide kanten van een project werken. Dat betekent echter niet dat iedereen hetzelfde kan. De complexiteit van zowel front-end als back-end is vaak zo groot, dat er wel echt vakexperts nodig zijn.
Elke allround webdeveloper kan autonoom aan een project werken. De complexe onderdelen van het project worden vervolgens verdeeld onder onze front- of back-end experts. Zo zijn onze klanten – maar wij zelf ook – minder afhankelijk van één developer.
Stack
We hebben een bepaalde ‘programming stack’ gekozen; een verzameling talen en tools waarmee we ons werk gedaan krijgen. Bij ons is die stack PHP, Laravel, Vue.js, Nuxt.js en Sass. Al onze developers en freelancers hebben op zijn minst ruime kennis van deze talen, zodat iedereen goed mee kan komen in verschillende fasen van een project. Ben je een allround webdeveloper bij Jannes & Mannes, dan kun je dus in ieder geval deze talen goed lezen en schrijven.
Hoe werkt dit in de praktijk?
Ben je er nog? Mooi: om het nóg iets technischer te maken, schetsen we een praktijkvoorbeeld aan de hand van één van onze projecten. Begin 2021 hebben we de nieuwe website voor het klassieke muziek festival Wonderfeel opgeleverd. Deze website bevat veel algemene informatie over het festival en natuurlijk een programma. De data voor de website halen we van twee bronnen: de algemene informatie komt uit het CMS, en het programma wordt samengesteld met een externe tool (CrossmarX). Voor de voorkant van de website hebben we gekozen om het framework Nuxt.js te gebruiken.
Voor ons zaten hier een paar uitdagingen in. De data van het programma komt van een externe bron en moet samen met extra informatie uit het CMS in de website gepresenteerd worden. Ook moet het programma in de front-end gefilterd kunnen worden, en weergegeven kunnen worden als blokkenschema.
De koppeling met CrossmarX is door onze back-ender Jan gemaakt. Hij was in staat de beste manier te vinden om de data op te halen, lokaal in het CMS op te slaan en ervoor te zorgen dat wijzigingen uit CrossmarX ook in het CMS terecht zouden komen. Gezien de complexiteit was dit een typische back-end klus.
Tegelijkertijd zijn Rochelle en Jorn aan de slag gegaan met het beschikbaar maken van de data uit het CMS in de front-end. Als front-ender kun je bij het beschikbaar maken van de data alvast rekening houden met hoe het uiteindelijk opgemaakt moet worden. Typisch front-end werk dus!
In de opmaak zaten echter ook een aantal mooie uitdagingen, zoals het filteren van het programma, en het bedenken van een manier waarop een programmaonderdeel over het programma moest komen te liggen. Klusjes waarvoor je zowel back-end als front-end kennis nodig hebt.
Kun je als allround webdeveloper wel up to date blijven in je vakgebied?
Een allround webdeveloper snoept een beetje uit twee vakgebieden. Toch ligt de focus meestal op één van de twee. Bij ons is die verdeling ook duidelijk. We weten goed welk werk geschikt is voor de een, of juist voor de ander. Doordat onze interesses op verschillende onderdelen van het vakgebied liggen – en het werk daar ook naar verdeeld wordt – leert iedereen binnen zijn eigen specialisatie steeds meer bij. De opgedane kennis en ervaring brengen we vervolgens over aan de anderen, zodat iedereen op de hoogte blijft van nieuwe ontwikkelingen binnen het vakgebied.
Wat betekent dit voor onze klanten?
Allround webdevelopers kunnen op een snelle en efficiënte manier een goed maatwerk product opzetten. Met onze front-end én back-end kennis bouwen we een webapplicatie die volledig aansluit bij de wensen van onze klant en zowel wat uiterlijk als datastructuur betreft helemaal in orde is. En ja, daar zijn we best trots op.
Ben je na het lezen van dit artikel benieuwd wat een allround webdeveloper van Jannes & Mannes voor jouw bedrijf kan betekenen? Ben je misschien zélf een allround webdeveloper en zoek je graag de samenwerking, of misschien zelfs een baan? Schroom niet ons te bellen of te mailen als je vragen hebt!