Park+ SDE interview Experience
Summary
I applied for an SDE2 role at Park+ but interviewed for SDE1. After clearing four technical rounds, including Data Structures & Algorithms, System Design, SQL, and core Computer Science fundamentals, I unfortunately received no response and was effectively rejected.
Full Experience
I initially applied for an SDE2 role at Park+ through a Google Doc shared by their recruiter on LinkedIn. The recruiter reached out and suggested I interview for an SDE1 position, which I accepted. My resume highlighted Java, Spring, and DBMS, and I have 2 years of experience.
My interview process consisted of four distinct rounds:
Round 1 (May 18, 2024)
This round was conducted by a third-party hiring agency named Jobtwin and lasted about 50 minutes out of the scheduled hour. It began with an introduction, followed by questions on my current project's architecture, object-oriented programming concepts like multiple/multilevel inheritance, function overloading/overriding, and output prediction for related code examples. Database questions included primary/composite keys and different types of joins. I was also asked about exception handling in Java and the possibility of creating custom exceptions. The DSA question was Decode String. Finally, we discussed the importance of unit test cases. I received a call from the Park+ recruiter within 2-3 hours, informing me that I had cleared this round and that the second round would be scheduled for Monday.Round 2
This 1-hour round focused heavily on DSA and CS fundamentals. I was given two DSA questions: one to partition a string into parts with no common characters (e.g., 'ababcbacadefegdehijhklij' -> 3 parts) and another to find the size of the largest BST within a given binary tree. I also had to write an SQL query to find department-wise total salary in ascending order. CS fundamental questions covered the differences between HTTP and HTTPS, the detailed process of typing a URL and hitting enter in a browser, mutex vs. semaphore, and database indexing types. The next day, I received a call to schedule the third round.Round 3 (May 23, 2024)
This 1-hour round started with an introduction and an explanation of Park+'s tech stacks and products. I was then asked to complete an on-screen test with two SQL queries, each to be solved in 7 minutes: one update query and one select query usingUNION. The system design challenge was to design a parking management system for malls and buildings. We also discussed the concepts of stateful and stateless systems. The recruiter called the next day to schedule the final round with the DOE.Round 4 (May 27, 2024)
The final round was also 1 hour. It began with an introduction, followed by an SQL query to find the employee with the maximum salary in each department from anEmployee table. The coding question involved merging two sorted arrays in-place such that the first array holds the N smallest elements and the second array holds the remaining M elements. Further questions covered operating system concepts like deadlock, paging, page miss, Round Robin, FIFO, and starvation, along with networking (sockets) and database normalization. The interview concluded with a classic puzzle about transporting mangoes by a horse over a distance.Unfortunately, after this final round, I received no response from the recruiter, indicating that I was rejected.
Interview Questions (27)
Explain the architecture of your current project.
Explain the concepts of multiple and multilevel inheritance.
Explain the concepts of function overloading and overriding.
Determine the output of provided example codes related to function overloading.
Explain what primary and composite keys are in a database.
Explain different types of joins in SQL.
How is exception handling done? Can you create your own custom exceptions?
Given an encoded string, return its decoded string. The encoding rule is: k[encoded_string], where encoded_string inside the square brackets is being repeated exactly k times. Note that k is guaranteed to be a positive integer. You may assume that the input string is always valid; No extra white spaces, square brackets are well-formed, etc. Furthermore, you may assume that the original data does not contain any digits and that digits are only for those repeat numbers, k. For example, s = "3[a]2[bc]" decodes to "aaabcbc".
Why do we write unit test cases?
Given a string, find the number of parts such that no two parts have common characters. For example, Input: ababcbacadefegdehijhklij, Output: 3 (parts: ababcbaca, defegde, hijhklij).
Given a binary tree, find the size of the largest Binary Search Tree (BST) within it.
Write an SQL query to find the department and department-wise total salary, displaying it in ascending order of salary.
Explain the differences between HTTP and HTTPS.
Describe what happens when you type a URL into a browser and hit enter.
Explain mutex and semaphore.
Explain what indexing is and its types in databases.
Design a parking management system for malls and buildings.
Explain the concepts of stateful and stateless systems.
Given an Employee table with columns ID, Name, Salary, Department, MangerID, DOB, write an SQL query to find the employee with the maximum salary in each department.
Given two sorted arrays of integers, Arr1 (size N) and Arr2 (size M), sort them in-place such that Arr1 contains the first N smallest elements and Arr2 contains the remaining M elements. For example, if Arr1 = [1, 3, 5, 7] and Arr2 = [2, 4, 6, 8, 9], the output should be Arr1 = [1, 2, 3, 4] and Arr2 = [5, 6, 7, 8, 9].
What is a deadlock?
What is a socket?
Explain database normalization and its types.
What is paging and a page miss?
Explain Round Robin and FIFO CPU scheduling algorithms.
What is starvation in operating systems?
Points A and B are 1000 km apart. There are 3000 mangoes at point A. A horse can carry 1000 mangoes at a time and it eats 1 mango for every 1 km traveled. What is the maximum number of mangoes that can be transported to point B, given there is only one horse?