Senior Software Engineer - Custom Data
San Francisco, CA
Posted Aug 21, 2019 - Requisition No. 76818
The Bloomberg Data and Analytics Platform team brings together core services and technology frameworks that are shared across Bloomberg application teams. We create standardized solutions to complex yet common problems across the Engineering department. We deal with challenges of storage, low-latency retrievals, high volume requests, scalability and high availability over a distributed environment for enterprise wide use.
We are Custom Data! We integrate client’s proprietary data-sets into Bloomberg ecosystem to enrich Core terminal and cross product solutions. Our Client Data Platform positions Bloomberg as a holistic and integrated solution for buy-side operations. Our goal is to build a high quality, enterprise grade managed time-series platform for proprietary data-sets and to provide best in class solutions for discoverability, ingestion, retrieval, collaboration, auditing, reporting, and real-time alerts. Exposure to such rich feature sets enables us to work on diverse problems and challenges on a daily basis.
Who are you?
You are a senior software engineer, and you’re excited to see your work impact teams across Bloomberg. You will be contributing to the success of our clients by leveraging your expertise to help design and build a complex product while ensuring high availability, reliability, fault tolerance, and scalability for continuous growth. If you are passionate about programming, distributed systems, and like to work in dynamic collaborative team which fosters continuous learning, you’ll fit right in.
We'll trust you to:
- Enhance existing data model to support complex keys and data-types.
- Work on scaling current storage solution to meet enterprise requirements.
- Work on improving reliability, fault tolerance and performance of our systems.
- Engage with our partners across Bloomberg, understand their application needs and access patterns
You need to have:
- 3+ years of C++ experience on UNIX/Linux environment
- Solid understanding of data structures, algorithms, and object-oriented design concepts
- Knowledge of RDBMS data modeling and performance tuning
- Experience with high volume, high availability distributed systems
- Experience with automated testing, continuous integration, and documentation.
- Experience in software instrumentation for monitoring and observability
- Passion for problem solving, learning and ability to thrive in a collaborative and dynamic work environment
- BA, BS, MS, PhD in Computer Science, Engineering or related technology field
We’d love to see:
- Knowledge of modern C++ (C++14/17) concepts and tools like CMake, clang-tidy
- Experience with scaling micro services
- Experience with distributed systems like HBase, Cassandra, Kafka and other open source frameworks.