I had an interview yesterday with Twitter for a senior software engineer role. I applied for the position about three months ago and after multiple rounds of screening, yesterday was the final round of technical questions. There were three parts with two person asking me questions in each part:
1) system design question
2) coding exercise
3) behavioral questions
I got a call today saying that I have been rejected. But I was also surprised that HR person gave me a feedback which usually never happens. I was told the first round and third round went great and they were really "impressed" with my answers. However, the second round I "didn't listen to interviewer's feedbacks" and I am "not proficient" in selected language and lastly said I should "apply to other teams". I thanked the HR person for their time and said goodbye.
After a few hours I started to think about the HR's feedback. It really hit me hard.
Throughout the interview, one of the interviewers used "hands up" feature of Google meet but I didn't hear the sound that he raised his hands. The other interviewer asks me question directly without using "hands up" feature to gain my attention. I tell this interviewer that I do not hear the sound and I do not get a notification that someone raised their hand as I am working on the code so please just ask your question instead of doing that. But it causes a misunderstanding.
Also, during the second half of the coding part, other interviewer said: "oh, he will be working in your team". Suddenly, I see a major change of attitude of that interviewer who is also senior engineer. He has been quiet before this point but now he starts nitpicking on my coding style, asking me explain the code even though I explained my code multiple times already, asks hypothetical questions all after my code has passed all the tests. This is at 40 minutes mark. Then he leaves for 7-10 minutes and comes back. During that time, I work on improving the code with the other interviewer who was polite and understanding. When he comes back he starts asking me questions about edge cases.
The second item HR said was I am not proficient in the selected language (Java). But I have been teaching (and TA) Data Structures with Java during my PhD studies for 2 years so I am very sure that's a made up complaint.
I may be wrong but I feel he thought I am going to replace him or work closely with him and doesn't like my attitude. Overall, I heard a lot of good things about work culture at Twitter but I feel disappointed.
Sorry for talking too much, I wanted to share my experience.
My Google interviews were similar. A guy had me write an algorithm for scoring bowling, then after everything asked me to "turn it into an API" without specifying anything beyond that.
I asked a few questions about the use cases and he refused to expand.
At that point I had no choice but to just start adding weird methods and turning the one-shot algorithm into an iterative scoring class (where you could calculate score as you added frames) and the guy started to nitpick literally everything I did.
"Why did you indent here?" Because a new block of code is there. "Why did you put the brace on the same line?" Because I like to follow 1tb style personally, but I can change it if you'd like. "Yes please do."
Then was rejected, without any feedback other than "perhaps consider brushing up on your coding abilities, or take a code camp and try again in 6 months". I've been writing code for 20 years, 11 professionally. It is, quite literally, almost all I ever do.
Ultimately realized how terrible of a company Google was, anyway, so I dodged a bullet in the end. But you just kind of have to learn to roll with these punches.