Senior C++ Engineer- Bloomberg Development Environment (BDE)
The BDE team provides cross-platform low-level C++ libraries that form the foundation for C++ software development within Bloomberg as well as Bloomberg's open-source C++ contributions. The BDE libraries meet superior standards of design, documentation, and testing. Among other things, the BDE libraries provide enhanced implementations of standard library containers, vocabulary types for representing common concepts (like dates and times), and building blocks for developing multi-threaded applications (e.g., concurrent containers, thread pools, and event schedulers). The BDE team is also responsible for spearheading Bloomberg's contributions to the C++ standard and ensuring future iterations of the C++ language provide features necessary to Bloomberg.
The BDE team provides an opportunity to work with C++ experts on foundational C++ libraries that are broadly reusable. Ongoing projects include developing new concurrent queue data structures, supporting 'std::chrono' primitives within the existing BDE libraries, adding support for TLS/SSL to the BHL HTTP/2 library, and investigating the impact of pooled memory allocators in various real-world scenarios. BDE is unique within Bloomberg in dedicating 20% of its time to guided research tasks, which aim to further the state-of-the-art for C++ and provide engineering leadership to Bloomberg's C++ community
Who are you? An engineer who is intimately familiar with the C++ language and its idiomatic constructs. You are comfortable with taking responsibility for improving existing BDE libraries as well as developing new ones. You're motivated to move the C++ language forward in a way that supports large scale software systems. You thrive in an environment where you are held to high standards and software is written in a consistent style. We'll trust you to:
You'll need to have:
- Develop, document, and test high-quality, high-performance C++ code in a timely manner
- Thrive in a team environment
- Mentor others in your areas of expertise
- Take responsibility for applying BDE's development methodology, and ensure all of your work (including documentation and testing) are high quality
We'd love to see:
- BA, BS, MS, PhD in Computer Science, Electrical Engineering, or equivalent industry experience
- Strong working knowledge of C++
- Solid understanding of Data Structures, Algorithms, and Object-Oriented design
- Strong problem solving, and communication skills
- Experience with C++ library design
Bloomberg is an equal opportunities employer, and we value diversity at our company. We do not discriminate on the basis of race, religion, color, national origin, gender, sexual orientation, age, marital status, veteran status, or disability status.