Senior Software Engineer – Application Frameworks
New York, NY
Posted Feb 27, 2020 - Requisition No. 81580
The Bloomberg Terminal platform hosts over 10,000 unique applications that underpin the global financial markets. Our Application Frameworks group develops the platform that our 5,000 engineers depend on to build robust tools for our users.
Our group develops the core application runtime, the platform SDK and libraries used by our engineers to create these applications. In addition, we also own the IDEs and tools used to develop, profile, debug, and release applications, along with real-time deployment, distribution, and monitoring infrastructure for the platform.
The result? Our user base of hundreds of thousands of financial professionals can stay productive 24/7/365. We create the core Terminal software that runs on all client PCs, and facilitates connection and access to the vast array of Bloomberg applications available within our environment. Part of this software includes the client runtime that’s built using an embedded Chromium framework to render all of our terminal applications.
This infrastructure is both mission-critical and high performance, with demands of adding only 10s of milliseconds of overhead to application runtime to maintain the extreme responsiveness of the terminal software. On top of that, our framework is capable of rendering thousands of rows of real-time monitoring market data. We maintain this performance through heavily investing in optimization, metrics, and monitoring of all layers of the platform, as well as continuous integration and regression testing aimed at catching performance degradations before they enter release.
Read on to learn more about our teams and what we're looking for. You can express interest in particular teams in your application.
Our team provides the framework for building client-facing applications at Bloomberg. We own the server and client-side runtime environments, developer-facing APIs, widget library and rendering engine for applications. We also provide the integration layer between Bloomberg's real-time data engines and applications.
We build the core user interface of the Bloomberg Terminal, as well as the desktop infrastructure that supports both the terminal itself and the applications that run within it. This entails not only developing the main "CLI" that drives the terminal and all of the client-facing features that it includes, but also the behind-the-scenes infrastructure that hosts and executes applications within the terminal environment. Our infrastructure manages the core features of this environment such as application life cycle, cross-application data sharing and communication, window management, and application state persistence. Additionally, we develop the main C++ application container that runs on the client PC and control the overall footprint of the terminal software by dynamically managing process allocation and application co-residence within these containers.
Core Services Infrastructure:
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, apply below and indicate which of the opportunities above you're most interested in. Each team requires a BA, BS, MS, PhD in Computer Science, Engineering or related technology field.