Senior Software Engineer/SRE (C++) - Trading Systems Infrastructure

Bloomberg LP

Manhattan, NY (United States)

Category: Programming

Posted on: 07 Apr 2021

c++ python networking shell unix

Who are we?


Bloomberg Trading Solutions (TS) provides hosted Buy-side (AIM) and Sell-side (TOMS [1]) Order Management System (OMS) to some of the largest institutional broker-dealers, asset managers, asset owners, and hedge funds in the world. Each OMS instance is composed of services and databases that are developed, owned, and handled by hundreds of TS engineers across the world. Our clients value our offering of hosted OMS that allows them to reduce their total cost of ownership while benefiting from continuous upgrades in both software and hardware.


TS OMS Infrastructure SRE team defines what our core principles of client isolation, client fairness, fault isolation, high availability through fast failover and telemetry mean for the OMS. We implement these principles through technology. To achieve these principles, we are entrusted with defining what constitutes an instance of an OMS (i.e a client), over its entire lifecycle, including the constituent applications, middleware, and storage technologies.
We provide
1. An orchestration layer to run 1000s of processes across 100s of servers, for the 1000s of OMS instances, with automatic failover!
2. Service discovery APIs to get to the right OMS instance
3. Feature flag tools to control paid and optional subsystems for each client
4. Handle the full lifecycle of the OMS instances (provisioning, load balancing, moving between isolation zones, and eventual decommissioning)


Who are you?


A software engineer with experience working on distributed systems, with an aptitude for analytical and creative problem-solving. You can dive into the details of sophisticated issues quickly, and you’re excited to harness the power of automation to handle the stability, availability, and scale of our TS platform. You’re passionate about the work an SRE does [1], you don’t shy away from a challenge, and are excited by the opportunity to both learn and drive the SRE culture across our product and company. You have a growth mentality and keep up-to-date with what is happening in the industry.


We'll trust you to:



    develop and deliver quality software that underpins our OMS product
    cover all aspects of software development: requirement analysis, design, implementation and testing, documentation, staged deployment, and maintenance.
    play a vital role in evolving our OMS hosting infrastructure to Linux and beyond, by driving the adoption of new technologies into the OMS at scale (Kafka is our latest addition) while still maintaining our first principles noted above.
    have a keen eye to identify and automate manual, repeatable processes to make them reliable, provide better customer service, and to reduce toil on our team
    be a great teammate who values open, honest communication
    work with business partners and other software engineers to evaluate new OMS service designs and ensure our core hosting principles are adhered to.

You’ll need to have:



    Understanding of Unix/Linux operating systems, shell scripting.
    Deep curiosity on how individual systems work under the hood and how they compose to form a distributed system.
    Ability to evaluate system designs for performance, reliability, and scalability.
    2+ years (or equivalent) experience:
    writing modern , well-tested and robust C++ or any Object Oriented Programming language (we have training available to switch from other OOP to C++)
    with a scripting language (preferably Python)
    with object-oriented design, data structures, algorithms, and all phases of the SDLC
    Some experience working with relational databases and familiarity with SQL
    The ability to tackle sophisticated problems independently and in partnership with others in a team setting
    No previous knowledge of finance needed

We'd love to see:



    Knowledge of Javascript/Typescript
    An understanding and love for SRE principles [2]
    Deep understanding of metrics and monitoring ecosystem i.e. grafana, humio, distributed trace
    Experience defining and measuring SLIs and SLOs
    Experience with containers and cluster schedulers such as Apache Mesos, Nomad
    Experience with Agile methodologies like Scrum and Kanban, using JIRA

Other Resources:


[1] Best Sell-Side Order Management System (OMS) Provider :
https://www.bloomberg.com/company/press/bloomberg-wins-two-waters-rankings-awards-for-second-year-in-a-row/
[2] Learn how Bloomberg bets big on our SREs:
https://www.techatbloomberg.com/blog/bloomberg-bets-big-on-sres/
External Conference presentations by our team members:
[3] https://www.usenix.org/conference/lisa19/presentation/chen
[4] https://www.usenix.org/conference/srecon19americas/presentation/chen


We are an equal opportunity employer and value diversity at our company. We do not discriminate on the basis of race, religion, color, national origin, gender, sexual orientation, age, marital status, veteran status, or disability status.


Want more jobs like this?

Apply Now

By clicking "Apply Now" or "Subscribe and Apply" you will be redirected to an external website. By clicking "Subscribe & Apply" you give TechieJobs consent to process and store your data, and send you emails to the provided email address.

Job Source: Stackoverflow (Will expire by: 2021-05-22 00:00:00)

Apply Now

New

Techies Talent Network

Upload your resumes and connect with IT recruiters, setup personalized job alerts and receive professional tips to achieve your career goals, and even more. Join today!

Join talent network
Quick poll
In your opinion which programming language has a brighter future?
  • GoLang
  • Java
  • Python
  • Scala
  • Ruby
  • PHP
  • JavaScript
  • C++
  • Other

* This poll is anonymous.