Logo
Bloomberg

Senior Software Engineer - Machine Learning Infrastructure

Bloomberg, New York, NY


The Team:

Bloomberg's Data Science Platform was established to support development efforts around data-driven science, machine learning, and business analytics. The proprietary solution aims to provide scalable compute, specialized hardware and first-class support for a variety of workloads such as Pytorch, Spark, Tensorflow and Jupyter. This was developed to provide a standard set of tooling for addressing the Model Development Life Cycle from experimentation and training to inference. It provides sophisticated features such as Hyperparameter Tuning as a Service and is beginning to invest in Model Management and Governance. This is built using containerization, container orchestration and cloud architecture and built on top of 100% open source foundations.

As distributed model training, continual learning, data exploration and analysis advance, so do the needs of the compute solutions. Our solution is poised for continued growth to accommodate the endless number of products across Bloomberg that rely on a robust compute environment. Highlights from our upcoming roadmap focus on creating a highly scaled and performant compute service that abstract away common requirements that appear across many use cases, including creating a highly available federation layer for batch jobs such as training and spark, increasing compute resource (CPU, Memory, GPU) usage efficiency and visibility, enhancing the training experience and integrating with public cloud.

That's where you come in. As a member of the multi-disciplinary Data Science Platform team, you'll have the opportunity to make key technical decisions. You will make extensive use of open source (e.g. Kubernetes, Buildpack, Kubeflow, Pytorch Tensorflow, Jupyter etc.) and is deeply involved in a number of communities. We collaborate widely with the industry, contribute back to the open source projects, and even present at conferences. While working on these solutions, the backbone for many of Bloomberg's up and coming products, you will collaborate with other engineers across the firm and learn about the technology that delivers products from the news to financial instruments.

If you are a software engineer who is passionate about building resilient, highly available infrastructure and seamless, usable full stack solutions, we'd like to talk to you about an opening on our team.

We'll trust you to:

  • Interact with Data Engineers and ML experts to understand their workflows and requirements to inform the next set of features for Platform Services
  • Provide GPU management solution to enhance distributed training performance and resource usage efficiency
  • Enhance user experience using main stream and internal training frameworks
  • Design seamless workflows from model training to model inference
  • Solve and debug user issues
  • Provide operational and user facing documentation
  • Provide performance analysis and capacity planning for clusters


You'll need to have:

  • 4+ years of programming experience with an object-oriented programming language (Go, Python, C++, Java, or JavaScript)
  • A degree in Computer Science, Engineering or similar field of study or equivalent work experience
  • Experience with distributed systems eg. Kubernetes, Kafka, Zookeeper, Spark
  • Experience with mainstream machine learning frameworks such as Pytorch and Tensorflow
  • Experience building and scaling Docker-based systems using Kubernetes, Swarm or Mesos
  • Have a strong sense of curiosity to solve new problems and keep learning new technologies


We'd love to see:

  • Experience with ML infrastructure open source such as Kubeflow, Triton, MLFlow, Feast
  • Knowledge of authentication & authorization systems such as Spiffe and Spire
  • Experience with cloud providers such as AWS, GCP or Azure
  • Experience with configuration management systems (Chef, Puppet, Ansible, or Salt)
  • Experience with continuous integration tools and technologies (Jenkins, Git, Chat-ops)
  • Experience with data encryption
  • Experience working with GPU compute software and hardware
  • Ability to identify and perform OS and hardware-level optimizations


Interviewing with us:

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!

We have a lot of opportunities to choose from in Engineering, and it is important to us that your skills and experience aligns best with the team you are interviewing with. To help ensure you are placed on the right team, your application will be considered for all of our current vacancies in Engineering at the first stage of the interview process.

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 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 [redacted]

Salary Range: 160,000 - 240,000 USD Annually + Benefits + Bonus

The referenced salary range is based on the Company's good faith belief at the time of posting. Actual compensation may vary based on factors such as geographic location, work experience, market conditions, education/training and skill level.

We offer one of the most comprehensive and generous benefits plans available and offer a range of total rewards that may include merit increases, incentive compensation [Exempt roles only], paid holidays, paid time off, medical, dental, vision, short and long term disability benefits, 401(k) +match, life insurance, and various wellness programs, among others. The Company does not provide benefits directly to contingent workers/contractors and interns.