I applied on the company’s website for the Full Stack Developer role, Experienced, and appeared for the Scalar Academy/InterviewBit interview.
Each round was an elimination round.
Round 1: 1-hour Coding Test on InterviewBit platform.
- The Test had 2 medium difficulty coding questions and 5 Aptitude Based MCQs. After this round Recruiter of the company called me and scheduled further technical rounds (virtual) to be conducted within a day and briefed me about the interview process which includes a further 4 technical rounds.
- There were many other candidates appearing or the role in parallel on the day (Saturday).
Round 2: Machine Coding Round (2-hour)
- There was an option to appear for Frontend or Backend in this round. I chose Frontend. We were briefed upon the assessment which had 7 functionalities to be implemented to make a Search Typeahed without using pre-existing libraries. We had the freedom to use any framework or not use any framework and code it in Basic HTML/CSS/JS.
- I submitted the assignment on time and waited for the results. The recruiter called me to inform that I’ve cleared Machine Coding round and next round of interview will be in next 30 mins.
Round 3: Data Structures and Algorithms (1-hour)
- Q1. Given an array of integers, the task was to remove K-elements from it such that it gives the minimal maximum difference between the highest and lowest number.
A. At first interviewer asked me to discuss my approach first rather than jumping to code out the solution. I gave a Brute-Force approach and my interviewer asked me its Time Complexity, then he asked me to optimize it. After thinking for a while I gave an efficient approach, then he asked me to code the solution on Google Docs. I worried about syntactical mistakes but he told me to not worry about it. He asked me to optimize some loops which I did, then he asked me if it can be further improved to which after thinking for a while I said No. He then told me if we put ++i instead of i++ it’ll optimize further.
- Q2. Given a string I have to find the length of the longest substring with at most k-distinct characters.
A. I discussed a Naive Approach to the problem and did a Space and Time Complexity Analysis to which the interviewer told me to optimize it further, I came up with an efficient approach using HashMap and coded the same which took a little while. After this, the interviewer said that he was done with the interview.
After this round, I got a call from the recruiter to inform me that I have cleared this round and the next round is in 5 minutes.
Round 4: Frontend Round (1-hour)
- How to implement a simple accordion Menu using HTML and CSS only?
- What is HTML iFrame tag and where is it used in real-life examples?
- What is Box-Model in CSS?
- How to make a Triangle using HTML and CSS without transform and animations?
- What is the difference between var, let, and const keywords?
- What do call() and bind() functions do? — Unable to answer
- Explain React Component Lifecycle.
- What is the difference between a Functional and Class Component?
- What are React Hooks and explain them?
- What is redux and why is it used?
- Explain Debouncing and Throttling.
After this, the interviewer told that he is done with the interview. I got a call from the Recruiter to inform me that I have cleared this round I’ll be having next round in an hour.
Round 5: Backend Round (~2 hours) | System Design
- The interviewer apologized for being late and then he asked me about myself. He briefed me about the round and pulled out an assignment sheet for this LLD round. I had to design an ER diagram for a Meetings app with around 10 use cases and functionalities each briefly written and explained by my interviewer. Also, I had to specify the service APIs with appropriate parameters and HTTP Methods for the application. I completed the ER diagram and the interviewer added some more use cases for me to improve the application schema. He then asked me to specify all the necessary keys and types of relationships between all the tables. I completed all the necessities and then the interviewer told me that he is done with the interview.
- After this round, I didn’t get a call from the recruiter as it was pretty late.
- I got a call after a couple of days from the recruiter informing me that they need to take an additional Frontend round for me and scheduled the same for the next day.
Round 6: Frontend-II (1-hour)
The interviewer introduced himself and asked me about myself. He asked me to explain my projects to him and my learnings. Then he started with the technical questions-
- What is Adaptive Design?
- How is Adaptive Design different from Responsive Design?
- What is the different types of browser storage and their differences?
- What is the difference between setInterval and setTimeout? Explain with example.
- What is debouncing? Show Implementaion of it. — I coded the debounce function and was told to improve it to make it production-ready. I was unclear about the requirement but coded as per my understanding but the interviewer didn’t seem to be satisfied (As per my opinion).
Then he told me that he is done with the interview and if I had any questions for him to ask. I asked few questions.
After this round, I got a rejection email from the recruiter after a couple of days.
Thanks for reading out! Please comment.
Whether you're preparing for your first job interview or aiming to upskill in this ever-evolving tech landscape, GeeksforGeeks Courses
are your key to success. We provide top-quality content at affordable prices, all geared towards accelerating your growth in a time-bound manner. Join the millions we've already empowered, and we're here to do the same for you. Don't miss out - check it out now!