S

Snap

Builds visual messaging and augmented reality tools

Software Engineer - Backend

Backend EngineeringUpdated on Nov 11
Full-time

About the Job

Requirements

  • Experience with backend services or distributed systems.
  • A proven track record of operating highly available systems at significant scale.
  • Ability to independently execute medium-sized features that take a few weeks and multiple pull requests to complete.
  • Understanding of the operational aspects of the system and ability to participate in incident or hotfix investigation and resolution.
  • Experience in at least one of the following areas: large-scale microservices and distributed systems; cloud computing and storage systems; infrastructure and large-scale system design; security; networking and data storage; or machine learning and natural language processing tools.
  • Proficiency in, or a strong aptitude for, leveraging artificial intelligence tools to streamline development, with the critical judgment to audit generated output for architectural integrity, performance bottlenecks, and security risks.
  • Adaptability in learning and applying evolving artificial intelligence systems and tools to remain at the forefront of engineering trends and modern development practices.
  • A bachelor's degree in a relevant technical field such as computer science, or equivalent years of practical work experience.
  • At least 2 years of post-bachelor's software development experience; or a master's degree in a technical field plus at least 1 year of post-graduate software development experience; or a PhD in a relevant technical field.
  • Experience working with distributed systems.

Responsibilities

  • Design, implement, and operate critical, scalable services, including user identity services, friend graph, and the core persistence layer.
  • Work across teams to understand product requirements, evaluate trade-offs, and deliver solutions needed to build products.
  • Evaluate, appropriately test, and debug work to maintain high quality.
  • Advocate for and apply best practices in availability, scalability, operational excellence, and cost management.
  • Use artificial intelligence tools and high-velocity engineering workflows to design and ship scalable services while maintaining rigorous standards for code correctness, security, and production-ready quality.

Desired Qualifications

  • Experience with Java, C++, and/or Python.
  • Experience with NoSQL solutions, Memcache/Redis, Kubernetes, or Google/AWS services.

About the Company

Snap

Builds visual messaging and augmented reality tools

Snap builds visual communication software centered on Snapchat, where people exchange photos and videos, chat with friends, and explore creator and publisher content. Stories collect shared moments, while Discover and Spotlight organize video content for viewing beyond private conversations. Lens Studio lets developers create interactive camera effects, and the company develops augmented reality glasses through its wholly owned Specs subsidiary. Snap earns most of its revenue by selling advertising to businesses, alongside paid Snapchat+ subscriptions that add features and personalization to the app. Snap began operations in 2011 and is headquartered in Santa Monica, California.

Company size
5,001-10,000
Company stage
IPO
Headquarters
Santa Monica, CA
Founded
2011

Recently Posted Jobs

Explore more opportunities at Snap

See more jobs