[Offer] [Declined] - Intuit interview Experience - SDE 2

intuit logo
intuit
SDE 22 yearsDeclined
July 22, 202544 reads

Summary

I interviewed for an SDE 2 position at Intuit and successfully navigated through eliminator and craft rounds, ultimately receiving an offer. However, I decided to decline the offer as I had a better alternative and was seeking a remote role.

Full Experience

I was referred to Intuit by a friend for an SDE 2 role. After about three weeks, I received a call from the recruiter who gave me an overview of the compensation, expectations, and what to anticipate in the eliminator round.

Eliminator Round

This round began with introductions, and then the interviewer presented a coding question. I was asked to find the total number of ways a robot could travel from the top-left to the bottom-right cell in a grid containing only 0s and 1s, moving only right and down, through cells marked with 1. I discussed my approach, including time and space complexity, and then coded the solution in Java, including the main class. I had some initial typos but fixed them, and my code worked correctly for all test cases provided.

Next, the discussion shifted to GenAI. The interviewer asked about my experience using GenAI, the tools I utilize, and how I apply it in my current role. Following this, I was given a situation-based question: my junior developed an ML application showing 95% accuracy on test data but only 10% in production, and I needed to guide him. I clarified my understanding of the problem and proposed 4-5 ideas and considerations for improvement, which impressed the interviewer.

Another challenge involved GenAI, where I had to write a prompt for a tool like ChatGPT to ensure it returns only correct results in a specific JSON object format, similar to an API response body. I managed to do this effectively, considering edge cases.

With 10 minutes remaining, I received another DSA question, described as similar to the Edit Distance problem. I solved it using both dynamic programming and recursion, satisfying the interviewer.

After two days, I heard back from the recruiter that I had cleared the eliminator round and would proceed to the craft rounds, which consisted of four back-to-back interviews.

Craft Rounds

My first attempt at the craft rounds was unfortunately marred by technical issues—network buffering, Zoom interface issues, and frequent power cuts. The hiring manager seemed annoyed, and the interview ended with a reschedule for the following week, with a strong suggestion to ensure my setup was stable.

A week later, the interviews were rescheduled and I was ready.

Round 1: Craft and Demo (90 mins)

I started with my prepared slide presentation covering my introduction, projects, and achievements. After some follow-up questions on my experience, I was given a task: to add a new API, implement the service layer logic, and write corresponding test code for a Java project using an H2 database and a simple REST API.

I began by discussing the requirements in detail. The panel then grilled me on system design aspects, specifically concerning high load scenarios and retrieving large datasets. I discussed approaches like pagination. After about 15 minutes of grilling, I was allowed to code. I quickly implemented the controller and service layer, demonstrating the output on Postman and writing unit tests for both layers. The panel appeared satisfied, and this round concluded positively.

Round 2: Problem Solving (60 mins)

Two members from the previous panel joined this round. They inquired about my experience and my feedback from the last interview. Then, I was given a DSA question to check if a string containing brackets `()`, `{}`, `[]` was balanced. I initially proposed an incorrect approach but quickly corrected myself with a stack-based solution. The lead engineer seemed confused and initially insisted it would fail. I politely wrote pseudocode, explained my logic thoroughly, and challenged him to provide an input where it would fail. Once he saw the correct output, he was satisfied.

Following this, we delved into system design again, focusing on optimizing for heavy loads. We discussed horizontal and vertical scaling, load balancers, rate limiters, exponential backoff, and the thundering herd problem.

Finally, another DSA question was posed: given a list of key-value pairs, find one pair whose sum of values equals a target. I proposed a brute-force solution, a binary search approach (optimizing space), and a hashmap approach (optimizing time at the cost of space). He was satisfied, and the round ended positively.

Round 3: Team Member Round (30 mins)

A member from Round 1 joined this discussion. It was a light conversation about the team, my experience, and projects. There wasn't any intense grilling, just some general discussion on GenAI and AI, after which the call concluded.

Round 4: HM Round (30 mins)

This was a standard hiring manager round with typical questions I had prepared for. It also ended on a positive note. The HM seemed to initially think I had four years of experience and was quite surprised when he realized I only had two years, which I took as a positive sign that the interviews had gone well.

Outcome

One week later, I received a call from the recruiter informing me that I had qualified and received an offer. However, since I already had a better offer and was specifically looking for a remote position, I gently declined. The recruiter suggested we stay in touch for future opportunities if I ever considered an in-person role.

Interview Questions (8)

Q1
Robot Paths in Binary Grid (Down/Right only)
Data Structures & AlgorithmsMedium

Given a grid, containing 0s and 1s only. There is a robot who will travel from top left cell to bottom right cell via cells which has 1 only. It can move right and down only. Return total number of ways.

Q2
Troubleshooting ML Model Production Accuracy
Other

Consider your junior has created a ML application which is inferring something. He showed that the accuracy is 95% on test data set, but in production its accuracy was just 10%. Guide him.

Q3
Prompt Engineering for JSON Output
Other

Given an input, write a prompt for a GenAI model (e.g., ChatGPT) such that it returns a correct JSON object as a response body, considering edge cases.

Q4
Edit Distance (DP)
Data Structures & AlgorithmsHard

A DSA question similar to the classic Edit Distance problem. The solution involved using dynamic programming and recursion.

Q5
Implement New API with Service Layer & Tests
System Design

Implement a new API, including the service layer logic and corresponding test code. The discussion included system design aspects related to handling high load and huge data retrieval (e.g., pagination). The project was Java-based, using an H2 database and a simple REST API.

Q6
Balanced Parentheses
Data Structures & AlgorithmsEasy

Check if a given string, which contains brackets `()`, `{}`, and `[]`, is balanced or not.

Q7
Scalability and Optimization for Heavy Loads
System Design

Discussion on system design challenges with heavy loads and optimization strategies. Covered concepts such as horizontal scaling, vertical scaling, load balancers, rate limiters, exponential backoff, and the thundering herd problem.

Q8
Two Sum (Key-Value Pairs)
Data Structures & AlgorithmsEasy

Given a list of key-value pairs, find one pair whose sum of values is equal to a target. Any valid pair could be returned.

Discussion (0)

Share your thoughts and ask questions

Join the Discussion

Sign in with Google to share your thoughts and ask questions

No comments yet

Be the first to share your thoughts and start the discussion!