Principal Software Engineer
Role details
Job location
Tech stack
Job description
We are looking for an experienced, capable technology leader who can live technically on our ESW core platform. The Principal Engineer will work with technology management, the development teams and partner closely with the product team to support implementation of our ESW Cloud based platform.
The Principal Engineer, Platform is a senior individual contributor who sets the technical direction for ESW's core platform. This role provides hands-on technical leadership across multiple teams, ensuring our platform is secure, scalable, reliable, and easy to build on.
Our platform is primarily built on latest .NET, Azure, and Kafka, with heavy use of AKS, Cosmos DB, Azure Monitor, Azure DevOps, Helm charts, containers, and shared base images.
You will collaborate with Engineering Managers, Product, and Architecture to evolve these platform capabilities, simplify complexity, and enable product teams to deliver value quickly and safely.
You will be a role model and mentor to our software developers and rest of the Platform Core team. The right leader will influence others by demonstrating professionalism, enthusiasm, providing communication and creating a collaborative environment., * Own and evolve ESW's platform architecture (.NET on AKS, Kafka, Cosmos DB).
- Design and review end-to-end platform capabilities and integration patterns.
- Set and enforce architectural standards for AKS, Kafka, APIs, and data.
- Drive key initiatives (service modernisation, container/Helm strategy, Azure refactors).
Hands-on engineering & delivery
- Contribute to and review critical .NET platform code.
- Guide AKS, Kubernetes, Helm, and container usage in practice.
- Break down large initiatives into incremental deliveries.
- Raise standards for code quality, CI/CD, testing, and automation.
- Align platform work with Engineering and Product priorities., * Ensure strong observability, reliability, and incident response across AKS, Kafka, and Cosmos DB.
- Drive cross-team adoption of shared libraries, pipelines, and Kafka patterns.
- Influence platform direction to reduce complexity and duplication.
- Mentor senior engineers and evolve engineering standards.
Requirements
Do you have experience in Technology management?, Hard skills
- Significant experience (10+ years) in software engineering, including senior technical leadership (e.g. Staff/Principal Engineer, Tech Lead).
- Able to speak English fluently
- Must have: experience with Azure, .NET, CosmosDB and Kafka; a basic understanding of Docker & Kubernetes
- Proven track record designing and operating largescale, distributed systems and platforms in Azure.
- Experience building and evolving platform capabilities and shared services used by multiple product teams.
- Strong system design and architecture skills (e.g. microservices on Kubernetes, event driven systems with Kafka, APIs, data contracts).
- Experience with Containers, Helm charts, and shared base images for consistent, repeatable deployments.
- Solid understanding of DevOps, CI/CD (preferably Azure DevOps), infrastructure as code concepts, and observability.
- Strong focus on security, reliability, and operational excellence in a cloudnative environment.
Soft skills
- Able to influence and align multiple teams without direct line management.
- Clear written and verbal communication in English, comfortable with technical and non-technical audiences. Primarily, the ability to communicate ideas.
- Pragmatic decision making: balances long-term platform health with short-term delivery needs.
- High ownership, collaborative, and continuously learning.
- Intellectual curiosity, learning agility, and enthusiasm for tackling challenging problems.
- Deep Problem solving and the ability to analyze a business or technical issue and select the most appropriate solutions.
- Understanding of risk in designs and mitigation strategies.