Role: SDE 2
College: Institute of Aeronautical Engineering (Hyderabad)
Interview Date: March 2024
Interview Type: Full-Time (Off-Campus, LinkedIn reach out)
Result: Selected
Difficulty: Medium to Hard
Rounds: 3 rounds
Topics Asked: Data Structures, Algorithms, Object-Oriented Programming, Design Patterns
Experience:
The candidate was contacted by a Pine Labs recruiter on LinkedIn for an SDE 2 role. The interview process consisted of three technical rounds.
Round 1: Technical Interview (1 hour)
This round began with introductions. Technical questions included:
- "Balanced Binary Tree": The candidate was asked to write code to check if a binary tree is balanced.
- "Polymorphism and Inheritance": Questions were asked on these OOP concepts, followed by an implementation task for polymorphism. The interviewer specifically asked to create a base class with a
show() function and a derived class with its own show() function, then call both from the main function, with follow-up questions on the code and runtime polymorphism.
- "Singleton Pattern": This design pattern was discussed in detail. The candidate wrote code for a Singleton class and was asked to implement a mutex lock for thread safety, with detailed questions on the implementation.
The round concluded with the candidate asking about Pine Labs products and the interviewer's experience.
Round 2: Technical Interview (1 hour)
Similar to the first round, it started with introductions. Technical questions included:
- "Kth Highest Element in Vector": The candidate explained an optimized approach using a min-heap with O(n * log k) time complexity.
- "Sort Array of 0s and 1s".
- "Find Element in Sorted Matrix": The interviewer asked for an optimized approach considering the sorted nature of the matrix.
- "Custom Class and Sorting": The candidate was asked to create a
Person class with id and name attributes, then sort a vector of Person objects based on ID.
- "Blocking Inheritance": The interviewer asked how inheritance could be blocked without using the "final" keyword.
Round 3: Technical Interview with Hiring Manager (2 hours)
Despite being with the hiring manager, this round was highly technical. Questions included:
- "Class with Members": The interviewer asked the candidate to create a class with an integer, a char pointer, and a const long, along with constructors, destructors, and copy constructors, and then write code to call it in the main function.
- "Adding Assignment Operator": The previous class was extended by adding an assignment operator.
- "Inheritance Concepts": Inheritance concepts were discussed in detail.
The next day, HR called to inform the candidate of their selection. Key takeaways included the importance of two-way communication, discussing design patterns and OOP concepts in detail, and explaining one's thought process.