
Synthesized from 18 candidate submissions for ALL.
Slice maintains a rigorous technical hiring process that emphasizes core computer science fundamentals, particularly Dynamic Programming and system design. While junior roles focus on Android-specific knowledge and algorithmic efficiency, senior roles prioritize architectural proficiency through comprehensive Low-Level and High-Level Design rounds.
The candidate went through a screening round and a technical round but was ultimately rejected. The technical round involved challenging questions, and the candidate struggled with the JSON parsing design question and the probability proof.
A 15-minute call with the recruiter where the candidate introduced themselves, explained one of their projects, and discussed their reasons for seeking a job change.
Introduction
Explain one of your projects
Why looking for a change
A 1-hour technical round with three questions. The candidate initially used an O(n) space approach for the first question and coded it without further optimization. The second question involved designing a solution similar to Java's Jackson libraries for parsing JSON and implementing a get(key) function. The candidate struggled with this question and attempted a recursive solution. The third question was a probability problem involving six distinct integers between 1 and 2006, where the candidate had to prove that the probability of a pair having a difference that is a multiple of 5 is 1.
Solve https://leetcode.com/problems/first-missing-positive/
Design a solution similar to how Jackson libraries work in Java: Given a JSON, read it and implement functions like get(key) which should return a JSON object
Six distinct positive integers are randomly chosen between 1 and 2006 inclusive. What is the probability some pair of integers has a difference that is a multiple of 5?
The interview process for the KYC Analyst role was considered average in difficulty.
The candidate was asked to provide an introduction and discuss their resume.