Senior Software Engineer, Infrastructure - Application Frameworks

  • Posted 26 days ago | Updated 21 days ago

Overview

On Site
Full Time

Skills

Data Centers
Finance
Distribution
FOCUS
SDK
Application Development
Debugging
Embedded Systems
UI
Market Analysis
Real-time
Workflow
Web Browsers
Software Installation
Authentication
Management
Caching
Instrumentation
Analytics
Open Source
Assembly
TypeScript
Operations Support Systems
Bloomberg
Cascading Style Sheets
GRID
Layout
JavaScript
Software Development Methodology
Testing
Production Support
Stacks Blockchain
C
C++
Rust
Network Protocols
TCP
UDP
HTTP
Linux
Microsoft Windows
Collaboration
Value Engineering
Communication
Bloomberg Terminal
IT Infrastructure

Job Details

The Bloomberg Terminal provides access to over 10,000 unique applications that help to drive the global financial markets, and hundreds of thousands of professionals around the world depend on it for their mission critical workflows. From a technology point of view, the Terminal can be viewed as a powerful desktop ecosystem that enables discoverability and integrated workflows for our vast portfolio of financial applications, and Application Frameworks is the group responsible for the Terminal's application infrastructure.

Our group develops the application runtime environments on both the client side and the server side, including the core Bloomberg desktop software and the application containers running in our data centers. We provide the Terminal SDK and libraries for our engineers to create high-value financial applications, along with the tools for developing, debugging, profiling and troubleshooting Terminal applications. We also build and run real-time deployment, distribution, and monitoring infrastructure for the Terminal ecosystem. Our current ownership and focus areas include the following:

  • The Bloomberg Terminal's fully integrated Application Runtime, infrastructure, and SDK
    • Application runtimes on both the client and server side, using both embedded V8 and SpiderMonkey JavaScript engines.
    • Elastically scaling server-side runtime environment, handling 10s of millions of application executions per day
    • Application development SDLC toolchain, including VS Code integration, debug, test, build, packaging, publication, release, production observability, troubleshooting, and performance profiling & analysis
    • High performance desktop rendering engine, powered by embedded Chromium
    • Terminal UI widget toolkit
    • Market data processing pipeline, including a unique Bloomberg real time data technology called DataLayer
  • The Terminal Desktop Application
    • User-facing workflows such as Launchpad and the Terminal browser
    • Secure software installation / update pipelines
    • Authentication, connectivity, and session management infrastructure
    • Ahead-of-time resource fetching and pre-compiled code caching infrastructure
    • Desktop application telemetry, instrumentation, and user analytics
  • Open source and standards participation
    • TC39 leaders and committee members
    • C++ Standards committee members
    • ECMA General Assembly members
    • Engagement with and contributions to TypeScript, Chromium, V8, Node, Electron and assorted JavaScript tooling OSS projects.

While maintaining a vast array of technologies that are critical to Bloomberg's core products, we are also extending our engagement and influence beyond - as evidenced by our active participation and notable contributions to multiple industry standards, projects and communities. We have successfully championed multiple accepted and proposed standards advancements, such as CSS Grid Layout, JavaScript BigInt, Private Class Fields, and Temporal, to name a few!

Across our group, we are looking for motivated team members who will:
  • Own the end-to-end SDLC process for their project, from conception and design through implementation, testing, release, and production support.
  • Work cross-functionally across both teams and technology stacks in order to deliver best in class solutions
  • Innovate and influence the continuous technical evolution and enhancement of our products

You'll need to have:
  • 4+ years working with non memory managed language (e.g. C, C++, Rust)
  • Knowledge of network protocols such as TCP, UDP, and HTTP/2
  • Familiarity with Linux and/or Windows OS fundamentals
  • Curiosity and a drive to learn, grow, and constantly take on new challenges
  • A strong ability to collaborate across geographically distributed teams
  • A thorough understanding of the systems you've worked on
  • Excellent written and verbal communication skills

We'll trust you to:
  • Design and implement high-reliability, low-latency production systems supporting the Bloomberg Terminal runtime infrastructure
  • Actively participate in design and architecture discussions to help influence the evolution of our technology infrastructure
Employers have access to artificial intelligence language tools (“AI”) that help generate and enhance job descriptions and AI may have been used to create this description. The position description has been reviewed for accuracy and Dice believes it to correctly reflect the job opportunity.