Software Engineer - Market Data Platform, Ticker Plant Runtime Services

Bloomberg
Charing Cross, United Kingdom
2 days ago

Role details

Contract type
Permanent contract
Employment type
Full-time (> 32 hours)
Working hours
Regular working hours
Languages
English
Experience level
Senior

Job location

Charing Cross, United Kingdom

Tech stack

Java
Linux
Distributed Systems
Fault Tolerance
Information Technology

Job description

Job Description Be an integral part of a technology team that's constantly pushing the envelope to enhance, build, and deliver top-notch technology products. As a Lead KDB Developer at JPMorgan Chase within Equities Trading you will play a pivotal role in building our...

Requirements

Experience with an object-oriented programming language (C/C++, Python, Java, etc.)

A Degree in Computer Science, Engineering, Mathematics, similar field of study or equivalent work experience

Prior contributions to system design and architecture and scaling fault-tolerant, distributed systems

Honest approach to problem-solving, and ability to collaborate with peers, partners and management

Why this role matters:The market data infrastructure you'll help build and improve is mission-critical for the global financial industry. Your work will directly impact, We primarily use C++ and Python, but an ability to present working solutions in any high-level programming language is sufficient to get started. We want to be clear here - this is a development position.

In-depth knowledge of Linux/Unix

Experience with blameless postmortems

A passion for performance excellence, robustness and engineering mindset

About the company

Description & RequirementsThe Ticker Plant team is building one of the world's most sophisticated real-time market data systems, processing hundreds of billions of financial events daily across millions of instruments. Our platform is the backbone of Bloomberg's market data platform, serving as the source of truth for global financial markets. Who are we?The SRE team is central to Ticker Plant's success and are at the intersection of systems engineering and financial technology. We are engineers whose expertise centers on the emergent properties of a massively distributed, large-scale, real-time market data system. Our mission aligns with our customers' expectations, and we focus on the characteristics of the system they care about, namely: Correctness - the data a customer sees should accurately reflect the marketplace Performance - real-time latencies should be minimised; requests should be served without delay Availability - System components will fail; in a sufficiently large system, parts of it fail all the time. But the system as a whole should not fail. Deployments and upgrades should not affect availability. We'll trust you to: Code - to read code, to debug code, and to write production-quality code. We provide software that defines the environment in which the component software runs. We build dashboards that are used to analyse current load and latency and plan for the impact of anticipated changes, but we also build the toolkits that allow for the software to be instrumented in the first place. Our platform technology provides self-service for many routine operations, and supports our Incident Response responsibilities. Design - We write code that integrates with components across the entire system. Often this work is done in collaboration with component teams. Our work with the component owners involves assessing workflows and designing appropriate interfaces that provide consistent access to the necessary functionality, and then building the applications that can perform many workflows via self-service or even automatically. Also, as components and product features move to production, we ensure that the features that are being introduced are supportable in production, without increasing operational load. Sometimes, this means advising the component team of existing solutions; in other cases, it means recognising gaps and filling those accordingly. This results in improving the designs of our features and our system. Analyse - Our key concern is the behaviour of the system. Often, we are asked to consider the impact of required or desired changes to the system before those changes make it to production. At other times, the system is simply not behaving as we expect, with no immediate obvious cause. We are the ones who are often asked to figure out what is going on.

Apply for this position