Senior Software Engineer - Search and Alerts
New York, NY
Posted Dec 29, 2022 - Requisition No. 112800
Our data moves global financial markets – and conversations around that data are central to how markets are shaped. Our Community group builds the infrastructure responsible for delivering real-time communications between the 350k financial professionals on the Bloomberg Terminal. Our email (MSG) and instant message (IB) products deliver billions of messages across millions of chat rooms per day, including stock quotes, trade confirmations, breaking news alerts or help desk inquiries among others, forming one of the largest financial networks in the world and placing our team at the center of our universe! Our users rely on these products because of their real-time performance, extensive scale, ironclad security, tight integration with financial data and applications.
CC Search & Alerts:
Our team is part of the Communication Channels(CC) group. Our primary goal is to make sure that users are able to stay on top of ever increasing communication data. One person's trash is the other person's treasure and the CC Search and Alerts team aims to provide users with the ability to keep on top of communication that is pertinent and critical uniquely to them.
Our current alerts system is based on client side filtering and IDOL software. Our team is currently working on building a new distributed and scalable system which consolidates the rule offering on the server side and is being built on top of open source Apache Lucene libraries. The alerts system needs to be highly performant and reliable as it tries to match millions of user created rules across millions of emails and instant messages per minute in real time.
Our scalable search offering on the other hand is already built on top of open source Apache Solr and is distributed across tens of collections across hundreds of machines and supports a million user queries every day. We are currently also working on building a more intuitive user experience and look forward to using AI and Natural language processing as we try to better determine users' query intent and return the most relevant results to the users with the least possible overhead.
- Languages: C++ (cmake), Java11 (Gradle), Python3.8, Gherkin, Typescript
- Frameworks: Spring, React
- Technologies: Solr, Lucene, Kafka, Redis
- Misc: Docker (Local Development)
What you’ll do:
- As part of the team you will build large, scalable, real time distributed systems
- Explore Solr, Lucene and other technologies to solve problems
- Drive full stack solutions with user experience as primary focus
- Develop new client facing features to keep our product competitive and also cater to the growing demands of our clients
You’ll need to have:
- 4+ years working with an object-oriented programming language (Java, C/C++, Python, 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
- An understanding of Computer Science fundamentals such as data structures and algorithms
- Working knowledge of modern development methodologies and tools (Jenkins / Maven / Jira)
We’d love to see:
- Full stack development experience
- Experience with building large scale distributed systems
- A track record of open-source contributions
- Experience with search systems, particularly Lucene and Solr
- Experience with functional programming and Reactive microservices
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, 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 firstname.lastname@example.org.
The referenced salary range is based on the Company's good faith belief at the time of posting. Actual compensation may vary based on factors such as geographic location, work experience, market conditions, education/training and skill level.We offer one of the most comprehensive and generous benefits plans available and offer a range of total rewards that may include merit increases, incentive compensation [Exempt roles only], paid holidays, paid time off, medical, dental, vision, short and long term disability benefits, 401(k) +match, life insurance, and various wellness programs, among others. The Company does not provide benefits directly to contingent workers/contractors and interns.
Salary Range: 160,000 - 240,000 USD Annually + Benefits + Bonus