Frontend Software Engineer
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
As a Frontend / Web Software Engineer you’ll be working in an agile team of industry leading engineers upon developing Tesco’s next generation of instore customer facing applications running on the tills of today and the future. Working with Product Managers, you will be responsible for the future direction of the products that we build, solving problems and developing new features through quality, scalable, performant and maintainable technical solutions. The solutions that you will be responsible for will have a global reach, impacting millions of customers.
You’ll be a passionate, pragmatic Frontend / Web Software Engineer with an inquisitive mind who is motivated to make change for the better and most importantly put our customer first. You’ll enjoy working as part of a team and be a keen problem solver. Comfortable with modern engineering practices and frontend development tooling and technologies you’ll use innovation to improve the customer experience and efficiency of engineering teams.
Some of the tech we are using at scale: ES6, React, Redux, Node, graphql, Styled-components Webpack, Cypress, Docker, Azure devops
You will be responsible for
Including, but not limited to:
- Profile and optimise code
- Produce test driven features in a specific programming language and demonstrate familiarity with the TDD cycle
- Apply understanding of cohesion and the SOLID principles to create well structured, maintainable software
- Identify patterns in code and refactor the code towards them where it increases understanding and/or maintainability with minimal guidance
- Translate requirements into tasks & code
- Develop high quality code that can lead to rapid delivery, ruthlessly pursuing continuous integration and delivery - CICD
- Commit code early and often, demonstrating understanding of version control & branching strategies
- Automate everything by default
- Write secure code by default
- Write maintainable code and observe basic hygiene practices
- Implement relevant project instrumentation
- Follow the best practices of continuous BDD/TDD/Performance/Security/Smoke testing
- Work effectively with product stakeholders to communicate and translate needs into product improvements
- Lead group discussions on system design and understand domain well enough to work with Product Managers to drive value
- Support production systems, resolve incidents and perform root cause analysis
- Debug/find complex problems and support/maintain the software solution
- Share knowledge with the wider engineering community
- Mentor and develop others around you
You will need
We are looking for people who have a passion for Technology. You will likely have made open source contributions and have a Github account. You will demonstrate experience of different platforms and technologies. We expect to see some or all of the following:
- Significant commercial experience as a Frontend Software Developer
- Experience of using Node.js to create high traffic applications using Express.js, Sails, Koa or similar
- Experience in bringing multiple viewport responsive and adaptive web designs to life
- Awareness and practice of UI performance best practices
- Understanding and exposure to integrating REST API endpoints
- Strong experience and understanding of industry standard web accessibility, web design & usability; to support sites cross browser/platform/device
- A desire to write readable, maintainable, modular and extendable code
- Exposure to the DevOps model
- Experience in Lean and Agile environments and understanding of principles behind methodologies such as: BDD, ATDD and TDD
Our vision at Tesco is to become every customer’s favourite way to shop, whether they are at home or out on the move. Our core purpose is “Serving our customers, communities and planet a little better every day”. Serving means more than a transactional relationship with our customers. It means acting as a responsible and sustainable business for all stakeholders, for the communities we are part of, and for the planet.
We are proud to have an inclusive culture at Tesco where everyone truly feels able to be themselves. At Tesco, we not only celebrate diversity, but recognise the value and opportunity it brings. We’re committed to creating a workplace where differences are valued, and make sure that all colleagues are given the same opportunities. We’re a big business with diverse working patterns and many business areas which means that we can find something that works for you. Everyone is welcome at Tesco.
We have recently announced that we are moving to a more blended working week – combining office and remote working. Our offices continue to be where we connect, collaborate and innovate. Talk to us about how this can work for you.
Note: Should you be successful in your application, your employment will be subject to and conditional upon you providing your bank account details on your agreed start date.