Senior Software Engineer - Taxonomy

Bloomberg ,
London, Greater London

Overview

Job Description

**Job Requisition Number:** 82490 ### Who are we? Bloomberg has tens of millions of time series our clients can use to generate ideas and make trading decisions\. Some of these time series represent prices, whereas others represent fundamental data, such as the inventory of warehouses around the world\. We developed a system that organises Commodity's time series and will be extending that taxonomy to other areas of the business over the next 12 months, which will make it available to a broader audience\. Our downstream apps have clients that trade commodities to hedge their inherent business risks, like airlines, food producers and utilities; brokers who facilitate deals between those players; and speculators\. We work with a wide range of teams to provide the metadata they need to solve client problems\. We develop primarily in Python 3 and Javascript, and maintain some assets in C\+\+\. We use Postgres for our primary database, RabbitMQ for work distribution and Solr & Redis for specialist use cases\. We started to use RDF for inter\-system communication\. We've recently started developing GraphQL services, where we can solve multiple query problems with a single implementation\. ### What's in it for you? We place a lot of value on a good developer experience and developing the right solution\. Every week, we protect half a day for engineer\-led learning and innovation\. As part of this process, the team has open sourced 2 Python libraries\. We have been an agile team since 2015; we started with Scrum, but recently migrated to Kanban\. We work closely with our product owner, and encourage everyone on the team to contribute to the roadmap and develop a breadth of knowledge across our assets\. ### We'll trust you to: + Implement stable solutions using the best technology for the job, whether that is well\-established in the system or introduced from outside of Bloomberg, in order to deliver solutions that minimize maintenance cost and improve our reliability and performance + Contribute to the work of the engineering team, including mentoring junior members, pair programming and peer reviewing + Contribute to the work of the wider group, including collaborating with product owners and data administration teams, to understand and develop solutions to their problems + Participate actively in our agile process ### You'll need to have: + Strong Python background + Experience with Git + Experience developing on Linux + An aptitude for problem solving, and a desire to build software solutions to complex business problems + A team player attitude and collaborative approach to development + Commitment to building quality software through tests ### We'd love to see: + Experience working with C or C\+\+ + Experience working on Unix platforms + Good testing skills + Good communication skills + Familiarity with Postgres, Solr, Redis and/or GraphQL + Interest in learning about the commodity market + Experience with agile development + Experience working across organisational boundaries to deliver business value + Experience with RDF, or similar knowledge base technologies ### Interview process: 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: 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\! And do check out our blog, TechAtBloomberg\.com/ to learn more\. Bloomberg is an equal opportunity employer and value diversity at our company\. We do not discriminate on the basis of race, religion, colour, national origin, gender, sexual orientation, age, marital status, veteran status, or disability status\.