Software Development Engineer III - Data (Fulfillment)

Category: Information Technology

Location: Kraków, małopolskie


Software Development Engineer III - Data (Fulfillment)

Kraków, małopolskie, Poland

Add to basket Share Apply

Company Description

Tesco Technology is multi-functional and specialist team that drives operational excellence of services improves scale for our systems and processes globally and creates business leading capabilities.

We are an agile team of an industry-leading team of engineers. We create the future continuous integration and delivery tools for Colleague and Customer & Loyalty areas, solving problems, and developing new features through quality, scalable, performant, and maintainable technical solutions. The solutions that we are responsible for will have a global reach, impacting hundreds of thousands of Tesco colleagues worldwide.

We operate in a DevOps philosophy. We take responsibility for the software through its entire lifecycle. We practice continuous integration, delivery, and support of our code through to production and beyond.

As Tech Hub we cooperate within the group of Tesco Technology Hubs located in the UK, Poland, Hungary, and India.


Additional Information

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.
  • Up to 20% yearly salary bonus – for employment contract colleagues only – based on both individual and business performance
  • Extensive private healthcare - complex care package including a wide range of specialists, medical services, and free flu vaccination
  • Cafeteria & Multisport – subsidized MyBenefit cafeteria platform with an option to use the funds on the multisport card.
  • 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 – You’ll get 4500 PLN for each colleague you successfully refer to work with us.
  • Optional life insurance – a wide variety of insurance options from our partner, available optionally at a significant discount.

If that sounds exciting, then we'd love to hear from you.


Job Description

Mandatory skills:

Hadoop hive

- any stream processing

- Scala

- Spark/PySpark


Good to have skills:

Functional programming

- Kafka and basics of containerization/Kubernetes


  • Take a business problem and come up with the technical strategy (push vs pull etc real time vs batches sync vs async) within the team high level design and lead the implementation
  • Need minimal directions or guidance and collaborate with SDEs across teams working on the same or similar business problem
  • You showcase exemplary behaviour in your work – your design delivery code processes all set examples for your team
  • Influence your team’s technical and business strategy by suggesting novel approaches
  • Able to communicate your ideas and get feedback from different stakeholders and drive convergence to achieve the right outcomes
  • Proactively mentor the rest of the team and help in hiring
  • Ensure design or architectural deficiencies are addressed and routinely simplify integration of your peer teams with your team’s software
  • Consistently lead delivery of valuable features
  • Continually propose and drive process improvements
  • Help elaborate requirements where necessary
  • Programming
  • Demonstrate in depth knowledge of IDE language and toolset in language of choice.
  • Implement critical path components in a large or complex or project.
  • Demonstrate excellent understanding of language & framework and a good working knowledge of the abstraction layer underneath
  • Profile and optimise code
  • Understand threads threading model and concurrent programming
  • Comfortably test drive any feature/comfortable with TDD cycle
  • Demonstrate a good knowledge of other programming languages & paradigms and when to apply them
  • Comfortably debug/find complex problems
  • Design
  • Identify and apply appropriate design patterns to problems
  • Comfortably develop large features
  • Understand Idempotence
  • Actively practice the boy scout principle leaves design code in a better state than when arrived
  • Demonstrate a good understanding of cohesion SOLID and how to apply
  • Understand importance of domain model and can coherently model a problem domain within a given context
  • Anticipate medium term (3-6 month) vectors of change and designs and abstracts accordingly
  • Understand and appreciate simplicity and the value of removing code
  • 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
  • Automate security scanning and performance testing as part of build
  • Infrastructure
  • Demonstrate a good grasp of multiple operating systems
  • Demonstrate a good grasp of scripting techniques
  • Demonstrate expertise in one database & good grasp of multiple data storage paradigms and when to apply other technologies
  • Understand and can automate PaaS technologies
  • Understand when to apply appropriate infrastructure technologies
  • Security
  • Write secure code by default
  • Use tools to perform deep security probes
  • Understand server hardening
Back to top