Senior C++/Python Engineer - Desktop API
The Bloomberg Desktop API (DAPI) provides a powerful suite of tools bundled with the Bloomberg Professional service. This allows our clients to deliver market data, historical data, reference data, and analytics into Desktop applications. Our team builds state-of-the-art software for DAPI product management, configuration, customer service, and data usage compliance/risk assessment using AI Deep Learning. As part of our team, you will be exposed to a variety of domains and technologies, learn continuously, and contribute new ideas starting day one. We deliver software for both front-end and back-end.
Our day-to-day work includes a wide range of development opportunities, from brainstorming to design to coding. There are lots of new developments coming in the DAPI area to continue promote the sales of Bloomberg terminals. One of our exciting ongoing projects is building flexible framework for premium metering, which offers a way for Bloomberg to manage, configure, and upsell premium data content. We'll trust you to:- Create C++ and Python services on Linux
You'll need to have:
- Work with various database technologies including Bloomberg proprietary COMDB2, IBM DB2, and Microsoft SQL Server databases
- Script complex stored procedures
- Work across multiple teams in Engineering.
- Communicate and interact with product managers
- An under- or post-graduate degree in Computer Science, Engineering, Finance or related field (or equivalent expertise)
- 5+ years programming experience in C++. Familiar with other object-oriented programming language (Java, Python etc.) is a plus
- Experience building flexible and maintainable software components and framework using object-oriented design and design patterns
- Experience developing stored procedures, performing optimization and query tuning, and designing databases
- Working knowledge of Linux/UNIX shell scripting
Sound interesting? Apply!
- Experience working with UIs
- Ability to learn on the fly, having the desire to share ideas and be a team player
- Strong verbal and written communication skills
- Excellent problem solving and troubleshooting skills
- Experience in working with business/customer to identify and understand business needs, analyze and normalize workflow, ramp up and create solutions
- Familiarity with Agile and full SDLC - particularly evaluating business / client requirements to redesign existing systems better meet needed workflows.