Software Development Engineer II
||City of London
About the Tesco Technology Search and Recs team
Within the Search and Recommendations team, we build the APIs that power Tescos search capabilities and recommendation capabilities across all our online offerings. As search, in particular, is a key component of a successful e-commerce journey, we are required to fulfil millions of non-trivial requests with very low latency. The nature of our products, both the Search platform and the recommendation engine, lends itself to machine learning and applied statistics, and it is safe to say we are blessed with a rich, interesting problem space to work in.
Our systems consists of a set of modern event-driven and Restful services utilising a wide range of technologies including:
* · Java, Vert.X, RxJava, NodeJS, Python
* · Amazon Web Services, Kubernetes, Docker, Jenkins, Git, Linux
* · ElasticSearch, Couchbase, Apache Camel
We take responsibility for the software through its entire lifecycle. We practice continuous integration and delivery and support our code through to production and beyond.
We offer excellent benefits that help make Tesco a great place to work. These include but aren't limited to:
* An annual bonus scheme which you can achieve up to 3.5% of base salary
* Colleague Clubcard (including a 2nd card for a family member) after 6 months service with 10% off most purchases at Tesco
* Holiday starting at 25 days plus a personal day
* A retirement savings plan - 4%-7.5% contribution rate
* Life Assurance - 5 x contractual pay
* Buy As You Earn Scheme
* Save As You Earn Scheme
* Deals & Discounts through Tesco including Tesco Mobile & Tesco Bank
* Deals and Discounts through many other external businesses
The role involves the following activities:
* leading engineers to write high quality code that's easy to understand and work with
* Pair programming to write high quality code that's easy to understand and work with
* Writing tests - very often before the associated code - at unit level with Junit, Mockito and in BDD style with Ruby/Cucumber
* Reviewing pull requests and giving good feedback
* Attending backlog refinement and planning sessions to discuss and estimate (small, medium, large) upcoming stories
* Taking part in understanding requirements and designing GMO platform features and their implementations
* Supporting the service, both during office hours and out of hours via paid support rota
* Championing Devops
* Implementing monitoring and alerting mechanisms via AppD, Splunk, Runscope and other tools
* Building for security and user data privacy
* Being involved with attracting and interviewing further excellent engineers for Tesco.
Experience relevant for this job:
* 5+ years of experience as a Java backend developer
* Experience with Ecommerce and search systems would be a nice to have, but not necessary.
* Experience with Java 8 is a must
* Experience with reactive programming is considered a plus.
Skills relevant for the job
* Written and verbal communication skills.
* Problem solving, analysis and computational skills.
* Customer focus.
* Innovative approach to problem solving.