Vacancy Search

Search Jobs  

Software Engineers (all levels) – Content Discovery

Job Introduction

The BBC produces thousands of articles each day, and has millions of readers. As part of Content Discovery you will connect people with articles they are interested in, and develop systems that underpin BBC efforts on the web. Our team provides navigation and search systems used by products across the BBC, supplies the BBC homepage, and works with editorial teams to provide the most appropriate content to our audience.

As a member of our team you will face challenges not experienced by other BBC products. Our systems are visible across the BBC website, and need to cope with all the traffic that implies while being flexible enough to meet the needs of different product areas. The performance and reliability of our systems directly impacts on audience perceptions across the BBC’s portfolio, and we develop solutions with that in mind.

The team is undergoing a period of growth, with aspirations to provide a new version the BBC homepage, increase levels of personalisation in recommended content through machine learning, and redevelop our search user experience as we migrate it to the AWS (Amazon Web Services) cloud. As part of our team you will be able to influence the technologies, architectures and organisational approaches used to meet and overcome these challenges.

Role Responsibility

Operating under Agile principles you’ll be working with a mix of disciplines, developing highly available and scalable solutions to product requirements. You’ll be collaborating with stakeholders from across the organisation to deliver the best user experience.

Within the team you will develop collaboratively, pairing on work or taking part in peer reviews, and helping mentor and develop more junior staff. You’ll take part in whiteboard design sessions as needed, and be able to recommend technologies and approaches used to solve problems. There will be opportunities to take part in recruitment events, and to share your knowledge and ideas with colleagues. You’ll be working under a DevOps model, providing incident analysis and resolution.

Through your behaviours, attitudes, and approaches you will influence the team culture, and help the team support the business and deliver the best possible experience for the end user. Your willingness to learn and collaborate with colleagues, and your focus on engineering excellence, will help drive the success of the team and the organisation.

The Ideal Candidate

The team operate in a full-stack development fashion, so experience working on both front-end or back-end systems is applicable, particularly around working with Node.js, and front-end JavaScript (e.g. using libraries like React, Angular, etc.) and other web technologies (e.g. HTML, CSS, SASS).

We make use of a variety of tools to build, deploy and administer our systems. It would be beneficial to have experience with scripting languages (e.g. Python, Bash), CI (e.g. Jenkins), build tools (e.g. Gulp, Grunt, Make), and other supporting technologies (e.g. Docker, NGINX, Linux).

Testing is a key part of our development approach, and experience with TDD and BDD approaches, and it advantageous to have worked with testing tools such as Jasmine, Mocha, Cucumber, Nightwatch.js and Gatling

We build and maintain RESTful APIs, for consumption by other teams and as part of products used by our audience. The ideal candidate will have designed, implemented and used RESTful services.

Our products are supported by the team in a DevOps manner, and we are responsible for monitoring, alerting, and resolving issues across our estate. Experience dealing with operational concerns, and a willingness to support the team’s estate through in-hours and out-of-hours support, is desirable.

New systems are developed on AWS, and the ideal candidate will have familiarity with cloud-based development.

Candidates should be familiar with using version control systems, such as Subversion and Git.

Package Description

Grade 6-8 (Proposed Band C-D)

  • Excellent career progression – the BBC offers great opportunities for ambitious software engineers to seek new challenges and work on many different and varied products.
  • Unrivalled training and development opportunities – our in-house Academy hosts a wide range of internal and external courses and certification.
  • A vibrant digital community – we have a strong focus on continuous improvement and engineering excellence. We host regular talks from internal and external speakers, and provide generous opportunities to attend industry events and conferences.
  • Benefits - We offer a competitive salary package, a flexible 35-hour 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 Company

We don’t focus simply on what we do – we also care how we do it. Our values and the way we behave are very important to us. Please make sure you’ve read about our values and behaviours in the document attached below. You’ll be asked questions relating to them as part of your application for this role.

The BBC is committed to building a culturally diverse workforce and therefore strongly encourages applications from underrepresented groups.  We are committed to equality of opportunity and welcome applications from individuals, regardless of their background.

The BBC is currently implementing a Career Path Framework align job titles and job descriptions. Consequently, successful applicants may be realigned to a slightly different job title shortly after joining the BBC.  This re-alignment will not affect the terms and conditions of the appointment.


This website is using cookies to improve your browsing experience. If you navigate to another page without changing the settings below you consent to this. Read more about cookies.