Senior Software Engineer - Alerts

Careers at Bloomberg

Back to Search

London

Posted Apr 25, 2022 - Requisition No. 102879

The Alerts system notifies clients about meaningful changes in global markets. An alert can be set on hundreds of different types of events, from a price movement to a news story being released and even power plant outages. We serve all Bloomberg’s 330 000 Terminal users, delivering over 10 million alert triggers each day.
 
Our software functions as a large-scale, distributed system composed of multiple subsystems. It was originally designed for delivering alert content directly to our clients, but after talking to different teams across Bloomberg, we’ve realised many of them need similar systems to deliver data into their own applications, as opposed to just delivering alerts directly to clients.
 
To this end, we are evolving our offering as APaaS (Alerts Platform as a Service), opening up our system and shifting from GUIs to APIs so that other teams at Bloomberg can demonstrate the power of our system programmatically to create and consume alerts. The vision is for each client team to run their own isolated, instanced version of our system so it can scale independently with their needs.
 
The team is full-stack, with UIs written in Javascript and TypeScript and backends written in C++17 and Python 3. Our various subsystems run on dedicated Linux clusters, communicating with each other using RabbitMQ and RESTful APIs. External teams feed data into our system using Kafka and various pub/sub mechanisms.
 
What’s in it for you?

  • An opportunity to open and scale a complex, large-scale system for use by any team at Bloomberg.
  • Interesting technical challenges in dealing with data intensive, low latency, highly distributed systems.
  • Working in a close knit group of teams with supportive colleagues who like to learn and share knowledge from each other.
  •  
    We will expect you to:
  • Work closely with other alerts teams to coordinate development of our shared system with the Scrum agile framework.
  • Be passionate about continuously improving our system and bringing in new technologies and tools to the team.
  • Be comfortable developing in Python and/or C++.
  •  
    We would love to see:
  • Experience working with distributed systems and telemetry.
  • Experience using JavaScript or TypeScript for UI development..
  • Experience using middleware such as RabbitMQ, Kafka, Redis or ZooKeeper.

 

Bloomberg is an equal opportunity employer and we value diversity at our company. We do not discriminate on the basis of age, ancestry, color, gender identity or expression, genetic predisposition or carrier status, marital status, national or ethnic origin, race, religion or belief, sex, sexual orientation, sexual and other reproductive health decisions, parental or caring status, physical or mental disability, pregnancy or maternity/parental leave, protected veteran status, status as a victim of domestic violence, or any other classification protected by applicable law.

Bloomberg is a disability inclusive employer. Please let us know if you require any reasonable adjustments to be made for the recruitment process. If you would prefer to discuss this confidentially, please email access2@bloomberg.net or our Diversity Partner EmployAbility info@employ-ability.org.uk

Similar jobs

    The Bloomberg Talent Network

    Stay connected with us and be among the first to learn about new job opportunities. We’ll use the information you provide to help us get in touch with you to align your expertise with our opportunities and better direct our conversations.

    CONNECT WITH US