I applied online. The process took 3 weeks. I interviewed at Databricks (San Francisco, CA) in Dec 2020
Interview
The process was very similar to generic large tech companies:
- Phone screen recruiter
- System Design phone screen
- Hiring manager behavior + career phone screen
- Onsite (2 system design, 1 algorithm coding, 1 behavior, 1 coding low level language)
It takes about 2-3 weeks end to end. The questions are relatively simple but require deep knowledge and quick results.
Interview questions [1]
Question 1
Generic system design distributed systems for payments / financial problems.
Leetcode style design a class with methods using algorithms for optimal run time
The Databricks interview is notoriously tough and they absolutely live up to that reputation. The process moved quickly but the technical bar is incredibly high. They do not care how fast you can solve a generic LeetCode puzzle. They want to see if you understand memory management, distributed state, and thread safety. The virtual onsite had a mix of deep system architecture and a heavy live coding session where you actually have to compile, run, and debug your code.
I applied through a recruiter. I interviewed at Databricks
Interview
Screening round was a system design question.
Did not make it through. I do think for such an involved question, the interviewer spent a bit too long explaining the question at the beginning and didn't leave enough time for me to implement the solution. But that was probably not the reason for not passing.
Interview questions [1]
Question 1
Standard system design question. Practice with Hello Interview or similar site.
I applied through a recruiter. The process took 3 months. I interviewed at Databricks
Interview
Interview consisted of 5 rounds: 2 system design (single box and distributed), 1 coding and 2 behavioral and personal deep dive. Overall the experience was pretty good. The interviewers were nice, seemed to pay all attention, and all of them were really smart and fun to talk to.
Interview questions [1]
Question 1
Coding was not a typical leetcode style, instead it was a generic problem, which could be tacked on with follow ups like better structuring, modularity etc. Single box design focussed on concurrency, reliability and crash recovery. The discussion on past projects was extremely detailed and technical. The system design question seemed too focussed on the domain rather than one of the standard distributed design questions.