Senior Software Engineer - News Automation Infrastructure
Posted Nov 10, 2022 - Requisition No. 111433
Financial Journalism is a big part of what we do at Bloomberg. We have a massive ecosystem of data and insights that is available to our clients. The challenge for our clients is to find the information they really care about.
News Automation aims to uncover the signals hidden in the ecosystem, convert them into clear and valuable content and deliver it to our clients ahead of the competition.
Our team is responsible for the infrastructure that powers this. We are currently responsible for 10% of total Bloomberg readership. And this is huge.
We are also responsible for a content generation platform. The platform is used by different Bloomberg teams to create content to display in their applications.
Our system must be stable and resilient as we provide primary news coverage for critical areas such as company earnings, change in economic indicators and bond issuance. We also support client-facing products like AID (Automated Insights on Demand). Our streaks icon is used by clients to spot anomalies in their portfolios, and we provide a catalog of all available automations so that Bloomberg clients can browse our latest stories.
Our server-side code is written in Python 3, and our user interfaces in TypeScript. We also own a few modern web applications based on React. Our system leverages open-source projects including RMQ, Kafka, Redis and Zookeeper in critical parts of the system.
What’s in it for you:
- You will work on a modern technology stack with a mix of infrastructure and application work
- You will get to be part of a very friendly, helpful team with a great culture: we collaborate on every project!
- You will be encouraged to follow good code and testing practices using local development
- This is a great opportunity to be at the forefront of automated journalism
We will expect you to:
- Be happy to collaborate and be part of a scrum team, with collective ownership of the system
- Be comfortable coding in Python
- Follow and continuously improve our team's design, coding and testing standards. Everyone in the team is expected to push the team’s practices forward.
We would love to see:
- Motivation to make a difference
- A team player. Open attitude and desire to work together
- Ability to collaborate with our stakeholders to take their ideas and break them down into clearly scoped projects
- Experience in working with distributed systems, microservices, Python 3
- Interest in system design and architecture
Lastly, this position requires at least one of the following:
- a bachelor’s degree in computer science or a related field, and/or
- an equivalent combination of education, and/or
- specialized training, and/or
- related professional experience.
1) Revolutionize the content generation platform
The current architecture is 7 years old and, despite being well designed originally and having been refactored and upgraded, it’s time to think outside of the box and come up with a new, better, faster and more flexible design.
2) Improve data accuracy
The quality of the content we deliver to our clients is paramount. Our system relies on several data sources to generate content. These data are not always accurate. We want to implement smart a detection systems to spot anomalies and flag them to editorials
3) Improve latency
Some of the data sources we query to gather the data we need are slow. We want to explore alternative technologies and deliver content to our clients faster than the competition
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 AMER_recruit@bloomberg.net (Americas), EMEA_recruit@bloomberg.net (Europe, the Middle East and Africa), or APAC_recruit@bloomberg.net (Asia-Pacific), based on the region you are submitting an application for. Alternatively, you can get support from our disability partner EmployAbility, please contact +44 7852 764 684 or firstname.lastname@example.org.