At a Glance
- Tasks: Build and maintain software for Bloomberg's global data distribution infrastructure.
- Company: Join a leading financial tech company with a focus on innovation.
- Benefits: Competitive salary, health benefits, and opportunities for professional growth.
- Other info: Collaborative environment with global teams and excellent career advancement potential.
- Why this job: Tackle real-world challenges in distributed systems and make a significant impact.
- Qualifications: Experience in object-oriented programming and a passion for reliability engineering.
The predicted salary is between 70000 - 90000 ÂŁ per year.
Location: London
Business Area: Engineering and CTO
Ref #: 10049067
Description & Requirements
Our department is responsible for efficiently distributing financial data from its source to interested users all around the world. This includes stock prices or foreign exchange rates. Data can either be served in response to a request or streamed in real time. The group owns:
- The distribution software and infrastructure
- A range of different sources of data
- Supporting services to administer and manage the system, including permissioning and metering
The team is also responsible for the Enterprise endpoint (“B-PIPE”), which allows end-users to programmatically consume data via our SDK. Data is also available through the Bloomberg Terminal and Microsoft Excel.
The main challenge faced by the group is one of scale. Data is sourced from more than 370 global exchanges, with a combined volume in excess of 60 billion messages each day. We deliver this data to hundreds of thousands of terminals and thousands of B-PIPEs. Handling this volume requires significant infrastructure; we manage multiple clusters in our main data centres, as well as a network of many thousands of servers around the world.
Group Overview
The RD Reliability Engineering group comprises three sub-teams located in Tokyo, London, and New York, providing follow-the-sun support. Our mission is to ensure systems are reliable, scalable, and observable through software engineering, while continuously improving how systems behave under load and failure conditions. We work in an outcome-driven model, focusing on measurable improvements in availability, latency, capacity, and recovery. Our goal is to ensure systems meet defined service level objectives while minimising manual operational effort through automation and software solutions. The systems we support must behave predictably under extreme load, recover quickly from failures, and continue to evolve without compromising stability - these are the core challenges we solve.
London Team Focus – Availability & Resiliency
The London team plays a key role in ensuring the availability and resiliency of RD infrastructure globally. We focus on:
- Detecting and preventing failures across large-scale distributed systems
- Ensuring infrastructure demonstrates sufficient capacity and failover capability during site-loss scenarios
- Reducing time to detect, diagnose, and recover from incidents
- Ensuring systems behave predictably under both normal and adverse conditions
What You’ll Do
- Build and maintain production-grade software supporting Bloomberg’s global distribution infrastructure
- Design and implement scalable, fault-tolerant systems with a focus on observability, performance, and automation
- Analyse system behaviour under real-world and failure scenarios to validate capacity, failover, and recovery meet resilience objectives
- Identify bottlenecks, scaling limits, and reliability risks across distributed systems
- Improve detection, diagnosis, and prevention of production issues
- Build tools and frameworks to increase system visibility and reduce time to detect and resolve incidents
- Automate operational workflows to reduce manual effort and improve system reliability
- Partner with application and infrastructure teams to improve system design, resilience, and performance
- Contribute to design discussions, incident reviews, and reliability improvements across the platform
Systems You’ll Work With
- Configuration systems serving thousands of servers across the global network
- Service discovery and clustering systems for distributed infrastructure
- Monitoring and observability frameworks for large-scale server estates
- Tooling for diagnosing data quality and distribution issues
Ownership of systems may evolve over time as the team focuses on areas of highest impact.
What Success Looks Like
- Systems consistently meet defined reliability, latency, and capacity objectives
- Issues are detected and mitigated before significant customer impact
- Systems are demonstrably resilient, with proven failover capability and sufficient capacity under failure conditions
- Operational processes are automated and scalable
- Reliability is achieved through engineering improvements rather than manual intervention
What We’re Looking For
We’re not a traditional SRE team. We engineer reliability through software, building solutions that automate operations and improve system resilience by design.
- Experience with an object‑oriented programming language (preferably Python or C++)
- Strong focus on building reliable, observable distributed systems
- Experience working with SLOs, SLIs, and production reliability metrics
- Proven ability to triage and resolve live production problems
- A mindset focused on automation and reducing operational toil
- A strength in collaborating within an inclusive team environment
- The ability to work across departments and build strong relationships with both technical and non‑technical partners
Why Join Us
You’ll work on systems that sit at the core of Bloomberg’s real‑time data platform, operating at global scale and under demanding performance and reliability requirements. This is an opportunity to:
- Solve complex distributed systems problems with real‑world impact
- Influence how reliability is engineered across a critical platform
- Work with teams across multiple regions and technical domains
- Build systems that are resilient by design and operate at massive scale
Senior Software Engineer / Reliability Engineering - Real-time Data employer: Bloomberg
Contact Detail:
Bloomberg Recruiting Team
StudySmarter Expert Advice 🤫
We think this is how you could land Senior Software Engineer / Reliability Engineering - Real-time Data
✨Tip Number 1
Network, network, network! Get out there and connect with people in the industry. Attend meetups, tech talks, or even online webinars. You never know who might have a lead on that perfect Senior Software Engineer role!
✨Tip Number 2
Show off your skills! Create a portfolio or GitHub repository showcasing your projects, especially those related to distributed systems or reliability engineering. This gives potential employers a taste of what you can do beyond just your CV.
✨Tip Number 3
Prepare for technical interviews by practicing coding challenges and system design problems. Use platforms like LeetCode or HackerRank to sharpen your skills. Remember, they want to see how you think and solve problems under pressure!
✨Tip Number 4
Don’t forget to apply through our website! It’s the best way to ensure your application gets seen by the right people. Plus, it shows you’re genuinely interested in joining our team at Bloomberg.
We think you need these skills to ace Senior Software Engineer / Reliability Engineering - Real-time Data
Some tips for your application 🫡
Tailor Your CV: Make sure your CV reflects the skills and experiences that align with the Senior Software Engineer role. Highlight your experience with distributed systems, reliability engineering, and any relevant programming languages like Python or C++.
Craft a Compelling Cover Letter: Use your cover letter to tell us why you're passionate about building reliable systems. Share specific examples of how you've tackled challenges in previous roles, especially those related to automation and system resilience.
Showcase Your Problem-Solving Skills: In your application, emphasise your ability to triage and resolve live production issues. We love candidates who can demonstrate their analytical thinking and how they've improved system performance in past projects.
Apply Through Our Website: We encourage you to apply directly through our website. It’s the best way for us to receive your application and ensures you’re considered for the role. Plus, it shows you’re keen on joining our team!
How to prepare for a job interview at Bloomberg
✨Know Your Systems
Familiarise yourself with distributed systems and how they operate under load. Be ready to discuss your experience with scalability, reliability, and observability in your previous projects. This will show that you understand the core challenges the team faces.
✨Demonstrate Your Coding Skills
Brush up on your object-oriented programming skills, especially in Python or C++. Be prepared to solve coding problems during the interview. Practising common algorithms and data structures can help you showcase your technical prowess effectively.
✨Understand SLOs and SLIs
Make sure you have a solid grasp of Service Level Objectives (SLOs) and Service Level Indicators (SLIs). Be ready to discuss how you've used these metrics in past roles to improve system reliability and performance. This knowledge is crucial for the role.
✨Show Your Collaborative Spirit
Highlight your ability to work within an inclusive team environment. Share examples of how you've collaborated with both technical and non-technical partners to achieve project goals. This will demonstrate that you can build strong relationships across departments.