[Reject] | Browserstack| Senior-SDE | Remote | February-24
Anonymous User
7064

Background

  • Aprox 2.5 YOE and layed off from a current company
  • Direct apply on portal no refferal
  • Applied in Dec-23 start, immediately heard back within a week

1. Techinchal Discussion (1hour)

  • Basic questions on what I did in previous company brief discussion on project
  • Questions on features which I contributed, challenging tasks I did and how I fixed them etc.
  • Very simple problem (no code only logic): given two number so big that they cant be added into a variable, how wil you add them. Simple soln of taking them as string and pushing answer into a string and some cross questions around different base additions
  • Feedback : As per HR in this interviewer was convinced we are good to go ahead with the further rounds.

2. Machine Coding (2.5hour) - scheduled almost 3 weeks, not delayed from HR but I scheduled late due to some personal work

  • Basic questions on intro not very much time wasted.
  • Problem
Problem statement
This problem requires you to implement a log watching solution (similar to the tail -f command in UNIX). However, in this case, the log file is hosted on a remote machine (same machine as your server code). The log file is in append-only mode.

You have to implement the following:

1. A server side program to monitor the given log file and capable of streaming updates that happen in it. This will run on the same machine as the log file. You may implement the server in any programming language.

2. A web based client (accessible via URL like http://localhost/log) that prints the updates in the file as and when they happen and NOT upon page refresh. The page should be loaded once and it should keep getting updated in real-time. The user sees the last 10 lines in the file when he lands on the page.



Problem Constraints
The server should push updates to the clients as we have to be as real time as possible.
Be aware that the log file may be several GB, how to optimise for retrieving the last 10 lines?
The server should not retransmit the entire file every time. It should only send the updates.
The server should be able to handle multiple clients at the same time.

The web page should not stay in loading state post the first load and it should not reload thereafter as well.
You may not use off-the-shelf external libraries or tools to read the file or provide tail-like functionalities.


We will be evaluating you for code quality, testability, modularity, corner cases, etc.
  • My review :
    • Interviewer just said code the solution don't waste time in explaining approach or etc at the end of the round we will just review the solution and we want to see how you reach to the solution.
    • Initially I was doing drawing of design etc but later I jumped right into implementation, I coded everything in java with spring framework created using web sockets and linux based inotify or also called FileWatcherService in
    • At the end of the round soln was working and on interviewers request I also created a basic frontend with text box
  • Feedback :
    • During demo I explained the approach interviewer said you are creating a race condition by creating two topics. My approach was that there can be one constant topic only for posting first 10lines off code and later general updates would be on seperate topic, but the panelist said it will raise a race condition. I explained its the same web socket connection, so how can we create race condition. He gave few conditions and all ran as per expectation but he said it will blow up on big testcases(it was a panel of one senior SDE and a tech lead). But I think they are senior there must be some lag in my knowledge
    • HR said as I was able to code solution hence they are moving ahead but the panel thought my experience was rigged, means I alread knew the solution and hence like that I only coded. They wanted to see me google and code.
    • They said we are moving ahead but your score is on very lower end
  • My honest confession
    • Well while preparing I saw the question multiple times, but if they are asking everybody the same questions I dont think its much of my responsibilty
    • And swear to god the solution which I coded till the date I am typing this, nobody has written a similar code like me, everybody is coding the solution with a cron job or anything. But my approach was a completely event driven approach where as per the solution when a change is detected in the file the log is printed on frontend.
    • The only mistake I did was like HR told me beforehand that problem will be on websocket, webRTC etc so prepare well on those. And during preparation I marked some of the good documentations and few CDN pages for frontend which I found interesting but not a single page was like copy paste code
    • And during the interview only I googled code and used filewatcherService to code my approach. But most probably using these bookmarks paid me a heavy cost.

3. Engineering Manager Round(The warnings)

  • Started with brief intro on project I did what I did etc.

    • One controversial topic I touched was a monolithic vs microservice architechture(the hole in titanic ship). So in my previous company I worked on a similar initiative like this one.
  • So a 5-10mins discussion on why you did that migration the exact reasons

  • After a lot of efforts I was able to convince manager why I did but as it was a huge effort in my previous company

  • Problem Solving : A variation of next greater element to right of stack

  • Pretty easy and was able to give all the approach and explain it

  • Behavioural questions like

  • My most challenging tasks, having an disagreemenet with managers

  • How did you pointed your story what was framework to point stories : basically wanted to understand agile flow

  • HR Feedback

    • Problem solving was great and inteviewer was completely convinced on the points
    • Only on some points articulate your points with well structured manner so that you are able to explain them with correct reason, you know the technichals but telling them at wrong scenarios, so articulate well your answers
  • My Feedback

    • With problem solving in hand I knew there are very less reasons of rejections in this round
    • But I am such an fool that I touched a very controersial topic of microservice vs monolith. Both the architechture are good but in one interview its tough to convince anway which one to use. So be wise on how you structure your work. I should have just said simply that "I lead some of the improvement efforts of bisecting services into seperate working services" but shouldn't touched this topic.
    • And fool thing I didn't noticed when HR gave me this feedback, but this will pay me a cost later
  • Directorial Round

    • Started with basic project intro what I did
    • Again during my introduction I touched this word of microservice migration efforts and during that again we had 15min long conversation but interviewer was not ready to get convinced that why we did migration etc, I tried multiple points but every reasoning he said that thing is also possible in monolith
    • But at the end seeing time consumption he moved ahead
    • Keep asking some behavioural questions
    • What are your strength and weakness in project
    • What were you responsible , what were features you were leading
    • At one point he said what part you worked on most, I said on backend services. So he asked what parameters you monitor for your service, I said memory, CPUs, disk IOs, JVM consumptions, GC pauses etc. But I still didn't know what exactly he wanted to hear. I also told some API monitoring params like 200 response code on our API server etc. but don't look like that convinced him
    • Some production issues you solved, I told about one heap dump analysis improvement which did.
    • Anyway interview ended and the way he responded I sensed some disagreement
  • HR Feedback :

    • You were not able to defend deep dive about your project, you weren't aware about technichals of your project. Don't match cultural fitment
    • Hiring committe voting with a -ve on further.
  • My conclusion

    • HR was the one of the best HRs I ever talked, very cooperating and every step understanding my problems and concerns
    • Some pannelists just wanted to hear there own build answers. Not saying just because I am rejected. The very first round was with amazing guy, EM was also bit tough guy but nice .
    • Now I feel very sad and cutted up because this opportunity was one of the major ones I had, I spent much time preparing and busting my head for some new opportunities but no success, and also I don't have a job at the moment so bit more sad that lost one opportunity just with a non-tech rounds.
    • I feel fool of myself just because I touched wrong topics in wrong moments and structured them wrong.
    • But I hope probably I am able to provide some direction to other preparing candidates
    • Just want to clear, I do not believe in calling the process rigged or wrong, or just pointing the interviewers bad just because I am rejected, I thought of just clearly specifying whatever I felt. I was much clear on these reviews as I keep noting them for my self improvement, here I just have documented all of those reviews for others also just because this community helped me a lot
Comments (18)