Senior Software Engineer - Search & Alerts
New York, NY
Posted Aug 7, 2023 - Requisition No. 118027
The Communication Channels team builds products used by the Bloomberg community for real-time communication, such as exchanging price quotes, trade ideas, news, and other financial information. We deliver billions of emails (MSG’s) and instant messages (IB’s) across millions of chat rooms every day. We have a broad user-base unlike any other company, including asset managers, brokers, traders, financial analysts, and desks across all asset classes. Our users rely on these products’ real-time performance, massive scale, ironclad security, tight integration with financial data & applications on the Bloomberg Terminal, and most importantly their singular access to the Bloomberg network of 350,000 financial professionals.
CC Search & Alerts Team:
Our team - CC Search & Alerts is part of the Community 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. The team is actively working towards a new distributed and scalable system which consolidates the rule offering on the server-side and leverages 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 is already built on top of Apache Solr and distributed across hundreds of machines, handling a million user queries every day. Presently, we are engaged in developing a more intuitive user experience, and we look forward to leveraging vector search, fuzzy search and learning to rank to enhance our ability to understand user’s query semantics, improve search recall and return the most relevant results to our users with minimal overhead.
Technology Stack:
- Languages: C++ (cmake), Java11 (Gradle), Python3.8, Typescript
- Frameworks: Spring, React
- Technologies: Solr, Lucene, Kafka, Redis
- Misc: Docker (Local Development)
This is where you come in:
- As part of the team you will build large, scalable, real time distributed systems
- Explore Solr, Lucene and other open source 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 experience in Java/C++/Python development
- An aptitude for analytical problem solving
- Working knowledge of modern development methodologies and tools (Jenkins / Maven / Jira)
- BA, BS, MS, PhD in Computer Science, Engineering or related technology field
We’d love to see:
- Full stack development experience
- Hands on experience in front end technologies such as React and Javascript
- Experience with building large scale distributed systems
- Experience with building full-text search systems
- A track record of open-source contributions
- Experience with search systems, particularly Lucene and Solr
- Experience with functional programming and Reactive microservices
- Mentoring Junior Engineers
- Managing large projects with ambiguous requirements
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 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 amer_recruit@bloomberg.net.
Salary Range: 160,000 - 240,000 USD Annually + Benefits + Bonus