The following content displays a map of the jobs location - London
Software Development Engineer III - Payments
What’s in it for you
We offer excellent benefits that help make Tesco a great place to work! These include but are not limited to:
- Annual bonus scheme
- Holiday starting at 25 days plus a personal day (and bank holidays)
- Great colleague discounts and deals, saving you money on everyday purchases, utility bills for the home and more
- Retirement savings plan – save between 4% and 7.5% and Tesco will match your contribution
- Buy as you earn and Save as you earn share schemes
- Opportunities to get on – take advantage of our ongoing learning opportunities and award-winning training to help you achieve the career you want
About the role
The payment services team is at the heart of Tesco Technology, serving 28 million+ shoppers in the UK and abroad. We deliver HTTP services that reliably manage payments at global scale, 24 hours a day every day. We also provide capabilities that detect and prevent fraud and build upon innovative technologies to reduce loss. 100M+ transactions and billions of events per day, a billion pounds every week.
At the core of our operation are the APIs that handle a variety of payment methods including cash, card and gift card across stores, at our fuel stations and online. We also support wallet behaviours, repeat payments, refunds and identity checks. They are built around an event sourcing architecture using various of Java, Akka, Cassandra, Postgres and Kafka. We embrace DevSecOps wherever possible. Automation is a key area of focus for us. Our scale and workloads demand that we continuously improve our approaches to testing and deployment. Kanban is the way we manage our work. We support what we code.
You will be responsible for
- Translating requirements into tasks & code.
- Producing test-driven features and demonstrating your familiarity with the TDD cycle.
- Applying your understanding of cohesion and the SOLID principles to create well structured, maintainable software.
- Working effectively with product stakeholders to communicate and translate needs into product improvements.
- Leading group discussions on system design and working with Product Managers to drive value.
- Supporting production systems, resolving incidents, and performing root cause analysis.
- Sharing knowledge with the wider engineering community.
- Mentoring and developing others around you.
- Producing proof of concepts to evaluate new tools.
You will need
Experience relevant for this job:
- 5+ years of experience as a Java backend developer with the eagerness to take on new technologies
- Experience with cloud platform(s) (e.g. AWS, Azure, etc.)
- Experience with both SQL/NoSQL databases
- Experience with Ecommerce and search systems would be a nice to have, but not necessary.
- Experience with reactive programming is considered a plus.
Skills relevant for the job
- Strong written and verbal communication skills.
- Problem-solving, analysis and computational skills.
- A customer focus.
- An innovative approach to problem-solving.