jobapplier

Software Engineer (ML Infrastructure)

Snap Inc.

Skills

Required

  • machine learning
  • ML
  • infrastructure
  • distributed systems
  • Spark / Flink / Ray
  • big data processing
  • programming
  • Python / Java / Scala / C++

Preferred

  • AI model
  • Training platforms
  • TensorFlow
  • PyTorch
  • scikit-learn
  • vector search algorithms

Join Snap Inc. as a Software Engineer specializing in ML Infrastructure. In this role, you will design and optimize infrastructure systems for machine learning workloads at scale, develop high-performance inference systems, and build comprehensive data management systems. You will work closely with ML engineers to deploy cutting-edge models into production. Enjoy a range of benefits including generous parental leave, comprehensive medical coverage, and a 401(k) plan with employer contributions.

Design and optimize infrastructure systems for machine learning workloads at scale, driving reliability and efficiency improvements.

Develop high-performance inference systems to ensure fast and efficient AI model serving, and build infrastructure for scalable ML model training.

Responsibilities

  • Work closely with ML engineers to deploy cutting-edge models into production, collaborating on the implementation of state-of-the-art vector search algorithms.

Requirements

Ability to collaborate and work well with others

  • Good understanding of distributed systems and the infrastructure components of large-scale ML
  • Strong programming skills in Python, Java, Scala or C++
  • Ability to proactively learn new concepts and apply them at work
  • Proven track record of operating highly-available systems at significant scale
  • Strong problem-solving skills with a focus on system performance, scalability, and efficiency
  • Experience with big data processing frameworks such as Spark, Flink, or Ray
  • Bachelor’s degree in a technical field such as computer science or equivalent experience
  • 6+ years of post-Bachelor’s software development experience; or Master’s degree in a technical field + 5+ year of post-grad software development experience; or PhD in a relevant technical field+ 2+ years of post-grad software development experience
  • Experience building large scale production machine learning systems, distributed systems or big data processing

Preferred

  • Masters/PhD in a technical field such as computer science or equivalent industry experience
  • Experience working with ML Training platforms or optimizing AI model inference
  • Familiarity with ML frameworks such as TensorFlow, PyTorch, Caffe2, Spark ML, scikit-learn, or related frameworks

Pay

USD 209,000 - 313,000