Uw bericht is verzonden.
We verwerken je aanvraag en nemen zo snel mogelijk contact met je op.
Het formulier is succesvol verzonden.
Meer informatie vindt u in uw mailbox.


Innowise nam het vroege product van de klant en bouwde het om tot een solide, krachtig EV-laadplatform. Het verwerkt nu miljoenen sessies en helpt het bedrijf de Europese markt te leiden.*
records van oplaadsessies direct geëxporteerd
toename van het aantal gebruikers door de lancering van eRoaming

Onze klant is een Duits bedrijf dat bedrijven helpt hun eigen oplaadnetwerken voor elektrische voertuigen te beheren. Hun platform regelt alles, van stationbeheer en facturering tot gebruikerstoegang en energiecontrole. Het ondersteunt privé en openbaar opladen met tools voor realtime monitoring, tarifering en verbindingen met derden. Het systeem is white-label, zodat bedrijven het onder hun eigen merk kunnen lanceren zonder de technologie helemaal opnieuw op te bouwen.
Gedetailleerde informatie over de klant kan niet openbaar worden gemaakt krachtens de bepalingen van de NDA.
De klant was van plan om in de hele EU te groeien en chauffeurs een soepele, alles-in-één laadervaring te bieden. Maar de webapp - de belangrijkste tool die chauffeurs gebruikten - was er nog niet klaar voor. Gebruikers hadden geen toegang tot live updates, konden hun kaarten niet gebruiken bij stations van derden en konden niet controleren wat er gaande was tijdens een laadsessie. Functies zoals eRoaming, slimme energiecontrole en het bijhouden van sessies ontbraken, wat allemaal belangrijk was om op te vallen in een concurrerende markt en nieuwe partnerschappen aan te gaan. Intern werkte de frontend prima, maar de backend en infrastructuur hadden serieuze hulp nodig.
Onder de motorkap was de webapplicatie al overbelast. Ze kon geen grote gegevensexports aan, had geen realtime zoekfunctie en ondersteunde geen belangrijke EV-protocollen zoals OCPI of OICP. eRoaming was een must-have, maar er was geen manier om het in te pluggen zonder de architectuur te reviseren. De codebase was moeilijk te onderhouden, implementaties waren handmatig en prestatieproblemen waren bijna onmogelijk op te sporen. Zonder een solide backend, DevOps pipeline of observability tools was het platform niet klaar voor schaalvergroting.
Onze klant runt een full-service elektrisch mobiliteitsplatform dat fysieke infrastructuur combineert met intelligente digitale besturing. Als CPO en EMSP zijn ze eigenaar van de volledige laadervaring, van hardware tot interface.
Chauffeurs hebben toegang tot de service via merkweb- en mobiele apps waar ze stations kunnen vinden, laadsessies kunnen starten en kunnen betalen. Het platform beheert real-time communicatie met externe CPO's met behulp van standaardprotocollen, ondersteunt grensoverschrijdende eRoaming via Hubject en handelt alle commerciële relaties op de achtergrond af.
Het ecosysteem omvat Smart Charging- en Energy Management-tools voor infrastructuurpartners, samen met diagnostiek, firmwarebeheer en veilige API's die naadloze integratie met aangepaste bedrijfsinterfaces mogelijk maken.
Facturering wordt afgehandeld via een flexibel systeem dat betalingsproviders van derden zoals Fiserv, op contracten gebaseerde prijzen, PDF-weergave en Excel-exports ondersteunt. Het biedt ruimte voor unieke betalingsregels voor verschillende partners.
Er zijn notificatiesystemen voor zowel transactie-e-mails als realtime waarschuwingen, op maat gemaakt voor zakelijke klanten. Het platform biedt ook sessiecontrole, rapportagemodules en diagnostiek op afstand.
Dit is meer dan een product voor de consument. Het is een schaalbare besturingslaag die laadinfrastructuur, partnerbeheer, facturering en analyse samenbrengt in één samenhangend ecosysteem.
We begonnen met een stap terug te doen en naar het hele systeem te kijken. Wat hield het tegen? Om welke functies vroegen chauffeurs en operators eigenlijk? Waar ging het mis toen het gebruik piekte?
In nauwe samenwerking met de product- en bedrijfsteams van de klant identificeerden we drie belangrijke pijnpunten die onmiddellijke aandacht nodig hadden:
In plaats van te proberen alles in één keer op te lossen, hebben we het werk opgedeeld in beheersbare fasen. Eerst richtten we ons op het stabieler en betrouwbaarder maken van het bestaande systeem. Daarna bouwden we het fundament dat nodig was om op te schalen: betere API's, schonere integraties en tools die het operations-team daadwerkelijk dagelijks kon gebruiken.
Zodra we de kernproblemen begrepen, braken we de codebase op in kleinere, onafhankelijke modules zodat nieuwe functies konden worden toegevoegd zonder bestaande af te breken. Over het hele systeem bouwden onze experts een cachinglaag die de latentie verlaagde en de responstijden verbeterde.
Voor partnerintegraties hebben we gestandaardiseerde API-interfaces geïntroduceerd en grote delen van de workflow geautomatiseerd. Wat vroeger weken van aangepaste codering in beslag nam, is nu slechts een kwestie van dagen. We hebben ook strenge validatie- en foutcontroles toegevoegd zodat de gegevens van de laadstations nauwkeurig en bruikbaar blijven.
Aan de infrastructuurkant hebben we het platform opnieuw geconfigureerd voor horizontale schaalbaarheid. Het absorbeert nu zwaar verkeer zonder te vertragen, waardoor de klant een systeem heeft dat net zo snel groeit als hun netwerk.
Met het platformfundament op zijn plaats konden we de eerste grote uitdaging aangaan: stationsbeheer. Het netwerk van de klant breidde zich snel uit. Sommige stations waren van henzelf, andere waren van partners, maar het systeem kon niet consistent met al deze stations praten. We hebben dit opgelost door volledige ondersteuning te implementeren voor OCPP 1.6, het standaardprotocol dat de meeste EV-laders gebruiken.
Dit gaf het operationele team volledige controle op afstand over hun netwerk. Ze konden laadsessies starten en stoppen, in realtime zien wat er gebeurde en diagnostiek uitvoeren op elk station vanaf één dashboard. Toen nieuwe hardwarepartners aan boord kwamen, was er geen noodzaak voor aangepaste workarounds. Gewoon aansluiten, configureren en het werkt.
De volgende uitdaging was veel groter: bestuurders in staat stellen om op te laden bij stations buiten het netwerk van de klant. Voor bestuurders zou opladen eenvoudig moeten zijn - aansluiten en het werkt gewoon. Maar daaronder zit een wirwar van contracten, protocollen en gegevensuitwisselingen tussen bedrijven. We hebben dit opgelost door in te pluggen op Hubject, Europa's grootste EV eRoaming netwerk. We hebben zowel OCPI als OICP geïmplementeerd om netwerkoverschrijdende autorisatie, live updates van stations en het bijhouden van het gebruik af te handelen. Dit betekent dat chauffeurs stations van derden rechtstreeks via de app van de klant kunnen gebruiken, zonder zich aan te melden voor een dozijn verschillende accounts. Het bedrijf hoeft niet overal laadinfrastructuur aan te leggen, ze maken gewoon verbinding met de netwerken die al bestaan via Hubject.
Nu bestuurders toegang hebben tot stations op meerdere netwerken, hebben we onze aandacht gericht op een groeiend probleem: energiebeheer. De vraag naar elektriciteit fluctueert voortdurend en niemand wil het elektriciteitsnet overbelasten. De klant had een manier nodig om stationsbeheerders te helpen om pieken in de vraag voor te blijven.
We hebben een slim laadsysteem gebouwd dat beheerders controle geeft over hoe en wanneer energie wordt geleverd. Ze kunnen gebruikslimieten instellen tijdens piekuren, synchroniseren met de beschikbaarheid van het elektriciteitsnet of het systeem automatisch de levering laten optimaliseren op basis van real-time omstandigheden. Dit beschermt het elektriciteitsnet, houdt de bedrijfskosten laag en geeft energiebedrijven meer vertrouwen in de duurzaamheid van het opladen van EV's op de lange termijn.
We hebben ook tijdsgebonden opladen toegevoegd voor zakelijke klanten, zodat bedrijven nu sessiebeperkingen zoals 30 minuten kunnen instellen om het opladen van hun wagenpark eerlijk en efficiënt te houden.
Al deze nieuwe functies en uitgebreide netwerkmogelijkheden betekenden dat er exponentieel meer gegevens door het systeem stroomden. Helaas kon het oude exportsysteem het niet bijbenen. Het was een voortdurende bron van frustratie - alles boven de 10.000 records liep vast, waardoor teams met onvolledige rapporten kwamen te zitten en urenlang handmatig op zoek moesten naar gegevens. Ons team heeft het exportsysteem helemaal opnieuw opgebouwd. Nu worden datasets met miljoenen records verwerkt met alle details - ID's van stations, gebruikersinformatie, sessietijden, prijzen, alles. Alles komt eruit in Excel-klare formaten die je meteen kunt delen met financiële, juridische of zakelijke partners. En ja, het is snel, zelfs als je gegevens van accounts met grote volumes ophaalt.
Zonder live gegevens moest de klant altijd reageren op problemen nadat klanten er al last van hadden gehad. We bouwden een live analysesysteem dat laadsessies volgt terwijl ze plaatsvinden.
Het operationeel team ziet nu live statistieken over energieverbruik, sessieduur en de gezondheid van de stations. Als een lader offline gaat of ongebruikelijke hoeveelheden energie begint te verbruiken, krijgen ze direct waarschuwingen en kunnen ze ingrijpen voordat het een groter probleem wordt. Alles wordt naar een centraal dashboard geleid, zodat er snel beslissingen kunnen worden genomen en de service betrouwbaar blijft.
We wisten vanaf dag één dat dit geen plug-and-play-project zou worden. Het platform had zoveel potentieel, maar onder de motorkap moest er serieus aan gewerkt worden. Wat het speciaal maakte was de samenwerking - de klant bleef open, betrokken en gefocust op het einddoel. En ons team kwam met alles wat het in zich had. Het was moeilijk, maar het was het soort uitdaging waar we van houden. We zijn trots op het resultaat en nog trotser op de mensen erachter.

We werkten in wekelijkse sprints met duidelijke doelen en snelle feedback. Ons team hield zich bezig met planning, testen en implementatie, terwijl de klant zich concentreerde op de prioriteiten van de functies en de zakelijke impact. Deze opzet gaf ons de snelheid om onafhankelijk van elkaar te werken, met regelmatige check-ins om afwegingen te maken en beslissingen snel te deblokkeren.
Om de risico's te beperken, gebruikten we gefaseerde uitrol, feature flags en geautomatiseerde tests om problemen op te vangen voordat ze in productie gingen. Partnerintegraties en protocolwijzigingen werden gelanceerd via gecontroleerde implementaties, met realtime monitoring voor het geval er iets mis ging.
Niets aan deze build was one-size-fits-all. eRoaming, facturering en partnerlogica hadden elk hun eigen complexiteit. De klant vertrouwde erop dat we de oplevering zouden leiden en we zorgden ervoor dat ze altijd inzicht hadden in wat we deden, waarom het belangrijk was en waar ze nodig waren.
Go, gRPC, GraphQL (gqlgen, magidoc), Gorilla/Mux, HTTP REST, excelize, testify, go-mock, Keycloak IAM
TypeScript, Angular, PrimeNG, PrimeFlex, Bootstrap, Keycloak JS-adapter, Karma
PostgreSQL, CockroachDB, MongoDB, ElasticSearch, OpenSearch
Linux-gebaseerd (afgeleid uit implementatieomgeving)
Nginx
OCPP 1.6, OCPI, OICP, eRoaming & facturering: Hubject, Fiserv, Hectronic
Docker, Docker Compose, Helm (voor K8s implementaties), Kubernetes (k8s), Hetzner VPS, Helm grafieken, Kibana, OpenSearch Dashboard
GitHub Actions
Docker, Kubernetes
Git, GitHub
Prometheus, Grafana, OpenTelemetry
Testify, go-mock, Karma (frontend)

Uw bericht is verzonden.
We verwerken je aanvraag en nemen zo snel mogelijk contact met je op.

Door u aan te melden gaat u akkoord met onze Privacybeleidmet inbegrip van het gebruik van cookies en de overdracht van uw persoonlijke gegevens.