Hackajob is collaborating with Tesco to connect them with exceptional professionals for this role.
We are in the process of building, evolving and rolling out our inhouse built Fulfilment Point System (FPS) platform to all our Customer Order Fulfilment locations within the UK and internationally. FPS is a new generation fulfilment application which enables all customer order fulfilment centres to pick, marshal and dispatch customer orders on one hand and own the site workflow through a real‑time visualisation and intervention tool on the other hand.
Our team is a globally distributed, full‑stack Java tech team. Our building blocks consist of microservice components, backend APIs, rich UI, a robust eventing platform and data layer components utilising a wide range of modern technologies, including:
* Java, RxJava, Spring Boot
* React and Node.js
* Kafka, PostgreSQL and Couchbase
* Docker, Kubernetes, Jenkins, Azure DevOps, Splunk, AppDynamics, New Relic
* Azure Cloud
We are responsible for software throughout its lifecycle. We maintain a DevOps culture employing continuous integration and delivery, supporting our code through to production and beyond.
We know life looks a little different for each of us. That’s why at Tesco, we always welcome chats about flexible working. Some people are at the start of their careers, some want the freedom to do the things they love. Others are going through life‑changing moments such as becoming a carer, nearing retirement, adapting to parenthood, or something else. So, talk to us throughout your application about how we can support.
You will be responsible for Software Development Engineers (SDEs) who are the creative minds developing the software applications that make life easier for customers. They are responsible for the entire development and support process for a software programme. Their applications make previously challenging tasks simple, with impacts ranging from saving time, effort or money to redefining normal.
High Level Expectations From The Role
* Take a business problem and devise the technical strategy (e.g., push vs pull, real‑time vs batches, sync vs async) within the team, design at a high level, and own the implementation.
* Need minimal directions or guidance and collaborate with SDEs across teams working on the same or similar business problems.
* Showcase outstanding behaviour in design, delivery, code, and processes, setting examples for the team.
* Ensure design or architectural deficiencies are addressed and routinely simplify integration of peer teams with the team’s software.
You will need
Experience Relevant For This Job
* Previous experience of product development using agile methodologies.
* Hands‑on experience building and supporting reliable and operationally robust full‑stack and distributed Java applications or products.
* Any previous experience participating in globally distributed software engineering teams would be a big plus.
Skills Relevant For The Job
Programming
* Demonstrate in‑depth knowledge of IDE, language, and toolset in language of choice.
* Implement critical path components in large or complex projects.
* Demonstrate excellent understanding of language and framework and a good working knowledge of the abstraction layer underneath.
* Comfortably test‑drive any feature and be comfortable with the TDD cycle.
* Comfortably debug and find sophisticated problems.
Design
* Identify and apply appropriate design patterns to problems.
* Understand idempotence.
* Actively practice the boy scout principle, leaving designs and code in a better state than when arrived.
* Understand the importance of domain models 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 Specialisation
* Java, Spring Boot
* Kafka
* PostgreSQL
* Couchbase
* CI/CD: Jenkins, Azure Pipelines, GitHub Actions.
* Cloud: Azure
#J-18808-Ljbffr