Developer Regie Op Berichten

Bright Professionals B.V.
Utrecht, Netherlands
1 day ago
Apply on www.adzuna.nl
Prepare application

Role details

Contract type
Permanent contract
Employment type
Full-time (> 32 hours)
Experience level
Expert
Experience required
5 years minimum
Working hours
Regular working hours
Languages
Dutch
Job source

Tech stack

ASP.NET .NET Framework Application Programming Interfaces (APIs) Artificial Intelligence Automation of Tests Microsoft Azure C Sharp (Programming Language) Cloud Engineering Continuous Integration Dependency Injection DevOps Entity Framework
+21 more
Event-Driven Programming SQL Azure OAuth Redis Azure Active Directory Azure Service Bus Datadog Blazor Backend Kotlin Specflow AngularJS Gherkin Kubernetes Playwright Jetpack Compose Bicep Cosmos DB Restful APIs Terraform Microservices

Job description

  • Je denkt vanuit de medewerker in de operatie en de waarde voor de reiziger.
  • Je schakelt gemakkelijk tussen domeingesprek, model, C#-code, test en productiegedrag.
  • Je maakt aannames zichtbaar en stelt gerichte vragen voordat je complexe functionaliteit bouwt.
  • Je voelt je verantwoordelijk voor kwaliteit, betrouwbaarheid en onderhoudbaarheid.
  • Je werkt graag samen met product, architectuur en operationele stakeholders.
  • Je geeft en ontvangt feedback en maakt ontwerpkeuzes bespreekbaar.
  • Je bent nieuwsgierig naar nieuwe ontwikkelingen, waaronder AI en agent-based oplossingen, en zet die alleen in als ze aantoonbare waarde toevoegen.
  • Je werkt datagedreven aan productkwaliteit en operationele verbetering.

Requirements

  • Je hebt minimaal hbo- of wo-werk- en -denkniveau.
  • Je hebt minimaal vijf jaar ervaring als backend- of fullstackdeveloper in C# en .NET binnen professionele softwareontwikkeling.
  • Je hebt ervaring met domeinmodellering en Domain-Driven Design, of je kunt overtuigend laten zien dat je dit in de praktijk toepast.
  • Je hebt ervaring met clean architecture, hexagonal architecture, ports and adapters of een vergelijkbare aanpak voor duidelijke scheiding van lagen en verantwoordelijkheden.
  • Je hebt ervaring met het ontwerpen en bouwen van microservices of andere zelfstandig deploybare services.
  • Je hebt ervaring met REST API’s, integratiecontracten en versiebeheer van API- en eventcontracten.
  • Je hebt ervaring met geautomatiseerd testen op meerdere niveaus, waaronder unit-, integratie-, contract- en acceptatietests.
  • Je hebt ervaring met BDD, specification-by-example of een vergelijkbare werkwijze waarbij je specificaties uitvoerbaar vastlegt.
  • Je hebt ervaring met werken in een DevOps-team en met CI/CD-pijplijnen.
  • Je beheerst de Nederlandse taal uitstekend, zowel mondeling als schriftelijk.

Het is een pre als je ervaring hebt met

  • Azure en cloud-native backendontwikkeling.
  • Azure Service Bus, event-driven integratie, outbox, idempotentie en dead-letterafhandeling.
  • Azure SQL, Cosmos DB, Redis en Blob Storage.
  • ASP.NET Core, Entity Framework Core en dependency injection.
  • Reqnroll, SpecFlow, Gherkin, Playwright, Testcontainers, WireMock, contract testing, ArchUnitNET of vergelijkbare tooling.
  • Bicep, Terraform of andere infrastructure-as-code.
  • Kubernetes/AKS, observability, Datadog, tracing, SLO’s, loadtesten en resilience testing.
  • Microsoft Entra ID, OAuth2/OIDC, scopes, app roles en Managed Identity/Workload Identity.
  • Privacy-by-design, audit trails, retentie en dataminimalisatie.
  • Werken met architectuur-, code-, API-, security- en loggingstandaarden.
  • Angular, Blazor, Kotlin of Jetpack Compose.

  • Je hebt minimaal hbo- of wo-werk- en -denkniveau.
  • Je hebt minimaal vijf jaar professionele ervaring als backend- of fullstackdeveloper met C# en .NET.
  • Je hebt aantoonbare ervaring met domeinmodellering en Domain-Driven Design, of je kunt dit overtuigend in de praktijk toepassen.
  • Je hebt ervaring met clean architecture, hexagonal architecture, ports and adapters of een vergelijkbare aanpak voor duidelijke scheiding van lagen en verantwoordelijkheden.
  • Je hebt ervaring met het ontwerpen en bouwen van microservices of andere zelfstandig deploybare services.
  • Je hebt ervaring met REST API’s, integratiecontracten en het beheren van versies van API- en eventcontracten.
  • Je hebt ervaring met geautomatiseerd testen op meerdere niveaus, waaronder unit-, integratie-, contract- en acceptatietests.
  • Je hebt ervaring met BDD, specification by example of een vergelijkbare werkwijze waarbij je specificaties uitvoerbaar vastlegt.
  • Je hebt ervaring met werken in een DevOps-team en met CI/CD-pijplijnen.
  • Je beheerst de Nederlandse taal uitstekend, zowel mondeling als schriftelijk.

  • Bij voorkeur heb je ervaring met Azure en cloud-native backendontwikkeling
  • Bij voorkeur heb je ervaring met Azure Service Bus, event-driven integratie, outbox, idempotentie en dead-letterafhandeling
  • Bij voorkeur heb je ervaring met Azure SQL, Cosmos DB, Redis en Blob Storage
  • Bij voorkeur heb je ervaring met ASP.NET Core, Entity Framework Core en dependency injection
  • Bij voorkeur heb je ervaring met Reqnroll, SpecFlow, Gherkin, Playwright, Testcontainers, WireMock, contract testing, ArchUnitNET of vergelijkbare tooling
  • Bij voorkeur heb je ervaring met Bicep, Terraform of andere infrastructure-as-code
  • Bij voorkeur heb je ervaring met Kubernetes/AKS, observability, Datadog, tracing, SLO’s, loadtesten en resilience testing
  • Bij voorkeur heb je ervaring met Microsoft Entra ID, OAuth2/OIDC, scopes, app roles en Managed Identity/Workload Identity
  • Bij voorkeur heb je ervaring met privacy-by-design, audit trails, retentie en dataminimalisatie
  • Bij voorkeur heb je ervaring met werken volgens architectuur-, code-, API-, security- en loggingstandaarden
  • Bij voorkeur heb je ervaring met Angular, Blazor, Kotlin of Jetpack Compose

About the company

Je werkt mee aan de herbouw van ROB. Dat is meer dan een technische vervanging: je helpt een complex domein opnieuw helder te modelleren en stap voor stap te vertalen naar software die aantoonbaar aan de behoeften voldoet. Je werkt op het snijvlak van domein, architectuur en realisatie. In een multidisciplinair DevOps-team ben je betrokken vanaf het eerste domeingesprek tot en met productie, beheer en doorontwikkeling. Je neemt verantwoordelijkheid voor de kwaliteit van het platform.

Domein begrijpen en modelleren

  • Je werkt samen met de Product Owner, analist, domeinexperts, medewerkers uit de operatie, de architect en andere ontwikkelaars.
  • Je onderzoekt onduidelijkheden voordat je een oplossing bouwt en helpt een gedeelde ubiquitous language vast te leggen.
  • Je helpt bepalen welke verantwoordelijkheid in welke bounded context thuishoort.
  • Je bewaakt dat iedere context eigenaar blijft van het eigen gedrag, de eigen data en betekenis.
  • Je bouwt services volgens clean en hexagonal architecture.
  • Je ontwikkelt event-driven microservices die onafhankelijk te testen, uit te rollen en terug te draaien zijn.

Backend en integratie

  • Je ontwikkelt backendservices in C#/.NET.
  • Je ontwerpt REST API’s volgens HTTP-semantiek en resourcegerichte principes.
  • Je ontwerpt en implementeert domeinevents op Azure Service Bus.
  • Je verwerkt berichten idempotent en denkt mee over outbox, retries, deadlettering en replay.
  • Je gebruikt waar mogelijk uitbreidbare contractwijzigingen en behandelt betekenisvolle wijzigingen als een nieuw contract of een nieuwe contractversie.
  • Je werkt met Azure SQL, Cosmos DB, Redis en Blob Storage als infrastructuuradapters.
  • Je bouwt kanaaladapters voor onder meer Azure Communication Services en Firebase.

Specificatie en testen als één ontwikkelproces Binnen ROB is een test niet alleen een controle achteraf, maar een vastlegging van afspraken over het gewenste gedrag.

  • Je maakt samen met product- en domeinexperts duidelijke, concrete en toetsbare specificaties.
  • Je vertaalt die specificaties naar BDD-scenario’s in begrijpelijke domeintaal, met Reqnroll waar dat passend is.
  • Je werkt zowel de gewenste paden als negatieve scenario’s uit, waaronder validatie-, autorisatie-, bron-, opslag- en veiligheidsfouten.
  • Je schrijft vóór of tegelijk met de implementatie tests die de gewenste werking aantonen.
  • Je zorgt dat requirements terug te vinden zijn in scenario’s, tests, contracten of architectuurchecks.
  • Je gebruikt architectuurtests, bijvoorbeeld met ArchUnitNET, om laagafhankelijkheden en isolatie van bounded contexts af te dwingen.
  • Je analyseert niet alleen de testdekking, maar ook de kwaliteit van tests.
  • Je maakt operationele eisen zoals latency, auditability, observability en herstelbaarheid toetsbaar.

Kwaliteit, security en operability

  • Je werkt met code reviews, statische kwaliteitschecks, dependency scanning en securityscans in CI/CD.
  • Je ontwerpt vanuit least privilege, security-by-design en privacy-by-design.
  • Je gebruikt voor Azure-resources waar mogelijk Managed Identity via Workload Identity en Microsoft Entra RBAC.
  • Je maakt metrics, logs, traces, auditrecords, healthchecks en alerts onderdeel van het gedrag dat je oplevert.
  • Je denkt mee over betrouwbaarheid, retries, fallback, failover, zero-downtime deployments en rollback.

Bij NS maak je het verschil voor duurzame mobiliteit en help je Nederland bereikbaar te houden. Je krijgt veel vrijheid en kunt rekenen op afwisselend werk. De kernwaarden van NS zijn openheid en betrouwbaarheid. NS richt zich op resultaat en vooruitgang.

Apply for this position

This job is hosted externally. Click below to view the full posting and apply.

Apply on www.adzuna.nl
Prepare application

Good distractions

Loading talks and stories from around this role…