👋 Hoi, ik ben Martijn. Ik ben dé

Freelance React Developer

Met meer dan 8 jaar ervaring in React en een sterke full-stack achtergrond help ik jouw projecten naar een hoger niveau.
Martijn Hols (2023)

Over mij

Ik ben een ervaren Freelance React Developer met meet dan 15 jaar full-stack ervaring. Als Freelance React Developer en Architect heb ik aan uiteenlopende projecten gewerkt, van opzet tot doorontwikkeling. Ik ben al ruim 8 jaar gespecialiseerd in React - zoveel diepgaande React-ervaring is zeldzaam! Ik kan veel betekenen voor jouw projecten en team.

Bij de meeste opdrachten vervul ik de rol van React Architect. Ik richt me graag op technische uitdagingen, zoals:

  • Onderhoudbaarheid, standaardisering en versimpeling
  • Security en performance
  • UX, accessibility en i18n
  • Backend-integraties (hier komt mijn full-stack ervaring goed van pas)
  • CI/CD pipelines en DX
  • Stabiliteit en (E2E) testing

Met een focus op User Experience (UX) als Developer Experience (DX) help ik zowel eindgebruikers als ontwikkelaars optimaal te werken. Ik streef ernaar teams sterker te maken en zorg ervoor dat projecten schaalbaar en toekomstbestendig zijn.

Meer weten? Bekijk hieronder mijn projecten, ga naar mijn blog, of neem contact op voor mijn CV.

Contact | Blog (Engels)

Projecten

Grote en kleine projecten met resultaten waar ik één voor één trots op ben.

Freelance Senior Front-end Ontwikkelaar
Politie - BVID (2024 - 2025)

Politie

Als senior front-end ontwikkelaar werk ik voor de Nederlandse Politie mee aan de front-end React app van het cluster Basis Voorziening Identiteitsvaststelling (BVID). Deze app wordt o.a. door de Politie gebruikt op honderden identificatie-zuilen door het land. Meer informatie over de BVID hier.

React
TypeScript
Vite
Redux
Redux Toolkit
RTK Query
Cypress
rxjs
Enterprise

Freelance React Developer / Architect
MoneyMonk (2023 - 2024)

MoneyMonk

Als Senior Front-end Developer heb ik belangrijke en veelgebruikte features ontwikkeld zoals de btw-aangifte, uren, ritten en projecten modules, een abonneren modal en het inloggen scherm, met de 2FA en wachtwoord vergeten flows. Naast de SPA, heb ik ook gewerkt aan DX verbeteringen, zoals betere error logging en afhandeling (met Sentry), CI, de projectmethode etc. Voor de MoneyMonk website heb ik de implementatie van het redesign voor mijn rekening genomen, waaronder de nieuwe homepage en vele conversieverbeteringen. Op de website heb ik ook Static Site Generation (SSG) geïntroduceerd.

React
TypeScript
Vite
Next.js
Redux
DatoCMS
Cypress
Sentry
SSG
SSR

Freelance React Developer / Architect
martijnhols.nl (2022 - 2024)

You are here

Een eigen website om beter vindbaar te worden als Freelance React Developer/React Architect. Uiteraard gemaakt in React, met Next.js als framework en Prismic als CMS. Het is een eigen design (maar ik ben geen designer).

Open Source
React
Next.js
Prismic
TypeScript
React Query
SSG

Freelance Senior Front-end Engineer
Damen Yachting via Iquality (2023)

Damen Yachting

In opdracht van Iquality heb ik gewerkt aan een nieuwe site voor Damen Yachting. Dit project is een voortzetting van het Amels Yachting project waar ik in 2022 aan heb gewerkt, met een nieuw theme en andere benodigde wijzigingen om multi-site support toe te voegen aan het bestaande project. Er zijn ook veel nieuwe componenten toegevoegd, die specifiek voor de nieuwe Damen Yachting site zijn ontworpen.

React
TypeScript
Next.js
UX Design
Storybook
DatoCMS
GraphQL
Azure DevOps

Freelance React Developer / Architect
Leviy (2023)

Leviy

Bij Leviy ben ik ingehuurd om mijn React ervaring te delen om de kwaliteit en kennis binnen de organisatie te verbeteren, andere ontwikkelaars te ondersteunen en begeleiden, en ter ondersteuning bij de ontwikkeling van een nieuwe module voor tijdregistratie in hun mobiele app op basis van React.

React
Create React App
Cordova

Freelance Senior Front-end Engineer
Quantore via Iquality (2022 - 2023)

Quantore

In opdracht van Iquality heb ik voor de Quantore Extranet website een aantal verbeteringen doorgevoerd om Extranet in hun bestaande CMS op te kunnen nemen. Ik heb onder andere gebouwd: een integratie met Auth0 voor de authenticatie, site search met Algolia, en nieuwe CMS secties voor de afgesloten pagina's.

React
Gatsby
Auth0
Algolia
GraphQL
styled-components

Freelance Senior Front-end Engineer
CED Group via Iquality (2022)

CED Group

In opdracht van Iquality heb ik een nieuw platform opgezet op basis van Next.js en DatoCMS voor de ontwikkeling van drie nieuwe websites voor de CED Group. Als lead developer van het project heb ik de architectuur van dit project opgezet, de integraties geïmplementeerd en een groot deel van de pagina's en componenten gemaakt.

React
TypeScript
Storybook
Azure DevOps
Node.js
Next.js
DatoCMS
GraphQL
Emotion.js
Styled components

Freelance Senior Front-end Engineer
Amels Yachting via Iquality (2022)

Amels

De nieuwe Amels Yachting website zit bomvol animaties en videos. Dat is te zien; de portfolio pagina's behoren tot de meest visueel aantrekkelijke pagina's op het web. Bezoekers krijgen hiermee een geweldige ervaring tijdens het ontdekken van de Amels superjachten.

Iquality heeft mij als Senior Front-end Engineer ingehuurd voor ondersteuning bij de opzet van een nieuw framework op basis van Next.js en React, en het bouwen van deze uitdagende website. De portfolio pagina's bevatten (na alle optimalisaties) meer dan 35MB aan grafische elementen, waarvan een groot gedeelte above the fold nodig is. Om te zorgen dat gebruikers ongeacht hun internetsnelheid een goede ervaring krijgen, heb ik verschillende laad-mechanismes gebouwd. Bijvoorbeeld bij de image sequence, die bestaat uit ruim 200 afbeeldingen. Eerst wordt elk 40e frame ingeladen, vervolgens elke 20e, dan elke 10e, enzovoorts. Hierdoor heeft de gebruiker steeds meer frames per second beschikbaar en krijgt de gebruiker geleidelijk de voor hem best mogelijk ervaring.

React
TypeScript
Next.js
Storyblok
Azure DevOps
Cypress
Emotion.js
Algolia Search
Cloudinary
GraphQL
Scrum
CSS animaties
static rendering/prerendering

Oprichter
Jetje (2021 - 2022)

Jetje

Jetje is een start-up dat ik ben gestart met een compagnon. We ontwikkelen een app ter ondersteuning van dienstverlening, met onder andere chat en (video)bellen geïntegreerd. Onze eerste oplossingsrichting is coaching, maar we denken veel groter. De app is primair een React webapp met Node.js backend, in TypeScript met GraphQL voor volledige type-safety van begin tot eind. Het is voorzien van een uitgebreide integration test suite, inclusief Cypress voor end-to-end tests. Er is ook een React Native app voor (chat) notificaties. Bekijk de Jetje en Geef 'm van websites voor meer informatie over het platform, of neem contact met mij op.

React
React Native
TypeScript
Next.js
Create React App
GraphQL
Apollo Client
Node.js
Apollo Server
service worker
GitHub Actions
Docker
GraphQL code generation
Jitsi
Yarn workspaces
Cypress (E2E testing)
Prismic
SSR
Static Site Generation
LighthouseCI

Freelance Front-end Ontwikkelaar
New Faith Network via DutchChannels (2022)

New Faith Network

Voor de videoplatformen WithLove en New Faith Network heb ik in twee korte maanden de landing- en onboardingpagina's opnieuw opgezet met React, Next.js, Prismic, TypeScript en Cypress. Met de wijzigingen kan het ontwikkelteam sneller, stabieler en toekomstbestendig verder ontwikkelen aan de sites, is de tracking verbeterd met nieuwe events en de performance de best mogelijke.

React
TypeScript
Next.js
Gatsby
GraphQL
Prismic
Cypress
Netlify
GitHub Actions
SSG
Yarn workspaces

Oprichter
WoWAnalyzer (2017 - 2021)

WoWAnalyzer

WoWAnalyzer ben ik in 2017 gestart vanuit de behoefte analyse van het spel World of Warcraft te automatiseren. WoWAnalyzer geeft spelers automatisch op basis van hun speelstijl inzichten en suggesties ter verbetering. Het is primair een React app. Binnen de app heb ik een framework ontwikkeld zodat andere ontwikkelaars eenvoudig de analyse konden uitbreiden. Het is een immens populaire project geworden met in één maand meer dan 550,000 unieke bezoekers (januari 2021) en meer dan 200 ontwikkelaars die iets hebben bijgedragen, allemaal onder mijn leiderschap. Het project is volledig Open Source. WoWAnalyzer is als voorbeeld van feedback geven opgenomen in het boek The Engagement Game, en een lecture en artikel. Sinds eind 2021 is WoWAnalyzer overgenomen door RPGLogs.

Open Source
React
TypeScript
Redux
Node.js
Express
Docker
GitHub Actions
Yarn workspaces

Freelance Lead Front-end Developer
PlatteTV via Emico (2020 - 2021)

PlatteTV

PlatteTV is een van de grootste TV-winkels van Nederland. Als Front End Lead Developer heb ik een belangrijke rol vervuld bij de bouw van hun splinternieuwe webshop. Ik heb het project van de grond af aan opgezet en samen met de project lead de projectaanpak (o.a. SCRUM methodiek) vormgegeven en het team geleid. Dit ambitieuze project is gemaakt in onder andere React met TypeScript, GraphQL, Apollo Server, en vele microservices met onder andere Magento 2 en Pimcore als backend.

React
TypeScript
Node.js
GraphQL
Apollo Client
Apollo Server
Apollo Federation
microservices
Docker
GitHub Actions
GitLab CI
Service Worker/PWA
Lerna
Yarn workspaces
Cypress
Magento
Scrum
JIRA
SEO (e-commerce)
static rendering/prerendering

Freelance Lead Front-end Ontwikkelaar
Swiss Sense via Emico (2019 - 2021)

Swiss Sense

Swiss Sense is een grote boxsprings en matrassen beddenwinkel. Voor Swiss Sense heb ik onder andere de boxspring configurator gemaakt, een opzet gemaakt om de app incrementeel te migreren naar React, microservices gemaakt en groot onderhoud aan het microservices framework, de CI versneld en Magento 2 in Docker aan de praat gekregen.

React
TypeScript
Node.js
GraphQL
Apollo Client
Apollo Server
Apollo Federation
microservices
Docker
GitHub Actions
GitLab CI
Lerna
Yarn workspaces
Cypress
Scrum
JIRA
SEO (e-commerce)
static rendering/prerendering

Freelance Senior Front-end Ontwikkelaar
PME Legend via Emico (2019 - 2020)

PME Legend

De officiële webshops van het bekende heren kledingmerk PME Legend, en bijbehorende merken Vanguard, Cast Iron en Just Brands. Dit waren de eerste grote React projecten bij Emico. Samen met een klein team hebben we deze webshops van de grond af aan gebouwd. Binnen korte tijd heb ik mijn vaardigheden bewezen en werd ik verantwoordelijk voor een groot deel van de architectuur. De opdrachtgever was zeer tevreden met de nieuwe webshop, wat een flinke conversie stijging met zich meebracht en duizenden gelijktijdige bezoekers aankon (o.a. van commercials rond het EK 2020).

React
TypeScript
Node.js
GraphQL
Apollo Client
Apollo Server
Apollo Federation
microservices
Redux
Docker
GitHub Actions
GitLab CI
Service Worker/PWA
Lerna
Yarn workspaces
Cypress
Scrum
JIRA
SEO (e-commerce)
static rendering/prerendering

Lead Developer
esd.next (2016 - 2019)

ExternalStaffingDesk

esd.next is een uniek systeem om het totale inhuurproces van personeel te stroomlijnen. Het systeem is compleet en bevat functionaliteiten van het vinden van kandidaten en CV parsing tot en met facturatie en automatische boekingen. Ik heb dit systeem samen met een compagnon van de grond af aan ontworpen en gebouwd in PHP met een React SPA. Een belangrijk uitgangspunt was de gebruiker volledige controle geven over het systeem. Dit hebben we onder andere gedaan door vrijwel alle velden optioneel te maken en middels monitoring regels zorgen dat alles compliant is en blijft. Het systeem wordt vaak vergeleken met grote systemen als Nétive en Salesforce en als een hele verademing ervaren. Bezoek de esd.next marketing pagina voor meer informatie.

React.js
Redux
PHP
Docker
MariaDB
TravisCI

Lead Developer
modelovereenkomstmaken.nl (2016)

modelovereenkomstmaken.nl

Met een paar eenvoudige stappen kan je hier geheel gratis binnen 15 minuten een overeenkomst maken op basis van een modelovereenkomst van de Belastingdienst. Deze tool, dat ik binnen 4 weken heb gebouwd, bestaat uit een React applicatie met minimale PHP backend. Gebruikers kunnen eenvoudig en snel het juiste contract selecteren en deze middels een interactief contractformulier invullen en opslaan.

React.js
Redux
PHP
Docker
MariaDB
TravisCI

Software Ontwikkelaar
When at Work (2015)

When at Work

When at Work is een iOS app dat op basis van geofencing automatisch bijhoudt wanneer je op locatie bent om zo je tijdregistratie grotendeels te automatiseren, met mogelijkheden om het handmatig aan te passen, automatisch rekening te houden met zaken als lunchtijd en projecten te scheiden. Ik heb deze app volledig zelfstandig gebouwd als onderdeel van mijn afstuderen bij de HAN.

Swift
iOS
XCode
App Store

Software Ontwikkelaar
RedMSViewer (2010 - 2011)

RedMSViewer

Voor Wageningen Food Safety Research (toen RIKILT), heb ik de RedMSViewer gemaakt. Dit was een Silverlight applicatie dat RedMS (reduced mass spectrometer) bestanden kan weergeven voor wetenschappelijk onderzoek. Deze bestanden worden getoond in chromatogrammen, spectra en heatmaps, en zijn volledig navigeerbaar. Er kunnen tot 100 bestanden gelijktijdig worden ingeladen door vele performance optimalisaties en gebruik van multithreading. Voor meer informatie over de applicatie, zie dit boek.

C#
Silverlight
IIS

Oprichter
Elite Avengers (2004 - 2011)

Elite Avengers

Dit was het eerste grote project dat ik heb opgericht. Het was een tekstgebaseerd computerspel waar duizenden spelers op af zijn gekomen.

Het bestond voornamelijk uit PHP4 met een vleugje JS. Het toevoegen van JS was een grote uitdaging, aangezien dit vóór de release van libraries zoals jQuery was, waardoor zelfs basiszaken zoals AJAX-calls moeilijk waren, om nog maar te zwijgen van de problemen van Internet Explorer. Aangezien dit mijn eerste echte ontwikkelingservaring was en ik niemand had om hulp te vragen, ging dit project boven mijn pet.

Dit project heeft een belangrijke impact op mij gehad en mij al vroeg getraind om alle problemen die ik tegenkom zelfstandig op te lossen, langdurige onderhoudbaarheid in acht te nemen, mijn Engels te verfijnen, zakelijke beslissingen te nemen, om te gaan met spelers/klanten en vrijwilligers, en het opzetten en groeien van de daarbijbehorende community.

PHP
MySQL
Linux
JS
Photoshop