Backend Software Engineer
- Santa Monica, United States
- Mid Level
- 2+ years
- Bachelor's degree
- Posted
Skills
Required
- Machine learning
- incident or hotfix investigation
- resolution
- Networking
- data storage
- post-grad software development
- Cloud computing
- storage systems
- Java / C++ / Python
- Memcache / Redis / Kubernetes / Google / AWS
Preferred
- backend
- backend services / distributed systems
- AI
- scalability
- user identity services
- core persistence layers
Join Snap Inc. as a Backend Software Engineer. In this role, you will design, implement, and operate critical and scalable services, collaborate across teams to understand product requirements, and advocate for best practices in availability, scalability, and operational excellence. You will also utilize AI tools and high-velocity engineering workflows to deliver innovative products.
Responsibilities
- Design, implement, and operate critical and scalable backend services, including user identity services and core persistence layers.
- Collaborate with cross-functional teams to understand product requirements, evaluate trade-offs, and deliver innovative solutions.
- Advocate for and apply best practices in availability, scalability, operational excellence, and cost management.
- Adaptability in learning and applying evolving AI systems and tools to remain at the forefront of engineering trends and modern development practices
- You can independently execute on medium sized features, taking a few weeks and multiple PRs to complete
- Proficiency in, or a strong aptitude for, leveraging AI tools to streamline development, paired with the critical judgment to audit generated output for architectural integrity, performance bottlenecks, and security risks
Requirements
- Machine learning and natural language processing tools
- You understand the operational aspects of your system and may participate in incident or hotfix investigation and resolution
- Experience working with distributed systems
- Proven track record of operating highly-available systems at significant scale
- Experience in at least one of the following areas:
- Networking and data storage
- Ability to collaborate and work well with others
- 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
- Cloud computing and storage systems
- Security
- Infrastructure and large-scale system design
- Bachelor's Degree in a relevant technical field such as computer science or equivalent years of practical work experience
- Large-scale microservices and distributed systems
- Experience with Java, C++, and/or Python
- Experience with NoSQL solutions, Memcache/Redis, Kubernetes, or Google/AWS services
Preferred
- Experience with backend services or distributed systems
Pay
USD 157,000 - 235,000
jobapplier