Senior Software Engineer - Buy Side Trading
Posted Jun 26, 2019 - Requisition No. 75777
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 each 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!
In London, our engineering teams own the trade processing stack. We manage the creation and life-cycle of every trade flowing through our system. We are tackling the problems associated with large distributed systems like latency and scaling, balanced with the need for reliability and accuracy required for a business-critical system. This year, we have multiple projects focused on keeping our clients ahead of the competition – ranging from using linear programming to find the optimal distribution of assets across clients, to consolidating and migrating our current trade creation flows onto our new high-performance infrastructure. Solving problems on this scale is hard so we’re always looking for fresh ideas and new technologies to leverage.
Technologies and the environment you’ll work in:
- Most of our system is written in C++, but we are pivoting to Python. 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 Python and open source software such as Kafka and Redis.
- We always put emphasis on doing things right, so you’ll use industry best practices for testing, automation, and CI/CD. We own the full development process – from gathering requirements to testing, rollouts, and maintenance.
- Our system is entrenched in complex financial workflows -- you might not know the ins and outs of finance just yet, but that’s not a problem if you’re excited by the opportunity 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 a willingness to learn/work in C++ and Python when you get here.
- An aptitude for problem solving, and a desire to build software solutions to complex business problems.
- Experience managing projects or working with multiple stakeholders to deliver business value.
- A team player attitude and collaborative approach to development.
- Commitment to building quality software through tests.
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
- Professional Python Experience. We are still early in our journey with Python and looking to learn from others.
We believe interviewing is a two way street. It's a way for us to get to know you and your skills, and also a way for you to learn more about the team, our technical challenges, and what you'd be working on. The content of each interview round will be tailored to the role and your background, but the general framework can be found here:
https://www.bloomberg.com/careers/technology/engineering/software-engineering-experienced-hire/ We want to ensure you can put your best foot forward throughout the process, so if you have any questions or need any accommodations to be successful, please let us know!