Senior Machine Learning Software Engineer Job Description

Senior Machine Learning Software Engineer Job Description Template

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

Responsibilities:

  • Investigate modeling issues, identify root causes, and design solutions;
  • Design, develop and operate statistical models and algorithms to deliver quality at scale;
  • Work multi-functionally with other teams to develop standard methodologies in model building and validation;
  • Enjoy hands-on exploration and processing of large, complex data sets;
  • Mentor modeling scientists & software engineers to grow their careers and improve their skills;
  • Mentor modeling scientists & software engineers to grow their careers and improve their skills;
  • Design a large-scale data processing architecture and collaborate on implementing it with the team;
  • Build scalable machine learning services and machine learning platforms;
  • Consistently deliver high-quality software in a timely fashion;
  • Create and maintain production systems that provide oversight on the uptime and stability of our models;
  • Valuing homes;
  • Create and maintain Spark and lambda architecture to create data pipelines that generate features;
  • Review requirements, software designs, and code;
  • Participate in design efforts and discussions;
  • Research new technologies to support the rapid business growth.

Requirements:

  • Experience in Distributed Computing / MapReduce;
  • Fluency in Java, C++, Python or similar object oriented programming language;
  • Strong analytical, planning and interpersonal skills;
  • M.S in Computer Science or related technical field with 5+ years of industry experience;
  • Strong knowledge of at least two programming languages, one of which is Python or Java. Cloud platform experience preferred;
  • A B.S. in a STEM field or equivalent hands-on experience. A public portfolio (such as a GitHub page) is an advantage;
  • Strong generalist software engineer with 5+ years of development experience in multiple backend areas;
  • Experience developing production software;
  • Adept working with SQL – you should be able to write complex queries in your sleep and you’re excited working hands-on with data;
  • Experience with the full software development lifecycle, including design/architecture, testing, deployment, and documentation.