Joris den Ouden
Werkervaring
2018–heden Technical Lead bij NS (afdeling R&D Knooppuntlogistiek)
Als technical lead ben ik verantwoordelijk voor de softwarearchitectuur en de ontwikkeling van de "Hybride Integrale Planmethode": een solver voor het integraal plannen van de rangeerbewegingen, behandeltaken en het personeel op en rond de stations. Ik heb een belangrijke rol gespeeld in de transformatie van de solver van een afstudeerproject tot een productiewaardige applicatie, waarbij ik het team heb zien groeien van drie man tot de huidige twee teams van in totaal 25 man.
De afgelopen jaren heb ik me voornamelijk gericht op:
- het instaan voor het domein- en het datamodel en het opzetten en implementeren van de API-definitie en -implementatie.
- het ontwerpen en in infra-as-code implementeren van de cloud-inrichting op Azure, inclusief monitoring en authenticatie;
- het ontwerpen en opzetten van CI-/CD-pipelines en review-policies in Azure Pipelines;
- het ontwerpen, specificeren en opzetten van de data-integraties met andere informatiesystemen.
- het modulariseren en herbruikbaar maken van de code;
- het verbeteren van de algoritmiek door gebruik te maken van metaheuristieken en MIP-modelleringen.
Technologieën: C#/.NET • MSBuild • ASP.NET Core • Java • Python • TypeScript • Powershell • Git • Protobuf/gRPC • Azure Cloud (Storage, Batch, Container Registry, App Service, Log Analytics Workspace, Application Insights, Virtual Network, RBAC, ARM/Bicep) • Azure DevOps (Repos, Pipelines, Artifacts) • Azure AD • Terraform • LaTeX • PlantUML • JIRA • Confluence
2015–2018 Webdeveloper bij Basedriver (voorheen Netwinst)
Bij Basedriver heb ik als backend .NET-developer gewerkt aan projecten voor onder andere KPN, New Skool Media, NS, Telfort, Goede Doelen Loterijen, en aan interne projecten.
Technologieën: C#/.NET Framework • ASP.NET MVC • JavaScript • Entity Framework • Microsoft SQL Server • Subversion
2013–2015 Studentassistent bij Universiteit Utrecht
Als studentassistent heb ik begeleiding gegeven bij werkcolleges, vragen van studenten beantwoord en ingeleverde opdrachten nagekeken bij onder andere de vakken datastructuren, algoritmiekm en kunstmatige intelligentie.
Opleiding
2015–2018 MSc Computing Science aan de Universiteit Utrecht
Richting: Algorithm Design & Analysis
Thesis: Generating robust schedules for train maintenance staff
Vakken: Optimization and vectorization • Algorithms and networks • Simulation • Scheduling and timetabling • Geometric algorithms • Parallel algorithms • Probabilistic reasoning • Data mining • Pattern recognition • Pattern set mining
Technologieën: C#/.NET • C++ • C • Python • R • SQL • Git • LaTeX
2012–2015 BSc Informatica aan de Universiteit Utrecht
Richtingen: Theoretische informatica • Technische kunstmatige intelligentie
Eindproject: Off-shore wind planner
Vakken: Imperatief programmeren • Functioneel programmeren • Datastructuren • Algoritmiek • Data-analyse en -retrieval • Security • Concurrency • Optimalisering en complexiteit • Kunstmatige intelligentie • Intelligente systemen • Computationele intelligentie • Wetenschapsfilosofie
Technologieën: C#/.NET • ASP.NET MVC • Python • Haskell • R • SQL • Git • LaTeX • QGIS • GeoServer