Cloud Native Software Engineer – Kafka & Kubernetes
TenneT is Europe’s first cross-border grid operator for electricity. With approximately 22,000 kilometers of (extra) high-voltage lines and 41 million end-users in the Netherlands and Germany, we rank among the top five grid operators in Europe. Our focus is to develop a North-West European energy market, to integrate renewable energy, and to optimize our safety performance. Safety & Security is a core value of TenneT. We set high standards for our employees as well as our contractors. Taking power further.
TenneT is currently replacing its EMS/SCADA system as part of a program to achieve a 'Control Room of the Future'. The EMS/SCADA system is the main application for steering and controlling the high-voltage grid. Part of this program is the realization of an integration platform which is situated between the EMS/SCADA system and the IT landscape.
For the IT-OT integration team we are looking for a:
Cloud Native Software Engineer – Kafka & Kubernetes (1 FTE, Arnhem: 2-3 days per week on site)
What is your role as a senior cloud native software engineer at TenneT?
Key responsibilities:
• Design, develop, and maintain robust Java/Python applications, with a strong focus on performance, reliability, security, observability, and scalability.
• Containerize and deploy workloads to Kubernetes clusters using best practices for CI/CD, monitoring, and fault tolerance.
• Implement comprehensive test coverage, including unit, integration, and system tests to ensure code quality and stability.
• Diagnose and resolve issues uncovered during testing or reported in production, with an emphasis on root cause analysis and sustainable fixes.
• Continuously improve codebases, deployment pipelines, and team practices through proactive suggestions and hands-on implementation.
• Collaborate actively in design discussions, code reviews, and knowledge-sharing sessions to foster a strong engineering culture.
• Participate in periodic standby/on-call rotations, approximately once every two months, to support mission-critical services during off-hours.
Candidate profile:
• You bring a level experience in developing and operating production-grade backend applications, preferably in Java or Python. You have a solid understanding of cloud-native design principles, distributed systems, and microservice architectures. Proven experience in deploying containerized applications on Kubernetes in production environments (required).
• You are comfortable working with streaming platforms like Apache Kafka (required), and ideally familiar with one or more stream processing frameworks such as Apache Flink, Kafka Streams, or Apache Beam.
• Experience with infrastructure-as-code, CI/CD pipelines (e.g., ArgoCD, Terraform, Tekton, GitHub Actions), and modern DevOps practices (e.g., GitOps, observability, auto-scaling)
• Familiarity with cloud object storage (e.g., MinIO, S3) and modern databases (e.g., MongoDB, PostgreSQL/TimescaleDB)
• Bonus points for experience in data-intensive applications, including time-series data, analytics, or real-time processing.
• Comfortable working in an agile, cross-functional team and taking ownership across the software delivery lifecycle.
• You have strong communication skills and enjoy collaborating across disciplines; English fluency is required, Dutch or German is a plus.
• Willing to participate in a night-time standby/on-call rotation (approximately once every two months) to support business-critical systems
• You have a bachelor's or master's degree in a technical field (e.g., engineering, mathematics, physics, computer science).
Practical information:
• UVO screening must be received before a candidate can start;
• Upon commencement of employment, a Pre Employment Screening (PES) is carried out as standard;
• Location: Arnhem, 2 to 3 days a week onsite
• Unfortunately, the application does not lend itself to the hiring of a self-employed person;
• Option to extend is available yes/no?
Additional information:
• Suppliers of candidates must be aware of the applicable laws and regulations in the field of employment conditions and the (TenneT) collective labor agreement. This commitment falls within scale 7 of the scope of the TenneT collective labor agreement;
• We would like to receive the personal motivation and CV in Dutch or English
Screening:
• Pre-employment screening: If the candidate is allowed to start at the client, a pre-employment screening will take place. We will then send you the necessary documents. Your candidate may only start after completing the pre-employment screening. The VOG and UVO application is part of the screening from Magnit, the VOG must be received before the candidate can start;
• The candidate has proof of identity (a passport or identity card), which is valid at intake and on the start date of the candidate's contract and can be submitted for verification.
Availability:
• It is important that the candidate is available for the entire requested period in the application;
• When offering a candidate, we assume that you agree with the terms and conditions of this specific client. If you are not familiar with these conditions, you can request them from the responsible consultant.
IMPORTANT! Fill in all candidate details correctly. In the event of incomplete/incorrect offers, there is a risk that the candidate cannot be offered and will therefore be rejected. Together we ensure a stable and sustainable energy grid. Netherlands – together with you.