Software Infrastructure Engineer (C++)

Careers at Bloomberg

Back to Search

London

Posted Jul 3, 2017 - Requisition No. 59283

Every single day, over 4000 developers (and counting) rely on us to build the core foundation required for their applications. We build libraries that touch a wide range of technologies. This includes programmable real-time data-processing pipelines, crypto services and development tools. We are technologists who live and breathe high-performance, well-factored, scalable, testable code which can mould quickly to new business initiatives.

We sit right at the heart of all of our real-time software for high impact systems that are the core of the Bloomberg infrastructure. We process market data from around the world, driving the majority of downstream Bloomberg applications. We address the market demand for low-latency solutions by delivering the world's most reliable, timely and accurate financial data.

As an engineer within Software Infrastructure, you're valued as technical expert and a go-to resource throughout the company. Our users, as well as our leaders, are highly technical people. It's both interesting and stimulating to have other engineers as your customers.

We'll trust you to:

  • Take responsibility for the full software development life-cycle, from understanding the needs of the business through to coding to deployment and maintenance. Your work will be highly visible, making you highly accountable
  • Enjoy solving highly complex problems while understanding the scope and impact of your work
  • Design, architect and develop libraries and software systems
  • Write well-tested, robust, performant code in a cross-platform environment

You'll need to have:

  • Strong C++
  • Deep understanding of object-oriented design, data structures and algorithms
  • An aptitude for analytical problem solving
  • Exposure to all phases of the software development lifecycle

We'd love to see:

  • You can work seamlessly across Linux/UNIX
  • You are familiar with the nuances of building high volume, high availability distributed systems
  • You have good knowledge of operating system fundamentals
  • You are familiar with network-layer protocols (TCP/IP, PGM, etc.)

Teams that you can apply to:

Application Frameworks

As a member of the Application Frameworks team, you will work on a high-performance C++ library that implements a variety of transformation algorithms on large tables of constantly updating data. This transformations can be from simple sorting and filtering, to complex aggregations, SQL joins, or evaluations of Excel-like equations. This library is one of the core frameworks used by thousands of Bloomberg developers to write applications that can handle large amounts of financial data

You will improve our libraries by adding new features, optimizing both the time and memory of existing code, and working on tools that help our developers visualize their transformation pipeline and identify performance issues.

We are at the core of the Bloomberg Terminal and the code we write must be heavily tested, maintainable, and well documented. We are looking for a strong C++ developer with a passion for optimization, algorithms, and designing clean, reusable APIs.

Connectivity & Integration Solutions (CIS)

The CIS (Connectivity & Integration Solutions) group is changing the way our clients connect and integrate with Bloomberg. We build solutions for secure, high throughput and low-latency data transfer. We allow clients to manage their full integration with Bloomberg products through a single system available online and in the Bloomberg Terminal.

This is an area that is growing rapidly. With ever increasing demands for more capabilities in data transformation and analytics, we are building out an architecture using a combination of third party, open source and in house technologies to scale to meet these demands.

A successful applicant would be joining the Bloomberg CIS London Integration team. This team is primarily responsible for proprietary systems that perform Authorization and Identity Management, Configurable Bulk Data Feeds including self-service tools for clients to manage and provision their connectivity resources and use our Integration Platform. We primarily use C++ on Linux.

Developer Experience

We are a team of technologists, engineers, evangelists and trainers charged with helping our engineers deliver their best work. We are not afraid to make large investments to build our own tools to outpace the competition.

At the moment we work with Phabricator, Jenkins, DPKG, GitHub Enterprise, Coverity, Jira and anything that fills gaps and joins them together. Join us and you will help thousands of engineers, both inside the company and out as we love open source.

Enterprise Technology

Our team is responsible for financial and news based data services. Our fast-growing event driven feed business provides real-time news and analytics to trading desks of major financial institutions. Performance and resilience is critical.

We need your skills in developing scalable and robust software to address growing demand for this data. You will be joining a team with expertise in real-time distribution and strong financial domain knowledge. You will develop software using the open Bloomberg BLPAPI and gain experience using open source projects to manage big data sets. We are looking for an engineer who embraces modern programming practices.

Come work in our agile and forward thinking team to develop interesting and effective products.

Feeds SRE & Ops

As an engineer in the Feeds SRE & Ops team, you will be responsible for driving standardization across the 1000+ global exchange data parsers developed in feeds. You will make architectural decisions that will ensure that parsers behave in a consistent manner. This will involve prototyping solutions, creating and documenting the standards required of the parsers and creation of supporting tools and automated test suites to help ensure the quick adoption of the new standards.
You will need to have the ability to get a consensus across the feeds engineers, the ability to develop high quality code and the ability to propose architectural solutions, not to mention a keen eye for detail.

Feeds Infrastructure

We provide the framework that is used by the 1000+ feed-handler applications for the company's real-time market data. Our components need to be robust, of high quality and re-usable and we leverage solid development practices and principles to achieve this.

We need a keen attention to detail, design and quality. Join a high-calibre team of creative thinkers striving to provide a quality feed-handler infrastructure for the company.

Real-time Distribution Platform (RDP)

We are responsible for Bloomberg's data distribution infrastructure, which is the largest in the world, providing low-latency market-data and value added Bloomberg data via our open API (http://www.bloomberglabs.com/api/).

We support scalable, distributed, high-performance software that provides mission-critical data delivery to all Bloomberg desktop customers and a large number of enterprise-level applications. The team in London has two big areas of responsibility within this infrastructure, Market data distribution and processing & Infrastructure services.

Real-time Market Data and News Feeds

We build real-time systems that process market data from hundreds of exchanges around the world. This translates to our infrastructure receiving billions of ticks a day across all financial asset classes. Resilience, performance, latency & accuracy are key drivers in the development of our code, as our clients rely on our data to make decisions involving millions of dollars.

Our projects are driven by changes in technology, regulations and the market and what we do is core to the Bloomberg business. We are continuously growing and evolving our infrastructure to make it a state of the art distributed real-time data processing system capable of responding to our clients.

You will collaborate with various teams but have full responsibility for the software you build. The changes you will make to the system will reach the clients almost immediately. If you are excited by this challenge, come join us and let’s make a difference together.

Systems Infrastructure

We're engineers who enjoy building services and distributed systems that are crucial to the Bloomberg products, with stringent demands on scalability, availability, resiliency and security. Our work ranges from building core libraries and services in C++11, to integrating open source technologies and delivering them as scalable services to thousands of internal engineers.

Areas we care about include secret distribution, PKI, session management, distributed caching using Redis, RabbitMQ based persistent message queuing and high-volume low-latency market data distribution.

If you're a passionate and tenacious engineer with strong problem solving skills, we would love to talk to you.

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 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!

Bloomberg is an equal opportunity employer and value diversity at our company. We do not discriminate on the basis of race, religion, colour, national origin, gender, sexual orientation, age, marital status, veteran status, or disability status.

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

Similar jobs

    The Bloomberg Talent Network

    Stay connected with us and be among the first to learn about new job opportunities. We’ll use the information you provide to help us get in touch with you to align your expertise with our opportunities and better direct our conversations.

    CONNECT WITH US