Software Engineer, Machine Learning Platform
Millions of people across the world come to Pinterest to find new ideas every day. It’s where they get inspiration, dream about new possibilities and plan for what matters most. Our mission is to help those people find their inspiration and create a life they love. In your role, you’ll be challenged to take on work that upholds this mission and pushes Pinterest forward. You’ll grow as a person and leader in your field, all the while helping Pinners make their lives better in the positive corner of the internet.
Our new progressive work model is called PinFlex, a term that’s uniquely Pinterest to describe our flexible approach to living and working. Visit our PinFlex landing page to learn more.
The ML Platform team provides foundational tools and infrastructure used by hundreds of ML engineers across Pinterest, including recommendations, ads, visual search, growth/notifications, trust and safety. We aim to ensure that ML systems are healthy (production-grade quality) and fast (for modelers to iterate upon).
We have roles on multiple sub-teams.
- The ML Data team enables rapid development of features and training/evaluation datasets. We provide a batch and real-time feature store, a central ML Dataset Store, as well as a signal platform with monitoring and governance tools. The team works with Spark, Parquet, Flink streaming, as well as Java online services, and Python for orchestration.
- The ML Training team builds large-scale training, model management/deployment tools, and modeling libraries. We build a Training Compute Platform provisioning GPU and cluster compute, model deployment, and PyTorch ML modeling libraries providing cutting-edge model building blocks. The team works with Python, MySQL, and full-stack UI development, as well as interacting with Kubernetes, Spinnaker, Jenkins.
- The ML Serving team builds our universal engine for large-scale ML model inference in online, offline, and streaming contexts. We also develop services to fetch features and provide visibility/monitoring/observability on deployed ML systems. The team works with C++ online serving and hardware optimization.
What you'll do:
- Design and build core components of the ML lifecycle.
- Work with internal customers, ML engineers and data scientists across Pinterest, to understand and solve development velocity pain points
- Work with many major ML teams in Pinterest to productionize their models, improve their productivity and unblock ML innovations.
What we're looking for:
- Experience with the technologies used above.
- Solid communication to solve problems for customers across teams.
- For more senior candidates: Ability to drive cross-team projects; Ability to understand our internal customers (ML practitioners), their common usage patterns and pain points.
- Experience with production ML systems, preferably the end-to-end lifecycle of an ML model.
Our Commitment to Diversity:
At Pinterest, our mission is to bring everyone the inspiration to create a life they love—and that includes our employees. We’re taking on the most exciting challenges of our working lives, and we succeed with a team that represents an inclusive and diverse set of identities and backgrounds.