Full Stack of All-round

De nieuw jobtitel ‘Full Stack Developer’ doet nu al een eindje de ronde. Maar wat is een Full Stack developer eigenlijk? Wat is de kennis van zo'n persoon, en wat is een stack?

Als webdeveloper heb ik ook al vacatures moeten opstellen voor het bedrijf waar ik werk. Daarom is het toch even tijd om deze nieuwe jobtitel in detail te gaan bekijken...

Even terug in de tijd

Toen ik juist mijn bachelor in de grafische en digitale media behaalde heetten de relevante vacatures: ‘Gezocht: webdeveloper’.

Een paar jaar later was er een duidelijk onderscheidt tussen een front-end developer en een back-end developer.
Dit onderscheidt kwam er omdat men merkte dat een sterke developer op front-end vaak minder kaas had gegeten van de back-end (en omgekeerd). Er werd dus een opsplitsing gemaakt omdat men zag dat de technieken van front- en back-end duidelijk verschillend waren en groot in aantal zodat het zeer moeilijk was om als 1 persoon beide werelden goed te begrijpen.

Terug een jaar later kwam dan Allround webdeveloper meer voor in de vacatures. Dit duidde aan dat de webdeveloper zowel front- als back-end moet kennen.

Nu is er de Full Stack Developer...

Full Stack

De definitie van een Full Stack Developer is een developer die de volledige stack kent.
Met andere woorden van serverbeheer, databases tot programmatie van de webapplicatie zelf (front- en back-end). Een developer die alles perfect weet en kan implementeren.
 

stack-stenen-development.jpg
Volledige stack kennis van server tot front-end


Ook is de Full Stack developer vaak niet gelimiteerd in 1 bepaalde taal, maar gaat het veelal over een persoon die meerdere programmeer- en scriptingtalen kent. Maar over welke stack gaat het dan eigenlijk?
Uit de eerste vacature die ik tegen kom, blijkt het dus dat een Full Stack developer zowel front- als back-end kent en een nice-to- have is het serverbeheer.

Het was een paar jaar terug al moeilijk om een persoon te vinden die enkel front-end alles tot in de puntjes kende... maar nu is een full stack developer die (perfecte) front-end, back-end en server kennis heeft. Een ervaren webdeveloper dus die zich met verschillende zaken bezig houdt. Een generalist...

Ik neem een andere vacature en een volledig ander verhaal, een Full Stack developer is nog meer. Bij nader inzien worden in veel vacatures nog eens vermeld dat de developer ook volledig andere programmeerwijzes moet kennen (en dan daarvoor ook het serverbeheer natuurlijk).

Bijvoorbeeld wordt er gevraagd om perfecte kennis te hebben van:
Server : Linux, NodeJS
Databases : MySQL, MongoDB (NoSQL)
Object georïenteerd programmeren: PHP
Functioneel programmeren: React, rxJS, Node.js
Front-end programmatie : HTML, Bootstrap
Front-end interactie : UX/UI

Een developer programmeert op een bepaalde wijze (bijvoorbeeld: functioneel). De denkwijze van functioneel programmeren heeft gelijkenissen met OOP (object georïenteerd) maar is in essentie anders. Ook een LAMP (PHP) Stack is anders dan een NodeJS server.

Begrijp me niet verkeerd.. het is mogelijk om als developer al deze technologieën te kennen. Persoonlijk ken ik deze technologieën en heb ze al eens toegepast maar daarom zeg ik niet dat ik ze perfect ken. Ik ben wel meer gespecialiseerd in 1 bepaalde ‘Stack’ maar heb daarvoor ook al een paar jaar ervaring opgedaan in elke tak (front-end, back- end, serverbeheer, database).

De witte raven?

Verwachtingen mogen hoog zijn om een vacature in te vullen. Helaas is de inhoud van een vacature vaak onduidelijk geworden over wat de nodige kennis en waarmee de developer hem zal bezig houden.

Gezocht : All-round webdeveloper

Een open vacature invullen is moeilijk, zeker als de positie ervaring vereist.
Daarom heb ik gemerkt dat hoe meer overzichtelijk een vacature is, hoe meer personen reageren met het juiste profiel.
Wees duidelijk wat de nodige kennis moet zijn, pluspunten en zeker niet te vergeten waarom het bedrijf aantrekkelijk is om te werken.