Snapchat | iOS Software Engineer | Onsite
Timeline: 2026(Jan - Mar) • Fulltime • JobHopper •
Waiting for result
I had an onsite interview for the iOS Software Engineer position at Snapchat. The process was fairly straightforward. Initially, I had a brief introduction with the hiring manager where we discussed my background and experiences.
Next, I faced three technical interviews. The first one focused heavily on data structures and algorithms. I was asked to solve a problem on LeetCode, specifically about binary trees. The interviewer appreciated my thought process, and we discussed various solutions to the problem.
The second interview revolved around system design. I was tasked with designing a scalable notification system for an app. This required discussions about load balancing, database choices, and how to handle user preferences.
Lastly, the final interview was behavioral. They explored my past experiences, teamwork, and problem-solving methodologies. I felt the interviews were rigorous but fair. Overall, I am excited about the opportunity and hope to hear back soon!
Interview Questions
Binary Tree Maximum Path Sum
Given a non-empty binary tree, find the maximum path sum. For this problem, a path is defined as any sequence of nodes from some starting node to any node in the tree along the parent-child connections. The path must contain at least one node and does not need to go through the root.
Difficulty: Hard | Reference: LC-124 | Tags: Tree, DFS
Design a Notification System
Design a system that can send out notifications to users based on certain events. Consider scalability and different methods of handling user preferences.
Difficulty: Hard | Reference: N/A | Tags: System Design