Senior Software Engineer - Buy Side Reporting
Bloomberg AIM (Asset and Investment Manager) is a buy-side trading platform used by the biggest players in finance. Our platform is a one-stop-shop that enables everything from idea generation to trade execution and post-trade operations. It's a huge system - built by more than 200 engineers - used to manage trillions of dollars every single day. We're the market-leading platform, and Bloomberg continues to invest in our growth as a product and engineering team - that's where you come in!
The AIM Regulatory Reporting team is responsible for ensuring that AIM clients report their trading activity in compliance with various financial regulations. We own a highly visible system and as such are able to impact our clients directly. Because of the nature of our product, we work closely with different engineering teams as well as our business and sales counterparts. We face the technical challenge of balancing the needs for latency and scalability required in a large distributed system, with the requirements of high reliability and accuracy of a business-critical system. Our collaborative team always discusses decisions openly and relies on each other to deliver on our shared goals. Technologies and the environment you'll work in
- We are almost entirely a backend team, most of our stack being written in Python, with some C++ services. We believe a smart engineer can pick up any language with some ramp up time. If you've been programming in any object-oriented language we want to talk to you!
- We believe in using the right tool for the job, recently this has meant using open source software such as Kafka and Redis.
- We always put emphasis on doing things right, so you'll use industry standards for testing, automation, and CI/CD. We own the full development process - from gathering requirements to testing, rollouts, and maintenance.
- We work in a fast-paced environment where priorities can change quickly. We are passionate about crafting a reliable system that serves our enterprise clients' needs. Our requirements are driven by the different regulations we support as well as our future vision.
- We love having a team-wide ownership of our system, and we enjoy having collective discussions about our challenges and to design decisions in our existing software stack. We continue to explore new technologies to understand how we can use them to improve our system
- Our system is entrenched in sophisticated financial workflows - you might not know the ins and outs of finance just yet, but that's not a problem if you're keen to learn them and build applications that enhance and improve clients' workflows.
You'll need to have:
- Expertise in your chosen OO programming language, and passion to learn/work in Python and C++ when you get here
- An aptitude for problem solving, and a desire to build software solutions to complex business problems
- Communication skills to collaborate with multiple teams in Engineering or other business units to deliver value for our business
- Eagerness to work in an inclusive team, with a fun and open culture, and desire to search for new ideas
- Dedication to building quality software through tests.
- An open mind to balance engineering trade-offs according to goals and outcomes
We'd love to see:
- Experience working in an agile environment
- Demonstrated experience working with a large distributed system and an understanding of its unique challenges
- Drive to experiment with new technologies to solve exciting domain problem
- Proficiency in Python
We have a lot of opportunities to choose from in Engineering, and it is important to us that your skills and experience align best with the team you are interviewing with. To help ensure you are placed on the right team, your application will be considered for all of our current vacancies in Engineering at the first stage of the interview process.