Magazijn beheer software

Modernisering van een logistiek softwareplatform voor magazijnbeheer binnen het MKB en ziekenhuizen. Binnen dit project heb ik bijgedragen aan de gefaseerde migratie van een monolithische codebase naar een DDD en CQRS architectuur, het vernieuwen van Windows handscanners naar Android met .NET MAUI en de ontwikkeling van een licentieserver voor gecontroleerd apparaatbeheer.

Magazijn beheer software
Project info
Start
november 2022
End
november 2023
Complexity
6 / 10
Team size
10
Type
Mobile app
Stack
C# Javascript TypeScript HTML & CSS SQL xUnit / NUnit .NET MAUI Entity Framework Core GIT Scrum DevOps

Over het project

Boxwise biedt logistieke softwareoplossingen voor magazijnbeheer, gericht op het MKB en ziekenhuizen. Binnen dit project heb ik meegewerkt aan het onderhoud en de doorontwikkeling van het platform.

De bestaande applicatie bestond grotendeels uit een omvangrijke monolithische codebase. Binnen het team is ervoor gekozen deze gefaseerd te moderniseren naar een architectuur gebaseerd op Domain Driven Design en CQRS. Dit traject liep parallel aan de dagelijkse doorontwikkeling van het product.

Daarnaast draaiden de handscannerapplicaties nog op verouderde Windows gebaseerde scanners. Deze zijn gefaseerd herschreven naar Android handscanners.


Mijn rol

Binnen het team werkte ik mee aan zowel het moderniseren van de backend als het vernieuwen van de handscannerapplicaties. We werkten in twee teams van vijf ontwikkelaars aan hetzelfde product.

Een belangrijk onderdeel van mijn werkzaamheden was het gefaseerd overzetten van legacy code naar een nieuwe DDD en CQRS architectuur. Hierbij werd functionaliteit stap voor stap geïsoleerd, herontworpen en opnieuw geïmplementeerd binnen duidelijk afgebakende domeinen. Dit vereiste zorgvuldig refactoren zonder bestaande productieprocessen te verstoren.

Daarnaast heb ik bijgedragen aan het vernieuwen van de handscannerapplicaties. Waar deze oorspronkelijk draaiden op Windows gebaseerde scanners, zijn deze opnieuw ontwikkeld voor Android scanners met behulp van .NET MAUI. Dit betekende het herontwerpen van de gebruikersinterface, het optimaliseren van scanflows en het waarborgen van performance en stabiliteit op mobiele hardware.

Ook heb ik meegewerkt aan de ontwikkeling van een nieuwe licentieserver. Deze server controleert hoeveel scanners gelijktijdig gebruikt mogen worden op basis van het afgenomen abonnement, zodat klanten niet meer apparaten kunnen inzetten dan contractueel is toegestaan.


Terugblik

Dit project gaf mij praktische ervaring met het moderniseren van bestaande software in een productieomgeving. Het migreren van legacy code naar een beter gestructureerde architectuur vraagt om discipline en inzicht, zeker wanneer de applicatie dagelijks operationeel is.

Het werken aan zowel backend architectuur als mobiele scanning applicaties maakte het technisch veelzijdig en gaf mij waardevolle ervaring in het combineren van domeinlogica met hardwaregerichte software.


Opmerking: Vanwege de aard van het systeem en de gevoeligheid van de onderliggende data ben ik beperkt in wat ik publiekelijk kan delen. Daarom bevat deze website geen schermafbeeldingen, codevoorbeelden of technische detailuitwerkingen over dit project.