Senior Software Engineer – Terminal Server Infrastructure
New York, NY
Posted Nov 6, 2020 - Requisition No. 80101
Overview:
The Terminal Platform group is responsible for the core user interface of the Bloomberg Terminal, along with the underlying infrastructure for the client side runtime environment, software asset deployment, and application life cycle management. We also provide the client-server communication channels and are responsible for ensuring the security of our software installation. We manage core features of the runtime environment such as cross-application data sharing and communication, window management, application state persistence, and application hosting. On the backend, we develop a distributed pipeline for publishing, deploying and serving software assets on the fly.
Our mission is to evolve our end users' Terminal experience by introducing modern technology and patterns that can facilitate simpler, more robust workflows. We are expected to guarantee the stability of our system by prioritizing performance and reliability across our stack. And we're investing in tools that engineers use to manage their own software deployments and application life cycles.
Terminal Server Infrastructure
The Terminal Server Infrastructure (TSI) team is responsible for the end-to-end ownership of our software deployment pipeline. We provide the distributed backend infrastructure for publishing, deploying and serving various software assets, including R+ Bundles. As the main hub for this deployment workflow, we own the VRS tool that other engineering teams use to release their software and manage their rollouts.
What’s in it for you
Our team's tech stack is primarily C++ running on backend systems, with R+/Javascript code used in tools and RPAAS services. As we approach each new project, our team is dedicated to leveraging modern software and embracing engineering best practices. The latest iteration of our publishing pipeline is pushing the bounds of Bloomberg's cloud infrastructure and we partner closely with other infrastructure teams to further that development. We invest in automated testing, CI, and CD across our system and look for engineers to advocate for maintainable environments. This allows us to iterate quickly and release regularly even with such a mission critical system.
Our short term roadmap includes a project to track dependencies between software packages in real-time to warn users when dependencies are added or removed along with the impact of such dependencies. Using runtime data we can assess when the usage profile of a package will change as a result of some downstream dependency modification. We also plan to invest in stress tests and "fire drills" across our system as a means of validating disaster recovery, intense load, and fail-over scenarios.
You’ll need to have:
- Strong C++/Javascript programming skills
- Solid understanding of data structures, algorithms, and object-oriented design.
- Experience in all phases of the software development life cycle
- The desire to take ownership and responsibility of issues and handle effectively through to resolution
For more information, please reach out to {FON Mike Mallon