Senior Software Engineer - Derivatives (Functional Programming)
Posted Jan 12, 2023 - Requisition No. 113379
As a financial data, news, and analytics market leader, Bloomberg continuously invests in its technology to keep delivering the best data and analytics to support the global derivatives market. Every day, trillions of dollars pass through the Bloomberg Terminal. As a result, hundreds of thousands of financial professionals rely on our 500 enterprise applications to manage their portfolios, execute their trades and analyse the markets. To this end, Bloomberg’s Derivatives Engineering team is responsible for owning the full life-cycle of services and applications for pricing derivatives. We build systems and products that enable clients to generate trade ideas, structure deals, connect to electronic trading platforms and capture market movements.
We sit at the intersection of finance and technology, working directly with product managers, financial engineers, and quantitative analysts to understand client and market needs. These foundational systems get billions of hits per day and provide data and analytics to many of Bloomberg’s flagship products.
We provide value to Bloomberg internal & external customers by delivering systems that enable structuring, pricing, and analytics for derivative financial products. We take pride in solving a wide variety of challenges associated with pricing derivatives including creating efficient market data management pipelines, integrating state of the art mathematical pricing models, designing rich APIs and user interfaces and solving complex distributed systems challenges.
If you’re interested, see the following links for more about the Bloomberg Derivatives team.
What’s in it for you?
- Be part of a passionate, growing community of talented software engineers within an environment where innovation is not only embraced, but encouraged
- Gain experience applying functional programming to real production financial systems
- Use OCaml to develop applications for instrument definition, payoff scripting and derivatives life-cycling
- Implement microservices and component-based designs using Docker container workflows for development and deployment to on-premise cloud infrastructure
- Focus on developing a modular framework that provides users the capability to price any derivative payoff
- The opportunity to learn some of the financial domain that's at the core of the extensive derivative functionality we design and develop, including an extensive training offering
- Attend in-house training courses designed by technology experts, participate in or speak at conferences, build your network by collaborating with leaders in a wide variety of technical fields and make an impact by participating in Bloomberg’s Engineering Guilds
- You will have the opportunity to develop a great mix of design and technology skills and learn about the derivatives domain
- Help to shape the strategy and experience of OCaml developers by contributing to the wider Bloomberg DevX community
We'll trust you to:
- Employ functional programming in building new cutting-edge systems and improving existing ones wherever possible
- Work hand-in-hand with industry-expert product owners, financial engineers and quantitative researchers to build applications and frameworks
- Take leadership of technical solutions, implementation and rollout to users
- Use industry best practices for testing, automation, continuous integration and continuous deployment
- Champion new technologies, advocate for the latest developments and best practices in the open source community, challenge the status quo and inspire others to improve their craft
- Represent Bloomberg in conferences and the wider functional programming community
- Embrace teamwork and peer review of designs and code
You'll need to have:
- Experience working with a functional language (OCaml, Haskell, Scala etc.)
- A Degree in Computer Science, Engineering, Mathematics, similar field of study or equivalent work experience
- An understanding of the benefits of composition, search for sum types in any language you write and dearly miss pattern matching where you don't have it
- Prior contributions to system design and architecture and scaling fault-tolerant, distributed systems
- Honest approach to problem-solving, and ability to collaborate with peers, stakeholders and management
We'd love to see:
- It’ll be great if you already have experience programming in OCaml or a related functional language
- We value someone who has an interest in sharing knowledge and mentoring other team members
- If you have a passion for working on large scale projects, you’ll fit right in
Bloomberg is an equal opportunity employer and we value diversity at our company. We do not discriminate on the basis of age, ancestry, color, gender identity or expression, genetic predisposition or carrier status, marital status, national or ethnic origin, race, religion or belief, sex, sexual orientation, sexual and other reproductive health decisions, parental or caring status, physical or mental disability, pregnancy or maternity/parental leave, protected veteran status, status as a victim of domestic violence, or any other classification protected by applicable law.
Bloomberg is a disability inclusive employer. Please let us know if you require any reasonable adjustments to be made for the recruitment process. If you would prefer to discuss this confidentially, please email email@example.com