I applied through a recruiter. I interviewed at Snap in Jan 2025
Interview
1st round: Recruiter screen
2nd round: Technical screen
Introduction by the interviewer
Describe several projects in details
Behavior questions such as what is the most challenging project, something like that
Coding in HackerRank
Lastly, ask questions if any
Interview questions [1]
Question 1
Given 2 arbitrary tables A and B, where a table is a list of rows and a row is a mapping of columns to values. All of which are strings for simplicity Implement Join(Table A, Table B, List joinCols) such that it returns a Table C that contains the inner join results between table A and B. An inner join is: For each row in A,B that have the same values for all columns in joinCol, C has a row with all the columns from A,B for that row
Part 1: Define Table Class
Part 2: Implement Join(Table A, Table B, List joinCols)
Applied online and recruiter reached out 5 months later,
- Recruiter Call first
- Phone screen - 1hr with 1 coding question and continue with follow up coding questions, not typical leetcode style more like focusing on logical and maintainable
Interview questions [1]
Question 1
1 coding question and continue with follow up coding questions to extend/ modify existing code, not typical leetcode style
I interviewed for MLE positions. After screen (leetcode), i had 4 on-site interviews. 2 ML system designs, 2 leetcode interviews. In general, the experience is very positive, all engineers/managers i met are very professional and polite.
I applied online. The process took 4 weeks. I interviewed at Snap in July 2025
Interview
1st round coding interview for ML engineer was a mix of my previous experiences and a typical LC medium question based on stacks which was pretty easy the interview was scheduled for one hour but ended in 30 minutes.