Bloomberg Senior Python Engineer - Data License in New York, New York

Job Requisition Number: 67563

Every day, trillions of dollars pass through the Bloomberg Terminal. As a result, hundreds of thousands of financial professionals rely on our 500+ enterprise applications to manage their portfolios, execute their trades and analyze the markets.

As engineers, we're the ones who build the applications our clients rely on to not just stay informed, but stay ahead of the market. We connect supply and demand across all asset classes on worldwide exchanges. The applications and infrastructure we build embody the speed, agility and financial data that makes Bloomberg the go-to for financial professionals across the globe.

Bloomberg Enterprise Content data products drive the financial industry. Enterprise Content is used worldwide by thousands of our clients, and is a rapidly growing business that provides rich programmatic access to the best financial data and services in the industry. Our products span a wide variety of asset classes and data products including Pricing, Corporate Actions, Regulatory and Reference data content sets ( https://www.bloomberg.com/professional/product/reference-data/ ). We build high-performance systems that feed billions of data points per day to our customers that include key financial players.

We interact very closely with our business and sales teams using agile and iterative development. We have many opportunities to design and develop innovative solutions to accomplish ever-growing customer requirements. We’re continuing to grow rapidly, and have opportunities on the following team:

Core Processing Team

Our clients make hundreds of thousands of requests for data on a daily basis, which translates to billions of data points that flow through our system. Each of these requests may have different parameters asking for different data types, how and when it should be fetched, and various transformations to be performed. Additionally, we generate thousands of data sets that nearly span the full range of the financial industry on an ongoing basis.

To meet these demands, this team designs and maintains a microservice architecture that runs across hundreds of machines to executed large, distributed systems which can perform these operations efficiently and robustly. This is the central workflow generator which works across the Data License architecture to power our data engines. This team also builds a graph of metadata using semantic web concepts ( https://www.w3.org/standards/semanticweb/ ) and open standards that allows our clients to understand how our data is connected, and their applications to directly interface with our systems.

This team will design Python-based services and workflows that are used across Data License to execute data gathering and provide metadata. This metadata is primarily focused on open standards such as RDF ( https://www.w3.org/RDF/ ) including the implementation of related open source libaries such as CSVW ( https://github.com/bloomberg/pycsvw ). The workflows are built on top of Celery ( http://www.celeryproject.org/ ) and RabbitMQ ( https://www.rabbitmq.com/ ) with visualizations using the Flask web server ( http://flask.pocoo.org/ ). This role will be a good fit if you’re interested in designing complex workflows in code, building robust microservices and scaling distributed architectures to handle massive data pipelines.

As an engineer:

You’ll have the opportunity to work with a huge array of technologies developed primarily in Python, along with C++, Java, Javascript and SQL as needed. Additionally you’ll gain experience with Flask, RabbitMQ, Celery, Git, Jenkins, Robot Framework, PostgreSQL, OpenStack, Chef – whatever technology it takes to get the job done. Our work atmosphere is fast paced, high-energy and friendly.

You'll need to have

3+ years of experience with the following:

  • Python development, including writing idiomatic code, large scale project organization and unit testing
  • Completing projects that required significant problem solving, communication skills and the ability to work with a team
  • Use of development tools such as debuggers, memory profilers, and performance measurement
We'd love to see
  • Experience with compiled languages such as C, C++ or Java
  • Relational database experience (SQL and table design)
  • Experience developing software in a UNIX environment
  • Experience with low-latency, high-volume, and highly-availability distributed systems

We are extremely proud of our diverse and open culture, and value diversity of thought and perspective in every form. We're looking for engineers with a real passion for writing reusable, efficient solutions to complex problems, who can adapt to an ever-changing market landscape, and who can collaborate and work effectively on small teams to develop software that impacts thousands of power users around the world. If this sounds like you, please apply below!

To find out more about Engineering at Bloomberg, check out www.bloomberg.com/careers/technology/engineering/.