Senior Software Engineer – Content Discovery
The BBC produces thousands of pieces of digital content each day, and has millions of readers. As part of Content Discovery you will connect people with content they are interested in, and develop systems that underpin BBC presence in the digital space. Our team provides navigation and search systems used by products across the BBC, delivers the BBC homepage, and works with editorial teams to provide the most appropriate content to our audiences.
The Content Discovery team provides systems visible across the BBC website, that need to cope with all the traffic that implies, and be 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 increased personalisation and recommendation on the BBC homepages, improve onward journeys on content pages through the development of knowledge systems, and to 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.
How we work
In Content Discovery we build our products following Continuous Delivery practices on AWS with a strong focus on Node.JS. Builds run with fully automated build pipelines - using Jenkins - deploying to live multiple times a day.
We follow agile development methodologies and practice Test Driven Development, Behaviour Driven Development, paired programming and peer reviews.
We work in multidisciplinary teams, with developers working closely with test, UX, product and project managers to ensure that the products we are producing meet our audiences requirements.
We excel at collaboration and often work closely with other teams across the BBC organisation - and external companies - to push our capabilities further.
As a Senior Software Engineer you will be expected to take a lead in the design and implementation of software applications, and ensure on-time delivery of robust, industry leading solutions.
You’ll understand working in a DevOps model, and be able to help in providing incident analysis and resolution to any issues.
You’ll have a strong background in software development and in-depth knowledge of design principles and patterns, with a strong focus on web technologies and engineering excellence.
You’ll have some experience of mentoring junior team members and be committed to helping with their development.
You’ll have a passion for learning new technologies, and be able to evaluate them and apply them to a variety of projects.
You’ll have a positive attitude and a willingness to learn. You’ll promote your skills, share your knowledge, and contribute to the evolution of best practices throughout the department and the BBC.
Are you the right candidate?
The ideal candidate for this role will have:
- A strong knowledge of software architecture principles and development best practices (for example RESTful API design, distributed design, Service Oriented Architecture, microservices)
- Familiarity with core Internet technologies and protocols (HTTP, TLS, DNS)
- Excellent development skills and experience building highly scalable, full stack applications (ideally in Node.js)
- Proven experience of writing unit and integration tests, and test driven development
- Expertise with one or more mainstream development and deployment tool chains (IDE, SCCS, CI)
- Experience of Agile working environments, pairing and working within a collaborative team
- Experience with performance optimization tools
- Competence in translating product requirements into technical solutions
- 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 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 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.