I have applied to Intuit through off-campus by filling out a google form in September 2021. There will be a total of 3 rounds where 1 is the OA round and the other two are technical interview rounds.
Then I got the test link in January 2022.
Round 1: Online Round (Jan 2022)
The test was conducted on the Glider Platform. There were 4 coding questions and the duration was 90 minutes. I have done 3 of them completely and 1 partially whose only one test case is failing.
They are easy, medium, medium, and hard. I got the result of this test within 4-5 days.
I have received an acknowledgment mail that I am qualified for the interview but after 1 week I have been kept on the waitlist.
Fast forward to March 2022 when I received a mail that my application is activated again✌️.
Round 2: First Technical Round (April 2022)
After 2 weeks my interview is scheduled which is of 30 minutes technical interview round.
The overall interview experience was nice, the interviewer was great, helpful, and very supportive.
There is 1 interviewer. First, we both introduced ourselves and then moved on to some computer science fundamentals.
Then I have been asked a few questions from OOPS like
i) What do you know by OOPS.
ii) Polymorphism and its types with examples
iii) Inheritance and its advantages.
Then few questions from OS about deadlock and after we have a few discussions on my resume and some questions from one of the projects that I have mentioned on my Resume.
This whole thing takes exactly 15 minutes.
After that, we have moved to the next part which is the Data Structure and Algorithms. Where I have been given just 2 inputs and their respective outputs and asked to write the code for the given scenario.
So first I try to understand the inputs and outputs, asked a few questions, told what I understood, and that after a few discussions I understood the question. The link for that question is https://leetcode.com/problems/decode-string/
So first I asked a few questions regarding edge cases, I told my approach of using recursion in this question the interviewer was satisfied with my approach and then I code it in a few minutes and then while running the code we got some errors but after few dry runs and discussion I got the bug and updated the code and then it works fine for those two inputs. Then the interviewer asked what if we give some different test cases as I have written the code for those cases only so I have told the approach for those follow-up test cases the interviewer was satisfied with the approach and the time is already up so we wrapped up the interview by asking few questions to the interviewer.
Time taken ( 35 - 40 ) minutes
Round 3: Second Technical Round (May 2022)
After 3 weeks my interview is scheduled which is of 60 minutes technical interview round.
The overall interview experience was nice, both the interviewers were great, helpful, and very supportive.
At first, we introduced ourselves and then we directly move to the DSA part.
Here the first question is that you are given a matrix of m X n which is row-wise and column-wise sorted and there is a target element, you have to find whether this element is present in the matrix or not. So here I have asked what should be the return type of the function and for now, it is boolean.
So I started by telling the brute force approach of traversing the whole matrix and also telling the time complexity for that which is m X n. Then the interviewer asked me to tell the optimized approach. So I have told that we start from the top right corner and we move down or left according to the condition that whether the element at the current position is greater than the target element or not and if it is equal then we just return.
After this interviewer was satisfied and I wrote the code for it. It works fine with the test cases and then the interviewer asked us to return the index if we found the target element, so here I asked the question like what to return if we didn't find the target element so that I have to return (-1,-1) in pair data type from the function so I just changed the data type of that function.
And at last, stated the time complexity of this solution which is O(m+n).
After this second interviewer asked me 2nd dsa question in which I have to create a data structure such that it performs the following functionalities like insert, delete, and return the random element and all should be performed in O(1) time complexity.
The link for that question is https://leetcode.com/problems/insert-delete-getrandom-o1/.
In this first, we discuss a few data structures which can be suitable for this like an unordered map, doubly linked list, and vector but with the alone unordered map we can satisfy the insert and delete but face problems in random element and similarly alone with vector we can do random and inserting but deleting are costly here so I have told the approach for using both where we put the element in the vector and store this current vector size in the unordered map as key-value pair and then for few test cases I have explained the approach and the interviewer seems satisfied then I wrote the code and in the first attempt it worked fine.The interviewer was satisfied with my solution and then we move to the cs fundamentals part.
Where I have been asked a few questions like
And then at last I have asked a few questions them and the interview ends.
Time taken ( 60 ) minutes
After some time I received a call from Intuit that I received the full-time offer from it🎉 .
At Intuit, they are focused on overall performance, not just the coding but also in the Resume (as I have mentioned a few projects in my resume) and most important the cs fundamentals. They are very helpful during the interviews when I got stuck somewhere they gave a few hints which helped me solve the questions.
Some Key Points
All the best for your journey. You will get your dream job one day😊.