S

Snap

Builds visual messaging and augmented reality tools

Backend Software Engineer 5

Backend EngineeringUpdated on Nov 11
Full-time

About the Job

Requirements

  • Experience with backend services or distributed systems.
  • Experience in at least one area: large-scale microservices and distributed systems; cloud computing and storage systems; infrastructure and large-scale system design; security; networking and data storage; machine learning and natural language processing; or tools.
  • A proven track record of operating highly available systems at significant scale.
  • Experience with Java, C++, and/or Python.
  • Experience with NoSQL solutions, Memcache or Redis, Kubernetes, or Google or AWS services.
  • 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.
  • Ability to collaborate and work well with others.
  • Proficiency in, or a strong aptitude for, leveraging AI 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 AI systems and tools to remain current with 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 6 years of post-bachelor's software development experience; or a master's degree in a technical field and at least 5 years of post-graduate software development experience; or a PhD in a relevant technical field and at least 2 years of post-graduate software development experience.
  • Experience with distributed systems.

Responsibilities

  • Design, implement, and operate critical and 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 for innovative products.
  • Evaluate, appropriately test, and debug work while striving for high quality.
  • Advocate for and apply best practices in availability, scalability, operational excellence, and cost management.
  • Use AI tools and high-velocity engineering workflows to design and ship scalable services while upholding standards for code correctness, security, and production-ready code.

Desired Qualifications

  • Experience with Java, C++, and/or Python.
  • Experience with NoSQL solutions, Memcache or Redis, Kubernetes, or Google or 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