Summary
I successfully navigated through multiple technical rounds at Practo for an SDE Intern + Full Time position in Bangalore, ultimately receiving and accepting the offer.
Full Experience
My interview journey for the SDE Intern + Full Time role at Practo, Bangalore, began with an Online Assessment, followed by two technical interviews. I was pleased to clear all rounds and accept the offer.
Round -1 (Online Assessment - 90 mins, 7 March 2022)
This round was conducted on HackerRank and consisted of 6 questions: 3 coding questions, 2 MCQs, and 1 database design question.
DSA Questions:
- One problem involved repeated deletion of the substring "AWS" from a given string, which I solved using a stack.
- Another was a binary search based problem, conceptually similar to "Koko Eating Bananas".
- There was also an Ad Hoc problem that required observation.
MCQ Questions:
Both MCQs were graph-based, requiring me to determine the correctness of given DFS and BFS traversals.
Database Question:
I was asked to design a database for a Music School, adhering to specific requirements regarding instruments, students, and teachers.
After 2 days, I received the results for Round 1 and my two sets of interviews were scheduled for March 16th.
Round -2 (Technical Interview 1 - 30-40 mins, 16 March 2022)
After a quick introduction, the interviewer directly presented coding questions:
- Delete nth node from the end of a linked list.
- Write a recursive function to convert a decimal number to binary.
- We also discussed some SQL queries based on hypothetical scenarios.
This round went well. After 2 hours, I received an email confirming I had cleared the 2nd round, and my 3rd interview was scheduled for 4:00 PM on the same day.
Round -3 (Technical Interview 2 - 45 mins, 16 March 2022)
Following introductions, I was asked to showcase one of my best projects, explaining its details, technologies used, and features. The interviewer asked questions related to ReactJS (as my project was built on it), including HTTP status codes, their classes, and the codes I frequently encountered.
Next, a DSA question was pasted in a Google Doc, and I was only asked for the approach. It was the classical DP problem, "Longest Palindromic Substring." I first explained what a palindromic substring is, then detailed the brute force approach, and finally optimized the solution using dynamic programming.
Subsequently, I answered 4-5 SQL queries based on hypothetical scenarios and some basic operating system questions.
This round also went smoothly; the interviewer was satisfied with my performance and commented on my strong frontend skills, suggesting I work on backend skills. On March 21st, I received a call from the recruiter offering me the SDE Intern + Full Time position, which I gladly accepted.
Thanking Almighty!! The Intellectual Odyssey Rages On
Interview Questions (8)
Given a string 'S', repeatedly delete all occurrences of the substring 'AWS'. After each deletion, the remaining prefix and suffix are joined. For example: S = 'ABCDAAWSWSFG' -> 'ABCDAWSFG' -> 'ABCDFG'. Find the resultant string after performing repeated deletion (possibly zero times).
A problem based on binary search, conceptually similar to the 'Koko Eating Bananas' problem on LeetCode. The specific problem statement was rephrased.
Multiple-choice questions based on graph theory. For each question, DFS and BFS traversals were provided, and I had to determine if they were correct.
Design a database for a music school with the following requirements:
- A music instrument can be played by any number of students.
- A student can play different types of music instruments.
- A teacher can only teach one instrument.
Implement a function to delete the Nth node from the end of a singly linked list.
Write a recursive function to convert a decimal number to its binary representation.
Discussion around ReactJS (given project built on it). Specific questions about HTTP status codes, different classes of status codes, and which status codes were most frequently encountered during project implementation.
Given a string, find the longest palindromic substring. I was asked to explain what a palindromic substring is, then describe a brute force approach, and finally optimize the solution using dynamic programming.