WPL Stage Portfolio

Mijn Stage bij DeskDrive

Welkom op mijn stageportfolio! Hier deel ik mijn ervaringen, projecten en leerprocessen tijdens mijn WPL-stage bij DeskDrive.

Ontdek mijn stage

Over Mij

Zaida El Aissati
Zaida bij DeskDrive

Zaida El Aissati

Stagiair Developer

👋 Hallo! Ik ben Zaida

Ik ben een laatstejaarsstudent Graduaat Programmeren aan AP Hogeschool met een grote interesse in technologie en alles wat met digitale oplossingen te maken heeft.

Ik ben leergierig, gedreven en werk graag gestructureerd aan projecten. Nieuwe technologieën ontdekken geeft mij energie, en ik hou ervan om ideeën om te zetten in werkende applicaties.

💻 Mijn Vaardigheden

Front-end Development HTML/CSS JavaScript TypeScript React/ReactNative NodeJs/NextJs C# Back-end Development Database Management PostgreSQL Mongodb MySQL Docker Infrastructuur Linux Microsoft Azure Cisco Packet Tracer WireShark Figma . . . .

Mijn Stageopdracht

Een kijkje achter de schermen

🎯 Projectdoelstellingen

  • Veilige en efficiënte backup-oplossingen ontwikkelen
  • Point-in-Time Recovery implementeren
  • Automatiseringsscripts opzetten voor productie
  • Documentatie verzorgen voor het team
Mijn Stage Blog

Weekoverzichten

Opstart Database Backup Meetings

Week 1 – Stage-start & Kennismaking

  • 2/02/26 tot 6/02/26

De eerste week van mijn stage! Veel kennismakingen, rondleidingen en de eerste stappen gezet in het database-project.

Wat heb ik gedaan:
  • Rondleiding en kennismaking met het team

  • Mail en accounts opgezet

  • Software/platform verkennen

  • Opleidingstraining modules 1 t/m 3 gevolgd

  • Meeting: uitleg database project

  • opzoekwerk: postgresql, linux, point in time recovery
Milestones:

✅ Opstart
✅ Plan van aanpak opgesteld

Opstart Database Meetings Documentatie Backup

Week 2 – Trial & Error & Proof of Concept

  • 9/02/26 tot 13/02/26

Deze week heb ik veel geëxperimenteerd met het database-project. Veel trial-and-error, maar ook mooie doorbraken!

Wat heb ik gedaan:
  • Opleidingstraining modules 4 gevolgd

  • Veel geëxperimenteerd met database-project

  • Documentatie bijgehouden van uitgevoerde tests

  • Meetings met begeleider over voortgang

  • ideeën uitgewerkt
Lessons Learned:

Testen in een eigen omgeving is essentieel. Documentatie helpt bij complexe projecten. Backup herstel vergt veel precisie en planning.

Database Meetings Documentatie Backup Error-fixing

Week 3 - Verdieping en optimalisatie

  • 16/02/26 tot 20/02/26
  • Deze week stond in het teken van verdiepen en optimaliseren. Ik onderzocht verschillende oplossingen voor permission-problemen en foutmeldingen, testte mijn opstelling lokaal en breidde dit daarna uit naar Docker-containers.

Wat heb ik gedaan:
  • Alternatieve methodes onderzocht om permission-problemen en foutmeldingen (errors) op te lossen

  • Technische artikels en documentatie geraadpleegd om eerst een stabiele lokale opstelling uit te werken

  • De oplossing nadien getest lokaal getest

  • Documentatie verder uitgewerkt en gestructureerd

  • Meeting voorbereid en een demo gegeven van de lokale backup-opstelling
Lessons Learned:

Deze week leerde ik hoe belangrijk het is om eerst een stabiele lokale testomgeving op te zetten voordat je overstapt naar Docker. Daarnaast kreeg ik meer inzicht in het oplossen van permission-problemen en het analyseren van foutmeldingen.

Milestones:

✅ Werkende lokale database-backup
✅ Succesvolle demo van de oplossing

Toon 1-3 van 9 weekoverzichten
Database Docker Meetings Documentatie Backup

Week 4 - Docker Volumes & PostgreSQL 16

  • 23/02/26 tot 27/02/26

Deze week heb ik mijn Docker-kennis uitgebreid met volumes voor persistente data-opslag. Ik heb de documentatie verder uitgewerkt, een demo gegeven van Docker volumes tijdens een meeting, en de volledige opstelling opnieuw opgebouwd met PostgreSQL versie 16 van het bedrijf. Ook kreeg ik uitleg over de volgende milestone en begon ik met werken aan een echte grote database van het bedrijf.

Wat heb ik gedaan:
  • Verder gewerkt aan Docker, maar nu met volumes voor persistente data-opslag

  • Documentatie uitgebreid en gestructureerd

  • Meeting gehouden en een demo gegeven van Docker volumes

  • Opstelling aangepast naar PostgreSQL versie 16 (het bedrijf gebruikt momenteel versie 14, maar er is gepland om in de toekomst naar 16 te gaan) om te testen of er veranderingen optreden en of de werking hetzelfde blijft.

  • Uitleg gekregen over de volgende milestone

  • Begonnen met werken in de echte grote database van het bedrijf (eerst lokaal)
Lessons Learned:

Deze week leerde ik hoe cruciaal volumes zijn in Docker voor het behouden van data tussen container-herstarts. Ook ontdekte ik de verschillen tussen PostgreSQL versies en hoe je een bestaande opstelling kunt migreren naar een nieuwere versie. Het werken met echte bedrijfsdata geeft een waardevol inzicht in de praktijk en de complexiteit van productie-omgevingen.

Milestones:

✅ Docker volumes succesvol geïmplementeerd en getest
✅ PostgreSQL 16 opstelling werkend en compatibel
✅ Documentatie volledig bijgewerkt
✅ Voorbereiding volgende milestone gestart

Database Docker Documentatie Backup Activiteiten

Week 5 - Grote Database & Docker Experimenten

  • 02/03/2026 tot 06/03/2026

Deze week heb ik belangrijke vooruitgang geboekt met de echte grote database van het bedrijf en geëxperimenteerd met Docker mounting technieken.

Wat heb ik gedaan:
  • Verder werken in echte grote database van het bedrijf (eerst lokaal) gelukt

  • Proberen met docker container lokaal mounten zonder docker volume

  • Onderzoek gedaan naar het verschil in performantie tussen een lokale setup en het gebruik van volumes.

  • Documentatie bijgewerkt

  • De Moving Forward jobbeurs bezocht.
Lessons Learned:

De echte bedrijfsdatabase heeft een andere structuur dan testomgevingen, wat veel aanpassingen vereist.
Tijdens het werken met de echte bedrijfsdatabase werd duidelijk dat de structuur verschilt van die van de testomgevingen, wat het werken uitdagender maakte en extra analyse vereiste.

Milestones:

✅ Succesvol werken met echte grote database (lokaal)
✅ Docker mounting zonder volume getest
✅ Performance onderzoek uitgevoerd
✅ Jobbeurs bezocht

Database Backup Meetings Documentatie Error-fixing

Week 6 - WAL Archive Problemen & Error Fixing

  • 09/03/2026 tot 13/03/2026

Deze week richtte ik me op het oplossen van problemen met WAL-archieven en gaf een update tijdens een kleine meeting.

Wat heb ik gedaan:
  • Error fixes uitgevoerd voor problemen met WAL-archieven

  • Kleine meeting gehouden om update te geven waar we vastzitten

  • Verder gewerkt aan de WAL-problemen en oplossingen proberen te implementeren

  • Documentatie bijgewerkt
Lessons Learned:

WAL-archieven vereisen precieze configuratie. Regelmatige meetings helpen om snel knelpunten te identificeren en te bespreken.

Milestones:

✅ WAL error fixes proberen te implementeren
✅ Meeting gehouden met voortgangsupdate

Database Backup Meetings Documentatie Docker Error-fixing

Week 7 - pgBackRest Poging

  • 16/03/2026 tot 20/03/2026

Voortgezette troubleshooting met een poging tot pgBackRest in Docker.

Wat heb ik gedaan:
  • Doorgaan met troubleshooting,zelfde als vorige week

  • pgBackRest methode geprobeerd volgens een artikel

  • Zelfde errors als voorheen ondervonden

  • Meeting gehouden om voortgang en problemen te bespreken

  • Documentatie uitgebreid met testresultaten en errors
Lessons Learned:

Externe tutorials zijn nuttig maar niet altijd direct toepasbaar in complexe omgevingen zoals Docker met PostgreSQL.

Milestones:

✅ pgBackRest getest en geëvalueerd
✅ Meeting gehouden

Database Backup Meetings Documentatie Error-fixing

Week 8 - Master/Slave PITR Succesvol!

  • 23/03/2026 tot 27/03/2026

Doorbraak! Master/slave setup met automatische WAL-transfer en succesvolle PITR.

Wat heb ik gedaan:
  • Lokaal gewerkt met 2 aparte machines (laptops): master en slave

  • Slave restore met Point-in-Time Recovery opgezet

  • Problemen met WAL-files opgelost (full backup lukte, PITR gaf WAL errors)

  • Meetings demo gegeven en alles uitgelegd, samen gevonden waaraan het probleem lag en dit samen opgelost

  • Nieuwe taak: PostgreSQL config voor automatische WAL-transfer van master naar slave

  • PITR + WAL-transfer succesvol! Alle stappen gedocumenteerd, herhaald en getest

  • Evaluatiegesprek gehad
Lessons Learned:

Automatisering via PostgreSQL-configuratie is veel efficiënter dan handmatige transfers. Uitgebreide testing en documentatie zorgen voor reproduceerbare succes.

Milestones:

✅ Master/slave PITR werkend
✅ Automatische WAL-transfer via config
✅ Volledige documentatie + tests
✅ Evaluatiegesprek afgerond

Database Backup Documentatie Error-fixing Meetings Selenium

Week 9 - Automatisering, PostgreSQL versie 16 & Selenium Start

  • 30/03/2026 tot 03/04/2026

Nieuwe milestone bereikt met automatische restore scripts, demo gegeven en start van de testing project.

Wat heb ik gedaan:
  • Nieuwe milestone: script gemaakt voor restore slave machine en automatisering

  • Uitgebreide documentatie bijgewerkt

  • Error fixing doorgevoerd

  • Alles uitgebreid getest

  • Meeting en demo gedaan: script getoond + uitleg gekregen over de werking bedrijf rond Selenium

  • Nieuwe opdracht: one-liner commands met parameters/target time

  • Nieuwe database cluster gemaakt voor PostgreSQL versie 16 om functionaliteiten te testen

  • Documentatie en commands aangepast naar absolute paden

  • Start project Selenium

  • Meeting over de app gehouden
Lessons Learned:

Automatisering scripts vereisen robuuste testing. Absolute paths voorkomen veel issues en is efficiënter. Selenium biedt krachtige mogelijkheden voor UI/functional testing. Goede documentatie is cruciaal voor kennisoverdracht bij nieuwe projecten.

Milestones:

✅ Automatische restore slave script
✅ PostgreSQL 16 cluster getest
✅ Selenium project gestart
✅ Demo & meetings succesvol
✅ Volledige documentatie update

Wil je meer weten?

Neem gerust contact met mij op via LinkedIn of bekijk mijn GitHub repository.

Bekijk mijn Repo