
Principal Software Development Engineer - Payments (Java)
Full Time
About the role As a Principal Software Development Engineer, you are key in shaping large parts of Tesco’s technical landscape. You contribute to strategic planning, combining business vision and industry best practices to define technical strategy and make decisions.You typically work across multiple teams, setting standards for engineering excellence and efficient technical design. You are hands-on and guide teams to improve technology across product portfolios, infrastructure, and processes.As a senior technical expert, you are a thought leader for large and complex areas. You set technical direction to translate strategy into action, making a significant impact on the organisation. You own the design, implementation, and delivery of software that shapes products and technologies. You use your depth of skill and experience to enable multiple teams around you to deliver excellent software quickly. What is in it for you Tesco is a diverse and exciting employer, dedicated to being #aplacetogeton, providing career-defining opportunities to all of our colleagues. If you chose to join our business, we will provide you with:
- Permanent contract from the go – as a sign of our trust in your abilities
- Yearly salary bonus – based on both individual and business performance
- Car allowance
- Extensive private healthcare - complex care package including a wide range of specialists, medical services, and free flu vaccination
- Cafeteria
- Relocation Help - professional service to secure relevant working permits and other necessary documents
- Learning opportunities - certified technical training and learning platforms like Udemy, Pluralsight, and O'Reilly
- Referral Bonus
- Learning culture and excellent opportunities to develop your career within your chosen field or something altogether new
- Varied and exciting projects to play a part in – there is always something new and exciting in the pipeline
- Apply your in-depth knowledge of multiple programming languages, associated frameworks, and the tool ecosystem to create elegant solutions to problems.
- Adopt new languages and new paradigms and produce proof of concepts to evaluate new tools, applying them to the problem domain where they deliver significant benefit.
- Lead group discussions on design and model multiple domains, articulating contexts and boundaries and the rationale behind them, shaping the wider application landscape.
- Work with product teams to understand and translate their needs into improvements in your product, translating requirements into tasks and code and developing high-quality code that can lead to rapid delivery.
- Support production systems, resolving incidents, and performing root cause analysis.
- Share knowledge with the wider engineering community, mentoring and developing those around you to improve the organisation.
- Demonstrated experience with Java, Spring Boot, .NET, Kafka environment
- Demonstrated experience designing, developing and running whole system landscapes.
- Experience across large engineering organisations.
- Experience acting as a technical authority across multiple domains and multiple technologies.
- Experience proposing architectural patterns for adoption by an organisation.
- Experience guiding large programmes of work.
- Experience driving the adoption of inner sourcing initiatives.
- A track record of delivering large-scale, well architected web solutions at pace
- You drive and implement best practice improvements
- You confidently and competently impart knowledge to users, customers, and other team members
- Strong understanding of running production applications.
- Designing and building distributed systems, for scalability, availability and performance
- Testing everything, automating everything
