hero

Find Your Dream Job Today

Our mission is to help high-achieving LGBTQ+ undergraduates reach their full potential.

Senior Software Engineer - Privileging Platform

Bloomberg

Bloomberg

Software Engineering
New York, NY, USA
Posted on Feb 4, 2025
Would you like to be part of Bloomberg’s Platform mindset transformation?
Our role based access control (RBAC) system is evolving into a comprehensive Privileging Platform - a transformation driven by the increasing demand for consistency, interoperability, and seamless client workflows across our suite of enterprise trading and analytics offerings (AIM, PORT, MARS, TOMS, etc). We strive to accommodate diverse product workflows and privileging schemes while ensuring standardization and transparency within a unified client experience. By leveraging the robust foundation of our core role based platform, we aim to empower our clients to seamlessly manage their user’s access, permissions, and resources across the entire enterprise domain.
While the primary C++20 RBAC service already receives billions of hits per day, we intend to enhance the system further by evolving it into a true platform - one capable of handling the privileging needs of the wide array of enterprise products available today. To succeed, we will divide our system into more granular modules, focus on reliability, improve scalability, and design/enforce clear interfaces for data access. Building a privileging system for client trading and analytics environments is a challenging task which combines the need for technical expertise with product awareness to design appropriate system architectures, data models, low latency processes, and intuitive client workflows.
If you're looking for a role where you can start making impact on day 1 within a passionate technical team who is excited to work on business-critical projects and evolve our infrastructure, contribute to the team's culture and growth, and find ownership in the system that you're building -- this position is the right one for you!
What’s in it for you?
  • An opportunity to make a company-wide impact in the newly formed Enterprise Products Platform department by redesigning the core permissioning system
  • Work on a high-load and performance critical system while expanding your knowledge and expertise in distributed systems and databases
  • Collaborate with many different teams and organizations towards a high impact goal
We'll trust you to:
  • Take ownership of the full software development lifecycle
  • Work directly with business counterparts to build applications that our clients use to tackle complex privileging problems
  • Design, develop, and release high-quality, scalable and maintainable code
  • Adapt and introduce modern technologies both within and outside of Bloomberg that cultivates constant innovation to contribute to our system evolution
  • Embrace collaboration and the process of working together as a team towards the same goal within an Agile environment
You need to have:
  • Experience programming in production environment using C++ or an equivalent object oriented programming language (e.g. Java, C#)
  • A degree in Computer Science, Engineering, Mathematics, or similar field of study or equivalent work experience
  • An understanding of Computer Science fundamentals such as data structures and algorithms and a data oriented approach to problem-solving.
  • Excellent communication skills and the ability to collaborate with engineering peers as well as non-engineering stakeholders.
  • Experience building highly available high throughput distributed systems
  • A strong sense of ownership and an ability to work independently while navigating uncertainties
  • Curiosity and passion for understanding complex products and learning new technologies
  • Experience covering the full software development life cycle, including technical design, implementation and project management aspects
We’d love to see:
  • Modern C++ experience
  • Experience working with relational databases
  • Mentorship experience
  • Experience in scalability, load balancing, performance optimization, fault tolerance and high availability, auto-scaling, caching strategies, resource isolation, monitoring and logging