Principal Software Engineer - Online Technology Group
The Online Technology Group Long Order team owns a large number of business-critical software services and tools, deployed across our on premises and Cloud platforms, and used by product teams all across bbc.co.uk, including iPlayer, News, Sport and Weather.
These services include high-capacity web traffic management, platform-level HTTP caching, IP address geolocation look-ups, X.509 certificate management, tools for building and deploying software, web content distribution and delivery, and many other core platform-wide tools and services.
We are looking for experienced engineers to design, develop, maintain and scale these and other services, as new technologies become available and as demand for our services increases. This will involve a combination of longer-term development project work, short orders, proactive outreach, and some operational support.
The Principal Software Engineer will own and lead large-scale pieces of work, requiring close collaboration with the team and the wider BBC community. The role will involve working closely with the Software Engineering Manager to ensure that planned work is feasible and delivered work is of the highest quality.
The role would suit someone who has experience of design and engineering at a platform scale (in terms of incoming load, volume of data or number of users), developing systems that are in turn depended on by user-facing products, and who can provide definitive answers to the most challenging technical questions.
Our engineers are passionate about automation, repeatability, testing and documentation, and the definition of done and the peer review are essential parts of our workflow. We also strongly encourage collaboration and knowledge-sharing within the team, as well as contributing to the wider BBC community.
- Developing and maintaining a range of essential core web services which are used across bbc.co.uk.
- Leading the architecture and ongoing design of new and existing services.
- Promoting and employing software engineering and development best practices.
- Participating in the on-call rota for the subset of systems that the team operationally supports.
- Pairing with, coaching and mentoring other developers to share knowledge and best practices.
Are you the right candidate?
- Industry experience of architecting and developing high throughput Internet facing applications, from inception to production.
- Industry experience of writing software in Python or Java, with at least mastery in one of them and proficiency in the other.
- Experience designing and developing RESTful API services and following industry best practices.
- Experience working in Red Hat, CentOS, or similar Linux environments.
- Excellent communication skills and a collaborative and proactive attitude.
- Effective leadership and collaboration skills both inside and beyond the team
The ideal candidate will also be experienced in several of the following:
- Configuring, testing and upgrading third-party, bespoke and open source software.
- Defining, designing for, measuring, and reporting on non-functional requirements.
- Configuring and troubleshooting TLS (including PKI) using OpenSSL and other appropriate tools.
- Tuning Internet applications on Linux to improve concurrency and throughput.
- Experience of using memory analysis and profiling tools to tune the performance of applications in production.
- Configuring and troubleshooting core and custom Apache httpd and NGINX modules.
- Familiarity with technologies such as HTTP/2, TLS 1.3 or IPv6
Grade D - Permanent role - Based in White City, London
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.
A variety of technical challenges – we work across a wide range of platforms, languages and technologies; from the latest frameworks and open standards, to the newest devices and modern cloud platforms.
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, healthcare, 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. 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.