Senior Software Engineer - API Services
Help design, build and operate the BBC's own Content Distribution Network (BIDI) that powers iPlayer. Expand BIDI's cloud based traffic orchestration system and drive the next levels of raw performance out of custom bare-metal hardware caches.
The OTG Media Distribution team works towards the high quality, cost effective distribution of audio and video over the Internet. This is essential for the continuing success of products from iPlayer to BBC News and Sport, and a key goal for the BBC's technology strategy.
We're looking for experienced software engineers to help us design and develop the BBC's CDN (Content Delivery Network), BIDI. BIDI incorporates both high performance caching web servers and the software services responsible for orchestrating those servers.
Join a motivated group of software engineers with a supportive engineering culture. We embrace open source technologies and are passionate about performance and reliability.
- Lead the design and development of effective software that meets complex product and business needs
- Review and give constructive feedback on others’ code
- Drive work to successful completion across the immediate team
- Write appropriate tests using automated test driven techniques for ensuring code quality and coverage
- Integrate the software with monitoring and support tools
- Ensure the teams software works in its operating environment
- Write, review and take responsibility for technical documentation
- Lead troubleshooting and resolution of issues throughout the product life cycle, including out of hours support for incident resolution
- Participate in and lead as required, the team's agile planning and delivery process
- Effectively participate in and help improve the teams software development methodologies, such as pairing, code and documentation reviewing and continuous delivery
- Work with project, product and technical leads to design software and create implementable specifications and tasks at feature and component level
- Work with 3rd Party ("Indies") where necessary offering direction, support and documentation
- Mentor and coach more junior staff. Provide technical leadership and direction to peers and colleagues. Line Management of 1-2 software engineers (if appropriate)
- Learn new technologies and keep abreast of existing technologies and help introduce them where appropriate
The Ideal Candidate
- Industry experience architecting and developing high throughput or high concurrency Internet facing applications from inception to production.
- Industry experience writing software in Python and Java, with expertise in at least one of them and competence in the other.
- Experience designing and developing RESTful API services, following industry best practices.
- Experience designing and developing databases and in-depth knowledge of SQL.
- Excellent communication skills and a collaborative attitude.
The ideal candidate will also have at least 2 of the following:
- Demonstrable experience tuning Internet applications on Linux to improve concurrency and throughput.
- Experience with deployment and optimization of SSL/TLS in production.
- Experience of using memory analysis and profiling tools to tune the performance of Python and Java applications in production.
- Experience with large scale load testing practices and tools (e.g. stress testing an HTTP software service with thousands of requests per second for several hours and capturing a detailed set of metrics).
- Knowledge of commercial CDN architecture and configuration.
- Experience transitioning to dual stack IPv4/IPv6.
Permanent Full Time
Location: Broadcast Centre, London, W12
Grade: 8 (proposed band D)
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 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 which will result in employees being aligned to generic 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.