Current position: Software Engineer in a leading chip designing company
Location: Hyderabad
Experience: 4+ years
Interview Dates: 5th May 2022 (first round) - 7th Jun 2022 (last round)
Rounds (Was directly called for virtual onsite. All rounds were virtual and held over a Zoom call)
- Telephone Round (1hr): Techinical questions mainly. E.g: Was asked to explain full lifecycle of a browser request (What happens when you type "www.google.com" in a browser search bar and press Enter?). Was also asked to explain how to add and compare two 100 digit numbers if the computer register can store 10 digits at max. Was asked few other questions about protocols, networking (TCP/IP, HTTP) etc.
- Machine coding Round (2.5hrs): Was asked to develop a web application similar to Linux's "tail -f" command. A file would be present on the server side containing potentially many lines of text. The UI will only make one request to the server to fetch the last 10 lines of the file. After that, any subsequent updates to the file should be appended directly to the UI without refreshing the browser. Had to write optimized code to ensure that the last 10 lines are efficiently fetched and that the updates are pushed to the UI without page refresh. You are allowed to use the internet and any programming language is allowed. (I used Python with the Flask framework)
- Engineering Manager Round (1hr): Started off with questions about my project and what tech stacks I have used so far. On hearing my experience with React, he actually asked a few questions about what version I used last and what has changed since then and all. After that, he asked me to design the database structure for a simple version of Twitter with the following requirements: Users can post tweets, they can see all tweets on the home page, they can see and update their profile and see all their own tweets, they can like and retweet and can see the number of likes and retweets of a post, they can hold the number of likes text and see all those who have liked the post. After that the interview ended with a few behavioral questions and turntables.
- Director of Engineering Round (1hr): This was entirely a behavioral round and the interviewer really dug deep to undestand the tasks that I have accomplished in my current project and how challenging they were and all. At times I got a bit nervous as some of the tasks that I had done, could actually have been done better, but I still stuck to it and defended my work. This was an intense discussion of my overall work and contributions so far along with my career goals as an Engineer and where I see myself in the future.
- HR Round (30mins): This round was mainly to guage me as a person and what I aspire in life. This was a more chill round and the interviewer was very relaxed and it felt like it was over very quickly. Overall, this is a round to let them know about yourself and how you are as a person, so that they can understand you better.
Result: Received the offer four days later. Find more details about the offer here: https://leetcode.com/discuss/compensation/2141926/browserstack-ssde-remote/1433817
Thoughts: Overall the interview experience was very good. HR was friendly and supportive and guided me throughout the process, with a brief idea of what every round might look like.