The following content displays a map of the jobs location - London
Senior Software Engineer (Video Streaming)
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
We have an exciting opportunity for a Senior Software Engineer to join our Data Science Engineering team where you will work with our Computer Vision teams to productionise Computer Vision based solutions, supporting one of Tesco’s most important strategic technology areas. Our Data Science Engineers work alongside other engineers, data scientists, product managers, systems engineers, and analytics professionals to help deliver valuable and innovative outcomes for our customers.
As an experienced software engineer you will be a significant contributor to the software architecture that supports our Computer Vision (CV) platform. The CV platform has many components including the CV models & algorithms, GStreamer video pipeline, production code architecture, backend integration, deployment, data gathering, Azure infrastructure, edge infrastructure and test environments. We integrate CV models and algorithms from Data Scientist (DS) into a production codebase which uses GStreamer to connect to CCTV cameras. We are using the Python Gstreamer API to make the code accessible to DS who mainly work in Python.
You will be responsible for
At this level you will be playing an active role in technical leadership, with proven impact across teams and the wider directorate. You will take ownership and accountability for the development of the products in your domain. You will participate in activities that build capability across the organisation: coaching and mentoring of existing colleagues, and interviewing/hiring of new colleagues.
Responsibilities will include:
- Working with product teams to communicate and translate needs into technical requirements.
- Contributing to the software architecture for the production CV code base e.g. how to manage a code architecture for extension to new algorithms and functionality (e.g. strategy, interface patterns).
- Delivering high quality code and solutions. Helping guide teams inc Data Science in respects to code quality and good software practices.
- Supporting production systems, resolving incidents, and performing root cause analysis.
- Continually look for how we can evolve and improve our technology, processes and practices.
- Sharing knowledge with the wider engineering community.
- Mentoring and developing others around you, leading a team of engineers.
- Applying SDLC practices to create and release robust software
You will need
- Ability to build scalable and resilient systems
- Previously led technical teams whilst collaborating with and influencing technical and non-technical stakeholders
- Designed solutions that integrate Data Science products into client applications.
- Built solutions that run in the cloud, on-prem or at-edge.
- Previously been involved in the full development life cycle; design, coding, test, build, QA, deployment and maintenance.
- Participated in incident, problem and service improvement process and has ability to assess incidents prioritising resolutions or escalations within SLAs.
- Worked in agile environments. You must be a team player with the ability to influence and lead stakeholders.
Key Skills and Technologies:
- Ability to work with multiple software development methodologies including Scrum & Kanban.
- Have a customer focused mindset with the right balance between outcome delivery and technical excellence.
- Excellent written and verbal communication skills.
- Ability to work with other teams for any dependencies or integrations.
- Experience with Linux, building solutions that run in the cloud, on-prem or at-edge
- Enterprise integration patterns, microservice architectures and event sourcing.
- Video streaming and working with CCTV
- Software architecture patterns
- Good practices in software engineering and managing software repositories
- Understanding compute and network requirements
Nice to have (some of):
- Computer Vision / Image Processing
- Understanding of Systems Engineering including error rates, latencies and computational budget
- Approaches for optimisation, at a system level as well algorithm implementation (code profiling, Gst-Shark, code optimisation)
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.