BBC audiences expect the best content to be available to them in a single place, personalised to their preferences and interests. At the moment this is difficult for us to achieve since our content and audience data is distributed across systems that are hard to connect. We’re also missing metadata about lots of our programmes, which makes them difficult to discover. We’re currently unable to properly engage the next generation of TV license fee payers, many of whom already have less affinity with the BBC than the rest of the UK population.
Datalab was formed to address these issues, by creating a simpler way to discover content. We are doing this by bringing all of our data together into one place, and by using machine learning to enrich it. As we do this, we become able to match our programming with individuals’ interests and context. Our approach is to build a data platform that can be extended by other BBC teams, and which allows many different products to create consistent and relevant experiences for audiences.
In December 2018 we launched the first completely algorithmically driven (but editorially supervised) product in the BBC. While this is an experimental platform with an audience experience that will continue to evolve, it provides an insight into the broader capability we are building.
Our team objectives are:
- Make it easy for BBC teams to rapidly develop and deploy Machine Learning engines
- Provide great recommendations across multiple BBC products
We are aiming high and have an open brief to define what works best for our audience. We want to stay lean and move quickly to build, test and learn as we go so your contribution will make a difference from day one. We want everyone to feel responsible for our collective success.
You will help us create a data and machine learning environment that can scale to millions of users. You will help integrate new data sources and ensure that the code we write is robust and scalable. You have a keen interest in machine learning (but not necessarily previous experience). You are excited and knowledgeable about a tech stack that includes Google Cloud Platform, Python and Kubernetes with a commitment to micro-services and infrastructure as code.
You’ll engage with engineers working on other BBC apps and services, tapping into the wealth of knowledge and experience of an organisation already serving a vast global audience. Learning is an important part of the role, and you’ll have access to BBC Academy training programmes, along with the opportunity to attend technology conferences and use other resources to progress.
Are you the right candidate?
We would expect you to have experience as in establishing data applications into production (ideally in a cloud environment) for millions of users, and also in coaching and managing more junior team members.
You will demonstrate having wide exposure to different data storage systems and/or machine learning algorithms. Experience with model management / algorithmic lifecycle management and involvement in the data engineering community would be strong positives.
We are looking for the following skill sets:
- Passion for development
- Demonstrable experience of writing Python and using associate frameworks
- Experience developing APIs (if possible with async experience)
- Test-driven development approach, the experience of writing unit and functional tests
- Writing production-ready code
- Experience of AWS or GCP would be beneficial
- Extreme Programming
- Data streaming systems
- Document source-to-target mapping
- Build data streaming systems
- Write ETL scripts
- Make sure ETL performs optimally
- Build accessible data for analysis
- Implement machine learning & deploy similarity metrics (such as nearest neighbours) at scale
- An understanding of how software design relates to overall system architecture
Contract type: Full Time, Open to flexible working
We’re happy to discuss flexible working. Please indicate your choice under the flexible working question in the application. There is no obligation to raise this at the application stage but if you wish to do so, you are welcome to. Flexible working will be part of the discussion at offer stage.
- Excellent career progression – the BBC offers great opportunities for employees to seek new challenges and work in different areas of the organisation.
- Unrivalled training and development opportunities – our in-house Academy hosts a wide range of internal and external courses and certification.
- Benefits- We offer a competitive salary package, a flexible working week for work-life balance and 26 days holiday with the option to buy an extra 5 days, a defined pension scheme and discounted dental, health care, gym and much more.
About the BBC
We don’t focus simply on what we do – we also care how we do it. Our values and the way we behave are important to us. Please make sure you’ve read about our values and behaviours in the document attached below.
Diversity matters at the BBC. We have a working environment where we value and respect every individual's unique contribution, enabling all of our employees to thrive and achieve their full potential.
We want to attract the broadest range of talented people to be part of the BBC – whether that’s to contribute to our programming or our wide range of non-production roles. The more diverse our workforce, the better able we are to respond to and reflect our audiences in all their diversity.
We are committed to equality of opportunity and welcome applications from individuals, regardless of age, gender, ethnicity, disability, sexuality, social background, religion and/or belief. We will consider flexible working requests for all roles, unless operational requirements prevent otherwise.
To find out more about Diversity and Inclusion at the BBC, please click here