I contacted a recruiter at Intuit through email, sharing my resume and soon I got information about the further steps.
The process consisted of 1 online assessment and 2 interviews.
Date : 31 July 2020
Platform : HackerRank
Time : 90 minutes
Number of questions : 4
Given a 2-D grid of integers, find the number of “maxima” cells, where a maxima is the cell whose value is strictly greater than the values of its 4 neighbors.
Solution approach : Simple traversal and comparison with neighbors.
Find the number of ways to reach the top of N step ladder if each jump can be of 1 or 2 steps.
Solution approach : Nth Fibonacci number.
Some examples were given, each depicting a Rhombus-shaped pattern of numbers. Print a similar pattern given the length of side of Rhombus.
Solution approach : Observe and understand the pattern of numbers.
I do not remember this question correctly but it required some tricky implementation using map and set.
I completed all the questions.
Interview 1 (Resume based + Behavioral)
Date : 4 Aug 2020
Mode : Video call on Zoom
Duration : 30 minutes
The interview started with brief introduction of the interviewer and myself. We discussed a bit about the current COVID scenario.
He asked a few questions related to asymptotic analysis, some basic questions about C, C++ and OOPS. I was then asked to describe a project from my resume. We spent some time on discussing about the courses I had done.
Finally I asked some questions about the company and the interview ended smoothly.
Interview 2 (Tech)
Date : 6 Aug 2020
Mode : Video call on Zoom, live coding on shared Google Doc
Duration : 75 minutes
There were 2 interviewers this time. The three of us introduced ourselves. One of my projects had the use of high fps cameras in it, which caught the interest of one of the interviewers and she asked me an open-ended question : Design a camera for blind people. I was asked to think of creative ideas irrespective of the implementational complexity.
After this, we proceeded to coding questions.
Folding a linked-list
Similar question : https://www.geeksforgeeks.org/rearrange-a-given-linked-list-in-place/
I divided the solution into three functions :
- Reverse the second half (non-recursive implementation)
- merge the first half with reversed second half
- driver function
She asked me to write a recursive implementation of the Reversal function for linked lists.
Alongside coding, I was being asked basic things like complexities of each function, data structure associated with recursive function calls, null pointer etc.
The second interviewer asked me to design a data structure (for the elements of a given array) which supports the following queries :
- find index of any element in O(1) time
- print the elements in the same order as the input array in O(n) time.
I implemented it using map. He additionally asked me to handle duplicate elements, where all the indices at which the given element occurs should be printed.
I was able to code all questions properly and easily.
The interview ended with a light discussion about the company.
I received the result on same day after a few hours and got selected for the internship.
Most helpful resources based on my experience : GeeksForGeeks, InterviewBit, Codeforces.