
Software Engineer, C++
Snap Inc.
full-time
Posted on:
Location Type: Hybrid
Location: Seattle • California, Washington • 🇺🇸 United States
Visit company websiteSalary
💰 $157,000 - $235,000 per year
Job Level
JuniorMid-Level
Tech Stack
C++GoJava
About the role
- Play a key role in scaling our ML infrastructure by optimizing AI training and inference systems, retrieval frameworks, and ML feature stores, while driving innovations that enhance the efficiency and impact of Snapchat’s ranking and recommendation systems
- Design and optimize infrastructure systems for machine learning workloads at scale and drive reliability and efficiency improvements across Snapchat’s ML Infrastructure
- Build and enhance feature generation and serving pipelines that power online feature stores and retrieval sources which power ranking and recommendation use cases across Content / Ads / Lenses & Growth
- Build comprehensive data management systems for scalable data ingestion, processing and evaluation
- Work closely with ML/Product engineers to ship cutting-edge ML based products.
Requirements
- BS in a technical field such as computer science or equivalent years of experience
- 2+ years of post-Bachelor’s software development experience; or Master’s degree in a technical field + 1+ year of post-grad software development experience; or PhD in a relevant technical field
- Deep expertise in modern C++ (C++11/14/17), with experience in large-scale production codebases
- Familiarity with one of the following programming languages: Golang / Java
- Familiarity with ML Infrastructure systems and/or real-time data pipelines is a plus
- Proficiency with performance optimization techniques
- Strong CS fundamentals (algorithms and data structures) and problem-solving skills
- Comfortable working in a fast-paced, iterative, and highly collaborative environment
- Knowledge of software design patterns and best practices
Benefits
- paid parental leave
- comprehensive medical coverage
- emotional and mental health support programs
- compensation packages that let you share in Snap’s long-term success
Applicant Tracking System Keywords
Tip: use these terms in your resume and cover letter to boost ATS matches.
Hard skills
C++GolangJavamachine learningdata management systemsperformance optimizationalgorithmsdata structuressoftware design patternsreal-time data pipelines
Soft skills
problem-solvingcollaborationadaptabilitycommunicationinnovationefficiency improvementreliabilityscalabilityiterative developmentteamwork