Overview
We are in the process of building and rolling out our next generation, dynamic, scalable, and resilient Fulfilment platform for Tesco to address both manual and robotic powered automated fulfilment operations across all customer order fulfilment locations. This highly optimized and continuously improving platform is designed to be used to fulfil all product categories – Grocery/GM and Fashion – of customer orders.
Our Fulfilment Point System (FPS) enables all the customer order fulfilment centres across different geographies to pick, marshal and dispatch customer orders on one hand and manage the site workflow through a real‑time visualisation and intervention tool on the other hand.
We are a globally distributed, full‑stack Java tech team. Our building blocks consist of a set of micro‑service components, backend APIs, Rich UI, robust Eventing Platform and data layer components utilising a wide range of modern technologies including Java, RxJava, SpringBoot, Kafka, PostgreSQL, Couchbase, Docker, Kubernetes, Jenkins, Azure DevOps, Splunk, AppDynamics, New Relic, Azure Cloud. We are responsible for the software throughout the lifecycle and maintain a DevOps culture employing continuous integration and delivery.
Responsibilities
Design and Develop: Architect and build high‑performance applications.
System Optimisation: Collaborate with cross‑functional teams to enhance system efficiency, scalability and reliability for mission‑critical applications.
Integration: Develop APIs and microservices to integrate with enterprise API and third‑party platforms.
Code Quality: Write clean, maintainable and well‑documented code, adhere to best practices and coding standards.
Troubleshooting: Diagnose and resolve complex technical issues in real‑time to ensure uninterrupted operations.
Mentorship: Guide junior engineers and foster culture of continuous improvement.
Innovation & Collaboration: Stay ahead of industry, work closely with hardware, data scientists and operation team.
Experience relevant for this job
* Previous experience of having done product development using agile methodologies
* Hands‑on experience of building and supporting reliable and operationally robust full‑stack and distributed Java applications / products
* Any previous experience of having contributed in a globally distributed software engineering teams would be a big plus.
Tech Skills
Programming
* Demonstrate in depth knowledge of IDE, language, and toolset in language of choice.
* Implement critical path components in a large or complex project.
* Demonstrate excellent understanding of language & framework and a good working knowledge of the abstraction layer underneath.
* Comfortably test drive any feature / comfortable with TDD cycle.
* Comfortably debug/find complex problems.
Design
* Identify and apply appropriate design patterns to problems.
* Understand Idempotence.
* Actively practice the boy scout principle, leaving design, code in a better state than when arrived.
* Understand importance of domain model and can coherently model a problem domain within a given context.
* Understand design patterns such as CQRS and eventual consistency.
* Understand how to design for performance at all levels.
Development Practice
* Automate everything by default.
* Build a CI/CD pipeline.
Tech Stack Specialization
* Java, Spring Boot
* Kafka
* Postgres
* Couchbase
* CI/CD: Azure pipelines / Git Actions.
* Cloud: Azure
EEO Statement
We're proud to be an accredited Disability Confident Leader, where everyone's welcome. That's why we commit to providing a fully inclusive and accessible recruitment process. If you need support with your application, more information is available.
#J-18808-Ljbffr