Logo
Bloomberg

Senior Software Engineer - Terminal Build and CI

Bloomberg, Toronto, ON


Description & Requirements

About the Department:

Bloomberg's Software Infrastructure Application Frameworks group provides essential libraries, environments and services used to build and run the majority of our Terminal applications. We are also responsible for developing and maintaining the core Terminal software that runs on all client PCs and enables access to the vast array of Bloomberg applications.

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 Terminal platform. The team ensures infrastructure performance and stability 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 and quality degradation before they enter the release pipeline.

Our Team:

The Bloomberg Terminal, our flagship product, is installed on nearly 500,000 PCs worldwide. It integrates thousands of components, empowering clients to enhance their productivity and workflows . Given its critical nature, the build system supporting the Terminal must be robust, flexible, and responsive. The Terminal Build and CI team is responsible for the Terminal build system which builds the Bloomberg Terminal and all related components that run on the client's PC, as well as continuous integration (CI) services and developer experience for the Application Frameworks group.

The role:

Are you passionate about quality, efficiency, automation and operational excellence? Join our ENG Terminal Build and CI team in Toronto! We're responsible for automating the build processes of all client-side components for the Bloomberg Terminal as well as packaging and deploying them for distribution, alongside the developer experience for software engineers working on the Bloomberg Terminal.

With many builds happening each day, our goal is to enhance productivity, reliability, and exposure so that engineers and product owners can maximize the system's benefits. This is all exposed to engineers and release teams on our internal build dashboard. We work actively on Windows, MacOS, and Linux to ensure the system is robust whichever platform we are building applications for, coupled with a strong focus on enhancing build process insights so that engineers can better understand what is happening with their builds.

We also provide CI services and local development tooling for the Application Frameworks group, with the aim of improving developer experience. We leverage open-source tools such as Conan and CodeQL to improve the efficiency and productivity of engineers whilst checking the quality, performance, and stability of code that will eventually make its way into the Bloomberg Terminal package. Looking forward, we want to streamline all of this tooling into a cross-platform environment, with the goal of allowing engineers in Application Frameworks and beyond to develop with modern tooling and analysis in the environment of their choosing - Windows (x64 and ARM) or Mac.

We'll trust you to:
  • Troubleshoot : Quickly resolve build and deployment issues.
  • Automate : Develop and maintain automated build and release pipelines.
  • Document : Create clear system documentation and provide training to team members.
  • Conduct Security and Compliance : Ensure adherence to industry security and compliance standards.
  • Scale, automate, and secure Infrastructure : our software build and deployment infrastructure.
  • Design fault-tolerant software : delivery pipelines for multiple releases.
  • Enhance Toolchains : Develop new features for existing build and release tools.

You'll need to have:
  • 4+ years of experience working with an object-oriented language (C/C++, Python, Java, etc.).
  • A Degree in Computer Science, Engineering, Mathematics, or equivalent work experience.
  • Experience with continuous integration tools (e.g., Jenkins).
  • Strong collaboration skills and an interest in building a strong network across the teams we work with.
  • Ability to listen and understand technical problems to articulate solutions to the Application Frameworks Engineering community.
  • A passion for improving developer workflows and tooling to compliment a large-scale codebase, from pull request to release.
We'd love to see:

  • Tooling Experience: Prior experience maintaining tools used by other developers or in a DevOps role.
  • SDLC Proficiency : Knowledge of software development life cycle (SDLC).
  • CI/CD Expertise : Experience designing and developing CI/CD systems with high engineer exposure.
  • Developer Advocacy : Keen interest in enhancing developer experience
  • Tech Enthusiasm: Passion for exploring new technologies, including ARM architecture.

Join us and gain insights into how we build, test, debug, and release software for ALL Bloomberg customers globally!