Mert Somun

Portret van Mert Somun
Full-stack
Software Engineer

PHP / Laravel · TypeScript · Backendfocus

Ik bouw en verbeter onderhoudbare webapplicaties, koppel systemen en vertaal technische en operationele vraagstukken naar praktische oplossingen.

Projecten met impact

Alle projecten

Artikelen & ideeën

Alle artikelen

Waarom ik repositories gebruik naast Eloquent

7 min

Clean code, heldere systemen

Bekijk CV

Backend & data

Frontend

Ontwerp & kwaliteit

Tooling

Bekijk alle 84 skills Toon kernskills

Backend & data

Frontend

Codekwaliteit & testen

Design patterns

Analyse & architectuur

Tooling & samenwerking

AI-tooling

Security

  • OAuth

    Werkervaring 1 jaar

    Gebaseerd op gekoppelde werkperiodes.

  • OpenID

    Werkervaring 1 jaar

    Gebaseerd op gekoppelde werkperiodes.

  • JWT

    Werkervaring 1 jaar

    Gebaseerd op gekoppelde werkperiodes.

  • NIST CSF

Categorie  /  Jaar  /  Skills  / 
In deze case

Bekijk volledige case
Curriculum Vitae
Profielfoto van Mert Somun

Mert Somun

Full-stack Software Engineer

PHP / Laravel · TypeScript · Backendfocus

Druten, Gelderland

Profiel

Full-stack Software Engineer met een focus op PHP/Laravel en ervaring met TypeScript. Ik breid webapplicaties uit, koppel systemen via API’s en verbeter de structuur en testbaarheid van code. Daarbij werk ik van analyse tot overdracht. Mijn achtergrond in productieaansturing en digitalisering helpt me te begrijpen wat gebruikers in hun dagelijkse werk nodig hebben.

Werkervaring

Software Engineer · Full-stack

Organisatie eValue8 Locatie Nijmegen Periode juni 2025–juni 2026

Ontwikkelde en onderhield meerdere SaaS-applicaties in een team van circa vijf personen. Werkte productwensen en eigen verbetervoorstellen grotendeels zelfstandig uit, van analyse tot implementatie. Stemde dagelijks af met het team en reviewde code van collega’s, die ook mijn werk reviewden.

  • Scheidde zelfstandig datatoegang en herbruikbare applicatielogica in het Laravel-supportportaal met repositories en services.
  • Introduceerde PHPStan in meerdere projecten. Verhoogde het analyseniveau van legacy CakePHP-code van 0 naar circa 3–4. Stelde voor andere projecten baselines in met analyse op level 8. Combineerde dit met expliciete typing, refactoring en Laravel-best practices.
  • Verbeterde op eigen initiatief de HTTP-client en externe koppelingen, inclusief foutafhandeling en logging.
  • Nam het initiatief voor de migratie van CakePHP 3 naar 5. Bracht benodigde wijzigingen in dependencies en code in kaart en werkte deze uit in Jira-epics en -taken. Bereidde de code voor met package-upgrades, Rector en PHPStan.
  • Herstelde gebroken tests en maakte test- en ontwikkeldata herhaalbaar met seeders en factories. Scheidde daarbij het vullen van de database van wijzigingen aan de databasestructuur.
  • Automatiseerde PHPUnit-tests, codecontroles en securitycontroles met Bitbucket Pipelines, inclusief de bouw van een image en inrichting van een testdatabase.

Software Developer · Full-stack

Organisatie Nexagon Locatie Nijmegen Periode juni 2024–juni 2025

Werkte grotendeels zelfstandig binnen Agile/Scrum aan een Drupal-data-uitwisselingsplatform en een Laravel/Livewire-supportportaal, met technische review en ondersteuning bij deployment.

  • Droeg de dagelijkse technische verantwoordelijkheid voor het supportportaal. Vertaalde gebruikerswensen na de bedrijfsfusie naar Jira-taken, bepaalde de technische aanpak en stelde prioriteiten. Implementeerde de wijzigingen binnen Scrum.
  • Implementeerde inlog- en API-koppelingen in Drupal met OAuth, OpenID en JWT, inclusief autorisatie en delegatie. Onderzocht OAuth en API-documentatie en stemde de uitwerking af met de projectbegeleider.
  • Richtte een Scrum-bord in Jira in. Bracht supportprocessen in kaart met BPMN en stemde verschillen en gewenste werkwijzen na de bedrijfsfusie af met betrokkenen.
  • Voerde op eigen initiatief package- en Livewire-upgrades uit. Verving Laravel Mix/webpack door Vite voor TypeScript en assetbundeling.
  • Toetste PHP-code met PHPStan level 8, PHPUnit, Mockery en code reviews en verduidelijkte datatypen met generics. Leverde wijzigingen op via GitLab CI/CD en Docker.

Afstudeerstagiair Software Engineering

Organisatie Nexagon Locatie Nijmegen Periode februari–mei 2024

Bouwde zelfstandig een instellingenmodule voor white-labeling in een bestaand Laravel-supportportaal. Via de beheerinterface konden beheerders zonder codewijzigingen de portaalnaam, teksten, het logo, de voorpagina-afbeelding en contactgegevens aanpassen en een beschikbaar thema kiezen. Verzorgde analyse, ontwerp, implementatie en overdracht, met periodieke begeleiding en review.

  • Onderzocht met CogNIAM wat gebruikers nodig hadden en vertaalde dit naar requirements, acceptatiecriteria en een functioneel en technisch ontwerp.
  • Implementeerde de beheerinterface met Laravel, Livewire en Blade, mediauploads en configuratieopslag, met validatie via Form Requests en toegangscontroles via policies en gates.
  • Schreef unit- en featuretests met PHPUnit. Documenteerde de architectuur met C4, schreef implementatie- en testinstructies en droeg het werk over met een interne demonstratie.

Productiemedewerker → Operationeel manager

Organisatie Perfect Meubel B.V. & Black Sea Mobilya Locatie Familiebedrijf meubelproductie · Druten & Turkije Periode 2014–2023

Begon als productiemedewerker en was in de laatste jaren verantwoordelijk voor productie en digitalisering.

  • Bouwde bij Black Sea Mobilya een Excel-oplossing voor voorraad- en inkoopbeheer, digitaliseerde productiegegevens en ondersteunde als key-user een ERP-traject.
  • Stuurde bij Black Sea Mobilya de dagelijkse productie aan in een fabriek met circa 40 medewerkers.
  • Hielp bij Perfect Meubel met de implementatie van een CNC-machine.

Opleiding & achtergrond

Periode 2024–2026 Cijfer 8,4/10

Bachelor Informatica

Avans Hogeschool, Breda

Periode 2022–2024 Cijfer 8/10

Associate degree Informatica

Avans Hogeschool, ’s-Hertogenbosch

Periode 2014–2017

MBO ICT- en mediabeheer

ROC Nijmegen Technovium

Geselecteerde projecten

Realtime communicatie voor digitale schermen

Context 2026 · Bachelorafstudeeropdracht bij eValue8 · Individueel · Eindcijfer 9

Mediaplayers ontdekten nieuwe content pas bij een periodieke controle. Onderzocht en bouwde zelfstandig een socketserver om CMS-publicaties direct te melden; ophalen en afspelen bleven behouden.

  • Bouwde een TypeScript-socketserver die publicatiemeldingen via Redis ontvangt en met Socket.IO naar de juiste mediaplayers verstuurt, met berichtvalidatie en controles op toegestane ontvangers.
  • Voegde revisiecontrole in PHP/CakePHP toe om bij ongewijzigde content het ophalen van de volledige afspeellijst over te slaan, met behoud van de bestaande ophaalroute bij fouten.
  • Schreef installatie-, beheer- en architectuuruitleg en bouwde een documentatiesite met interactieve C4-modelkaart die deze uitleg verbond met de codedocumentatie.
Bekijk de case

Bestanden tussen werkplekken synchroniseren

Context 2025 · Schoolproject in teamverband

Voor Systems & Security bouwden we een applicatie om bestanden tussen werkplekken te synchroniseren. Mijn bijdrage lag bij het ontwerp en de bouw van de Python-client volgens het gezamenlijke communicatieprotocol.

  • Bouwde mapbewaking met Watchdog en uploads en downloads via WebSockets met de centrale server.
  • Introduceerde asyncio-wachtrijen volgens het producer–consumer-patroon om mapgebeurtenissen door te geven aan afzonderlijke taken voor verwerking en WebSocket-meldingen.
  • Stemde uploads, downloads en verwijderingen binnen de client af met locks per bestand. Voegde foutlogging en time-outs voor uploadbevestigingen toe.
Bekijk de case

Kernvaardigheden

Backend & data

Frontend

Ontwerp & kwaliteit

Tooling

Bekijk alle 84 skills Toon kernskills

Backend & data

Frontend

Codekwaliteit & testen

Design patterns

Analyse & architectuur

Tooling & samenwerking

AI-tooling

Security

  • OAuth

    Werkervaring 1 jaar

    Gebaseerd op gekoppelde werkperiodes.

  • OpenID

    Werkervaring 1 jaar

    Gebaseerd op gekoppelde werkperiodes.

  • JWT

    Werkervaring 1 jaar

    Gebaseerd op gekoppelde werkperiodes.

  • NIST CSF

Talen

Nederlands
Moedertaal
Turks
Moedertaal
Engels
B1+

Mert Somun

Full-stack Software Engineer

PHP / Laravel · TypeScript · Backendfocus

mert_somun@outlook.com

06 53 82 67 67

linkedin.com/in/mertsomun

mertsomun.nl

Druten, Gelderland

Portret van Mert Somun

Profiel

Full-stack Software Engineer met een focus op PHP/Laravel en ervaring met TypeScript. Ik breid webapplicaties uit, koppel systemen via API’s en verbeter de structuur en testbaarheid van code. Daarbij werk ik van analyse tot overdracht. Mijn achtergrond in productieaansturing en digitalisering helpt me te begrijpen wat gebruikers in hun dagelijkse werk nodig hebben.

Werkervaring

Software Engineer · Full-stack

eValue8 · juni 2025–juni 2026 · Nijmegen

Ontwikkelde en onderhield meerdere SaaS-applicaties in een team van circa vijf personen. Werkte productwensen en eigen verbetervoorstellen grotendeels zelfstandig uit, van analyse tot implementatie. Stemde dagelijks af met het team en reviewde code van collega’s, die ook mijn werk reviewden.

  • Scheidde zelfstandig datatoegang en herbruikbare applicatielogica in het Laravel-supportportaal met repositories en services.
  • Introduceerde PHPStan in meerdere projecten. Verhoogde het analyseniveau van legacy CakePHP-code van 0 naar circa 3–4. Stelde voor andere projecten baselines in met analyse op level 8. Combineerde dit met expliciete typing, refactoring en Laravel-best practices.
  • Verbeterde op eigen initiatief de HTTP-client en externe koppelingen, inclusief foutafhandeling en logging.
  • Nam het initiatief voor de migratie van CakePHP 3 naar 5. Bracht benodigde wijzigingen in dependencies en code in kaart en werkte deze uit in Jira-epics en -taken. Bereidde de code voor met package-upgrades, Rector en PHPStan.
  • Herstelde gebroken tests en maakte test- en ontwikkeldata herhaalbaar met seeders en factories. Scheidde daarbij het vullen van de database van wijzigingen aan de databasestructuur.
  • Automatiseerde PHPUnit-tests, codecontroles en securitycontroles met Bitbucket Pipelines, inclusief de bouw van een image en inrichting van een testdatabase.

Software Developer · Full-stack

Nexagon · juni 2024–juni 2025 · Nijmegen

Werkte grotendeels zelfstandig binnen Agile/Scrum aan een Drupal-data-uitwisselingsplatform en een Laravel/Livewire-supportportaal, met technische review en ondersteuning bij deployment.

  • Droeg de dagelijkse technische verantwoordelijkheid voor het supportportaal. Vertaalde gebruikerswensen na de bedrijfsfusie naar Jira-taken, bepaalde de technische aanpak en stelde prioriteiten. Implementeerde de wijzigingen binnen Scrum.
  • Implementeerde inlog- en API-koppelingen in Drupal met OAuth, OpenID en JWT, inclusief autorisatie en delegatie. Onderzocht OAuth en API-documentatie en stemde de uitwerking af met de projectbegeleider.
  • Richtte een Scrum-bord in Jira in. Bracht supportprocessen in kaart met BPMN en stemde verschillen en gewenste werkwijzen na de bedrijfsfusie af met betrokkenen.
  • Voerde op eigen initiatief package- en Livewire-upgrades uit. Verving Laravel Mix/webpack door Vite voor TypeScript en assetbundeling.
  • Toetste PHP-code met PHPStan level 8, PHPUnit, Mockery en code reviews en verduidelijkte datatypen met generics. Leverde wijzigingen op via GitLab CI/CD en Docker.

Afstudeerstagiair Software Engineering

Nexagon · februari–mei 2024 · Nijmegen

Bouwde zelfstandig een instellingenmodule voor white-labeling in een bestaand Laravel-supportportaal. Via de beheerinterface konden beheerders zonder codewijzigingen de portaalnaam, teksten, het logo, de voorpagina-afbeelding en contactgegevens aanpassen en een beschikbaar thema kiezen. Verzorgde analyse, ontwerp, implementatie en overdracht, met periodieke begeleiding en review.

  • Onderzocht met CogNIAM wat gebruikers nodig hadden en vertaalde dit naar requirements, acceptatiecriteria en een functioneel en technisch ontwerp.
  • Implementeerde de beheerinterface met Laravel, Livewire en Blade, mediauploads en configuratieopslag, met validatie via Form Requests en toegangscontroles via policies en gates.
  • Schreef unit- en featuretests met PHPUnit. Documenteerde de architectuur met C4, schreef implementatie- en testinstructies en droeg het werk over met een interne demonstratie.

Eerdere ervaring

Productiemedewerker → Operationeel manager

Perfect Meubel B.V. & Black Sea Mobilya · 2014–2023

Begon als productiemedewerker en was in de laatste jaren verantwoordelijk voor productie en digitalisering.

  • Bouwde bij Black Sea Mobilya een Excel-oplossing voor voorraad- en inkoopbeheer, digitaliseerde productiegegevens en ondersteunde als key-user een ERP-traject.
  • Stuurde bij Black Sea Mobilya de dagelijkse productie aan in een fabriek met circa 40 medewerkers.
  • Hielp bij Perfect Meubel met de implementatie van een CNC-machine.

Geselecteerde projecten

Realtime communicatie voor digitale schermen

2026 · Bachelorafstudeeropdracht bij eValue8 · Individueel · Eindcijfer 9

Mediaplayers ontdekten nieuwe content pas bij een periodieke controle. Onderzocht en bouwde zelfstandig een socketserver om CMS-publicaties direct te melden; ophalen en afspelen bleven behouden.

  • Bouwde een TypeScript-socketserver die publicatiemeldingen via Redis ontvangt en met Socket.IO naar de juiste mediaplayers verstuurt, met berichtvalidatie en controles op toegestane ontvangers.
  • Voegde revisiecontrole in PHP/CakePHP toe om bij ongewijzigde content het ophalen van de volledige afspeellijst over te slaan, met behoud van de bestaande ophaalroute bij fouten.
  • Schreef installatie-, beheer- en architectuuruitleg en bouwde een documentatiesite met interactieve C4-modelkaart die deze uitleg verbond met de codedocumentatie.

Bestanden tussen werkplekken synchroniseren

2025 · Schoolproject in teamverband

Voor Systems & Security bouwden we een applicatie om bestanden tussen werkplekken te synchroniseren. Mijn bijdrage lag bij het ontwerp en de bouw van de Python-client volgens het gezamenlijke communicatieprotocol.

  • Bouwde mapbewaking met Watchdog en uploads en downloads via WebSockets met de centrale server.
  • Introduceerde asyncio-wachtrijen volgens het producer–consumer-patroon om mapgebeurtenissen door te geven aan afzonderlijke taken voor verwerking en WebSocket-meldingen.
  • Stemde uploads, downloads en verwijderingen binnen de client af met locks per bestand. Voegde foutlogging en time-outs voor uploadbevestigingen toe.