Senior Data Ingestion Engineer

NS Groep N.V.
Utrecht, Netherlands
2 days ago

Role details

Contract type
Permanent contract
Employment type
Full-time (> 32 hours)
Working hours
Regular working hours
Languages
Dutch
Experience level
Senior
Compensation
€ 16K

Job location

Remote
Utrecht, Netherlands

Tech stack

API
Azure
Cloud Computing
Databases
Information Engineering
Data Migration
Relational Databases
Protocol Buffers
Python
PostgreSQL
Azure
Next.js
Software Engineering
TypeScript
Management of Software Versions
Data Processing
File Transfer Protocol (FTP)
Data Ingestion
Backend
Containerization
Data Lake
Kubernetes
Front End Software Development
Terraform
gRPC
Docker

Job description

Je bent onderdeel van één van de vijf platformteams binnen Data, Innovatie & Analyse (DIA). Samen bouwen jullie een dataplatform, waarbinnen datateams zoveel mogelijk ontzorgd worden in de randzaken, zodat ze zich kunnen richten op het maken van waardevolle informatieproducten. Als Senior Data Ingestion Engineer ben je geen traditionele data engineer die enkel pipelines bouwt. Je bent mede-verantwoordelijk voor het volledige ontwikkelproces van het schaalbare en robuuste platform waarop al onze data-ingestie draait: van design en implementatie tot deployment en monitoring, met een focus op automatisering en softwarekwaliteit. Je slaat de brug tussen software engineering en data engineering om een productiewaardig ingestie platform aan te bieden. Je speelt een cruciale rol in het realiseren van de "Bronnen Zetten Data Klaar" visie door een solide, gestandaardiseerde 'achterkant' te bouwen die data niet langer alleen verplaatst, maar ook valideert en als een betrouwbaar product aanbiedt. Je bent niet alleen technisch ontwikkelaar, maar ook sparringpartner en coach voor onze interne gebruikers, waarbij je ervoor zorgt dat onze tooling daadwerkelijk aansluit bij hun behoeften.

  • Het team: B innen het team ben je kritisch en neem je gedeelde verantwoordelijkheid voor resultaten. Je zorgt ervoor dat jouw expertise wordt gedeeld binnen het team. Feedback geef je gevraagd en ongevraagd. En krijg jij feedback, dan zie je dat als een kans om te groeien. Je bent communicatief, flexibel, snel van begrip en kan goed omgaan met deadlines en tijdsdruk.

  • Architectuur & Design: Je helpt bijvoorbeeld mee met het neerzetten van een push data service, bij het ontsluiten van bronnen op de meest efficiënte manier en bij het proactief meedenken over tooling, networking en containers.

  • Platform Bouwen: Je bouwt met Python de core services van ons nieuwe ingestieplatform. Dit omvat het ontwikkelen van generieke componenten voor verschillende ingestiepatronen (bijvoorbeeld API en FTP) en het implementeren van de data push-principes, zoals het optuigen van een Endpoint waar bronnen hun data naar kunnen pushen.

  • Productization van Data: Je zorgt ervoor dat we stoppen met het 'as-is' doorgeven van bestanden. Je implementeert de logica voor validatie, versioning en metadata-management, waardoor we een betrouwbare 'bronze layer' kunnen aanbieden.

  • Automatisering (IaC): Je zet je diepgaande kennis van Terraform in om de volledige infrastructuur van het ingestieplatform als code te verbeteren. Dit maakt het uitrollen van nieuwe pipelines en het doorvoeren van wijzigingen (zoals initial loads) voorspelbaar en efficiënt.

  • Self-Service Verbeteren: Je werkt aan de backend van de webapplicatie om deze daadwerkelijk nuttig te maken. Je bouwt de API's die nodig zijn om retries mogelijk te maken en de complexiteit van API-ingestie (zoals whitelisting en paginering) voor data-teams te abstraheren.

Je bent onderdeel van één van de vijf platformteams binnen Data, Innovatie & Analyse (DIA). Samen bouwen jullie een dataplatform, waarbinnen datateams zoveel mogelijk ontzorgd worden in de randzaken, zodat ze zich kunnen richten op het maken van waardevolle informatieproducten. Als Senior Data Ingestion Engineer ben je geen traditionele data engineer die enkel pipelines bouwt. Je bent mede-verantwoordelijk voor het volledige ontwikkelproces van het schaalbare en robuuste platform waarop al onze data-ingestie draait: van design en implementatie tot deployment en monitoring, met een focus op automatisering en softwarekwaliteit. Je slaat de brug tussen software engineering en data engineering om een productiewaardig ingestie platform aan te bieden. Je speelt een cruciale rol in het realiseren van de "Bronnen Zetten Data Klaar" visie door een solide, gestandaardiseerde 'achterkant' te bouwen die data niet langer alleen verplaatst, maar ook valideert en als een betrouwbaar product aanbiedt. Je bent niet alleen technisch ontwikkelaar, maar ook sparringpartner en coach voor onze interne gebruikers, waarbij je ervoor zorgt dat onze tooling daadwerkelijk aansluit bij hun behoeften.

Requirements

  • 7-10 jaar ervaring als Software Engineer, Platform Engineer of Data Engineer met een zeer sterke software achtergrond.
  • Expert in Python: Je bent een expert in het bouwen van robuuste, schaalbare en onderhoudbare applicaties en services in Python.
  • Cloud & Architectuur: Diepgaande, hands-on ervaring met Azure. Je kent de nuances van services als Function Apps, Azure Container Apps en ADLS Gen2. Je denkt in ecosystemen en schaalbare (micro)service-architecturen.
  • Containerisatie: Je hebt ruime ervaring met Docker, Kubernetes of vergelijkbare orchestrators zoals Azure Container Apps om applicaties schaalbaar en geïsoleerd te kunnen draaien.
  • Infrastructure as Code (IaC): Terraform heeft voor jou geen geheimen. Je bouwt en beheert infrastructuur geautomatiseerd.
    • API Design: Ervaring met het ontwerpen en bouwen van API's
  • Open Table Formats: Kennis van en ervaring met Delta Lake of Iceberg is een grote pré. Sterke pré's:
  • Data Processing: Ervaring met data-intensieve libraries zoals pyArrow.
  • Azure Networking: Een solide begrip van netwerkconcepten binnen Azure om veilige en performante dataverbindingen op te zetten.
  • Frontend: Kennis van en ervaring met TypeScript & NextJS.
  • Tooling stack: Ervaring met protobuf, gRPC, sqlc
  • Databases: Ervaring met RDBMS zoals Postgres en data migraties.

About the company

Over het team Je gaat werken in team Lakehouse: een gemotiveerd en zelfstandig scrumteam met vier Developers, een UX-designer, een Scrum Master en een Product Owner. We werken hybride vanuit ons hoofdkantoor in Utrecht en thuis, met minimaal één vaste kantoordag per week. Samen streven we naar continue verbetering en delen we actief kennis en ervaringen. Werken bij NS betekent dat jij hét verschil kunt maken in de wereld van duurzame mobiliteit. Jij helpt mee om Nederland bereikbaar te houden, voor iedereen. Bij NS krijg je veel vrijheid. We beloven je dat geen dag hetzelfde is. De kernwaarden van NS zijn open en betrouwbaar. Wij gaan voor resultaat en willen vooruit.

Apply for this position