Senior Software Engineer (C++/Python) - Data Acquisition Solutions
New York, NY
Posted Feb 24, 2021 - Requisition No. 89044
At the heart of our business at Bloomberg is connecting decision makers to business and financial information, trading analytics, news, and insight. As our industry has evolved, the way our clients consume data has changed. Today our large enterprise clients are interested in the tight integration of Bloomberg products with their own highly sophisticated, mission-critical systems. To meet their constantly evolving integration needs, Bloomberg Enterprise Technology (ET) group develops solutions focused on high efficiency and low-latency secure data transfer over a distributed infrastructure. ET group supports a wide array of products including Real-time Data Feeds, Managed File Transfer system, Data Transformation Service and Application Development Framework.
The Data Acquisition Solutions engineering team in the ET group is responsible for providing Bloomberg's financial data in the integration pipeline between critical client application and Bloomberg trading and financial analytic applications in real-time, as well as delivering Bloomberg's financial data to clients from financial institutions in real-time via API based solutions. We leverage both Bloomberg proprietary messaging infrastructure as well as third-party or open source messaging systems to provide interface to our internal client applications while our external clients use Bloomberg proprietary API framework (a.k.a. BLPAPI) or REST API to connect with our orchestrated or choreographed back end systems.
The team focuses on building robust, scalable and supportable data acquisition and enrichment software to meet both internal and external data needs, as well as ensuring accurate data entitlement check and data usage metering take place in the underlying integration pipelines. As a software engineer in our group, you'll work on mission-critical, distributed, high-performance software that seamlessly integrates core trading and analytic servers in major investment banks and funds with Bloomberg data and services, as well as provides financial data to both Bloomberg Terminal users and servers in key financial institutions around the globe.
As a member of our agile team, we'll trust you to:
- Familiarize yourself with our code base and documentation, and proactively identify opportunities to improve code and documentation
- Design, Implement, Support and Improve the Data Acquisition systems. Your key focus will be delivering highly flexible, easily configurable, highly reliable applications in a team of technologists
- Work in close contact across the Bloomberg organization including ET product, Service and Implementation teams, as well as our clients
- Supply ideas in an open discussion to achieve the team`s time-to-market objectives
You'll need to have:
- 5+ years of C++ software development experience
- Hands-on development experience with the Python programming language
- Development experience on UNIX or Linux Operating systems
- Detailed understanding of object-oriented programming
- Expertise with data structures and algorithms
- Experience with relational databases and SQL
- Excellent communication and teamwork skills
- BA, BS, MS, PhD in Computer Science, Engineering or related technology field or equivalent industry experience
We'd love to see:
- Familiarity and experience with REST APIs
- Familiarity and experience with BLPAPI
- Familiarity with XML, JSON data formats and programming tools to process data in those formats
- Familiarity and experience with the React front-end library and framework
- Familiarity with scripting languages or any large text processing tools
- Experience with Agile software development methodologies
- Prior experience developing Order or Execution Management Systems, Portfolio and Risk Management Systems
If this sounds like you, please apply!
Bloomberg is an equal opportunity employer, and we 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.