Status: 3.5 YOE , Mtech from Tier - 1
Position: SSE at MNC
Location: Bengaluru
Date: Oct 2021
Round 1 Coding :
Design a linear data structure where elements are inserted, deleted , get , set from front , back and middle.
We discussed on array and doubly LL approach. we agreed on DDL , he hinted to design data structure using C++ STL.
Finally was able to solve in optimally on given time using STL.
insert, delete, set , get in O(1) at all three places (front , back , middle ).
This round went great.
Round 2 : (same day)
After little introduction , straight to coding.
1)https://leetcode.com/problems/count-complete-tree-nodes/
Discussed basic DFS.
Presented him optimal solution , was asked to derive complexity of this solution.
I was able to write code recursive solution in next 15 mins.
He was impressed. Gave another problem.
2) https://leetcode.com/problems/find-peak-element/
We discussed on brute force and optimal solution.
Wrote code quickly. Some edge cases were missing. I told interviewer about shortcomings of code.
After that
I Asked him about couple of question to know more about profile, work & tech stack.
Round went good.
Recuiter informed me about positive responses from both rounds and want to complete next two round in next 3 days.
Round 3 : (after two days)
Basic introduction and deep resume scan.
0.0) Tell me the about the most challenging work you did in your current role.
0) Why you want to join our company ?
Why you want to swicth profile from ML , AI to Software development.
Tell me about a time when you failed.
Tell me about a time when you took an initiative.
Asked questions about profile I applied for ?
at last strength and weaknesses ?
in last 10 mins :
Round 4 (Director Round) [next day]
It was grilling and the most difficult of all.
After our basic introduction
Interviewer asked in detail about the current tech stack I am working on. Asked me to draw the whole pipeline of the frameworks involved in android achitecture.
Gave me very vague problem about copying of buffers in camera pipeline , was continously changing requirements and adding complexity to problem statement. Asked to design LLD of this new pipeline.
Basically was testing me on low level systems and performance optimisation.
Moreover this round was on OS fundaments, android achitecture [present work ] and smart pointers.
Applications of shared pointers.
At the end I asked some question about profile and what new projects would be there in next 2-3 years. [One must always good ask questions at the end of interviews]
After 2 weeks I got confirmation about the offer.