Machine Learning Software Engineer Job Description

Machine Learning Software Engineer Job Description Template

Our company is looking for a Machine Learning Software Engineer to join our team.

Responsibilities:

  • Analyze experimental and observational data, communicate findings, and facilitate launch decisions;
  • Participate in code reviews to ensure code quality and distribute knowledge;
  • Write production-level codes to train your ML models into working pipelines and services to serve production online traffic;
  • Build a platform for data science/ML at scale;
  • Forecast sale timelines and sale price for Opendoor homes;
  • Model key features that inform the overall risk to the business in any given cohort of homes;
  • Projecting and forecasting resales;
  • Build GPU infrastructure that allows Opendoor to embrace deep learning;
  • Create and maintain production systems that provide oversight on the uptime and stability of our models;
  • Create and maintain Spark and lambda architecture to create data pipelines that generate features;
  • Extract features from raw data such as text and images using NLP & CV;
  • Design, implement and operate large-scale distributed systems;
  • Develop container orchestration systems within a Kubernetes environment;
  • Design and develop data science solutions relating to streaming data as well as machine learning solutions;
  • Collaboration with various teams during the design, implementation and deployment phases.

Requirements:

  • B.S., M.S., or PhD. in Computer Science or equivalent;
  • Industry experience building and productionizing innovative end-to-end Machine Learning systems;
  • 2+ years of successfully applying machine learning to product/business problems;
  • Prior experience building machine learning systems in production;
  • Strong grasp of fundamental machine learning techniques;
  • Python/R/Javascript (Node.js) experience a plus;
  • Experience with machine learning management frameworks (e.g.: Airflow, Argo, Kubeflow, and/or ML Flow);
  • Production experience within a variety of storage systems such as (but not limited to) object storage, NoSQL or relational databases;
  • Production experience deploying and managing applications in a public cloud provider environment (e.g.: AWS, Google Compute Engine or Azure);
  • Experience with path planning;
  • Bachelor’s degree;
  • 2+ years experience with statistical methods, modern ML algorithms, and software engineering best practices;
  • Strong mathematical skills;
  • Experience developing reusable Machine Learning tools and pipelines;
  • Experience with autonomous robots.