Senior Software Engineer
Role details
Job location
Tech stack
Job description
Join the BBC team responsible for the routing and resiliency layer serving most of our global Web and Apps products. As a Senior Software Engineer, you will play a key role in developing and operating a high-performance cluster of Elixir applications. Your work will directly impact millions of users worldwide, ensuring our key services are fast, reliable, and always available., You'd join a collaborative team of expert Elixir engineers dedicated to performance and resilience. You will work on highly impactful solutions, leveraging OTP to serve millions of users globally. We foster a culture of technical excellence and continuous learning, offering the opportunity to solve complex challenges at a massive scale., * Develop and maintain robust, scalable software in Elixir.
- Troubleshoot, debug, and resolve issues throughout the product life cycle.
- Implement and manage comprehensive monitoring, logging, and alerting for our services.
- Provision and manage cloud infrastructure using AWS services.
- Contribute to code reviews and foster a culture of high-quality engineering.
Requirements
Do you have experience in Test automation?, * Extensive experience writing and maintaining robust production software in a fast-changing environment with rapid release cycles.
- Professional experience with functional programming languages (e.g., Elixir, Erlang, Scala, Clojure, Haskell, F#) or modern statically typed languages (e.g., Rust, Go) developing web applications, backend services, APIs, or distributed systems.
- Strong expertise in designing systems for observability, including effective monitoring, detailed logging, comprehensive performance testing strategies, and hands-on experience with modern observability tools such as Grafana, Prometheus, or CloudWatch to implement and manage monitoring solutions.
- Hands-on experience with AWS, or other cloud providers such as GCP or Azure, to architect scalable and resilient infrastructure.
- Extensive experience with automated testing frameworks and CI/CD pipelines to ensure software quality and delivery efficiency.
DESIRED :
- In-depth knowledge of Linux systems and performance tuning.
- Experience with Infrastructure as Code (Terraform, CloudFormation).
- Experience working effectively in multi-team environments, with strong communication and collaboration skills to support engagement with teams and engineers.
- Familiarity with technical writing.
If you can bring some of these skills and experience, along with transferable strengths, we'd love to hear from you and encourage you to apply.
Before your start date, you may need to disclose any unspent convictions or police charges, in line with our Contracts of Employment policy. This allows us to discuss any support you may need and assess any risks. Failure to disclose may result in the withdrawal of your offer.