Mastering LazyArray: My Challenging Software Engineer Intern Interview with Databricks

Databricks | Software Engineer Intern | Interview Experience

Interview Date: Not specified
Result: Not specified
Difficulty: Not specified

Interview Process

The interview process began with an email to schedule a phone call, where some basic questions were asked. This was followed by a virtual onsite (vo) interview consisting of two back-to-back rounds.

In the first round, the interviewer was a senior software engineer. The interviewer seemed passive throughout the interview, shaking his head during the self-introduction. The main question was about implementing a LazyArray class. The requirements included supporting queries for the first index of a specific element and implementing a map interface that takes a function pointer to operate on each element. The operations were to be executed only when calling the indexof function, returning a new object with the current state and the new function pointer, rather than updating in place. The candidate found the question simple but challenging due to unclear requirements and a lack of feedback from the interviewer.

The second round was rescheduled shortly before it was set to start, causing a wait in the meeting room. The interviewer was a tech lead who was responsive and friendly. The topic discussed was revenue refer, where the candidate and interviewer spent about half an hour discussing the implementation, data structures, and complexity. The candidate felt that this round went well.

After the interviews, there was a long wait for feedback, with other candidates receiving responses quickly. The candidate sent a follow-up email but did not receive a response, later discovering they were rejected. The candidate had initially been excited about the opportunity due to previous research experience with databases but felt less positive after the interview experience.

Technical Questions

  1. LazyArray (Array, Lazy Evaluation)
  2. Revenue Refer (Data Structures, Complexity)

Tips & Insights

  • Clarify requirements during the interview to avoid misunderstandings.
  • Be prepared for varying levels of engagement from interviewers.
  • Follow up if you don’t receive feedback, but manage expectations regarding response times.