Location
London
Hours
Full Time
Salary
Competitive salary with annual bonus scheme of up to 20% of base salary
About the Role
Every customer is different, and we're building the technology to make every Tesco experience feel personal. Join Tesco's Personalisation team and help shape the experiences of millions of customers every day by powering real-time recommendations, offers, targeting, and experimentation across our web, mobile, and in-store channels. Our platforms combine real-time data, machine learning, and large-scale distributed systems to turn customer insights into intelligent decisions in milliseconds. You'll work on complex engineering challenges spanning streaming data, low-latency decisioning services, and ML powered systems, while collaborating closely with product, data science, and analytics teams.
This is an opportunity to build technology at significant scale, influence the evolution of our personalisation platform, and directly impact how millions of customers discover, shop, and save with Tesco.
You will be responsible for:
- Building low-latency, high-throughput services for personalisation
- Developing Java / Spring Boot microservices with REST/gRPC APIs
- Working with Kafka and event-driven architectures
- Building pipelines using Apache Flink and Apache Beam
- Integrating ML models and feature stores
- Working with NoSQL databases and Redis caching
- Using Apache Camel for integration where required
- Collaborating with product, data science, and analytics teams
- Writing automated tests and improving reliability
- Monitoring systems using New Relic, Splunk, and metrics platforms
- Supporting CI/CD pipelines and deployments
- Contributing to experimentation (A/B testing)
We offer a comprehensive benefits package including holiday starting at 25 days plus a personal day (plus Bank holidays), private medical insurance, generous parental leave, free 24/7 virtual GP service, Employee Assistance Programme (EAP) for you and your family, and access to mental wellbeing experts. At Tesco, we champion a balance that lets you thrive both in and out of work with flexible working options and an inclusive, accessible recruitment process.
Experience
- Strong Java backend experience
- Experience building microservices and APIs
- Understanding of event-driven systems
- Familiarity with stream processing concepts
- Knowledge of distributed systems
- Experience with Apache Flink and Apache Beam (nice to have)
- Experience with Kafka (nice to have)
- Familiarity with Apache Camel (nice to have)
- Experience with NoSQL databases (Cassandra, DynamoDB) and Redis (nice to have)
- Cloud experience (GCP or AWS) (nice to have)
- Docker and Kubernetes (nice to have)
- ML model serving or feature stores (nice to have)
- A/B testing platforms (nice to have)
- Terraform or infrastructure as code (nice to have)
- Performance and scalability optimisation (nice to have)
About you
Strong communication and teamwork skills with an interest in data-driven personalisation systems. Enthusiastic about solving complex engineering challenges and collaborating across multidisciplinary teams.
Qualifications
No specific qualifications required, but relevant experience and a passion for building scalable, reliable systems are essential.

