Tuesday

faang experience

A friend from inside send me the real feedback the interviewers submitted after my interview. If you ever got rejected after a great interview experience, this might help you to make sense of what the F happened.

I'll not reveal the company name, but from the interview pattern, you can guess it.
I interviewed for the position of SDE2 at this FANG company (CA, USA). I did all the coding and soft skill rounds really well (or at least that's what I thought until I saw the feedback)

3 coding rounds (20 minutes behavior +40 minutes coding)
1 behavioral (Manager- 60 minutes)
1 Design(20-minute behavior+ 40 minute design)

?1. Coding: Alien Dictionary (Leet code): feedback- No hire
I have seen that problem before, but couldn't remember the details, I was going to say I've seen the question before. But first wanted to make sure it's the same question, so asked a few follow-up questions, and I was thinking out loud about how I could approach it.
The interviewer jumped in and started giving me suggestions (I never asked for hints). In the spirit of showing my collaborative skills, I accepted the hints she gave me for a problem I already know how to solve! #facepalm! At this point it was too late to tell her I knew this problem.

Later reading the feedback, I saw in the 'Cons' section she mentioned-

  1. she had to give me hints to get to the optimum solution. (i was thinking out loud of a brute force approach)
  2. candidate missed variables in function and she had to point that out (it was during coding, I haven't started debugging)
  3. No time to ask to follow up questions (she thinks someone who can solve alien dictionary wouldn't know the time complexity of topological sort)
  4. Started on algorithm immediately (I was thinking out loud my thought process, like brute force, I didn't code or anything, just explaining how a human would solve the problem then optimize it for a machine)
  5. Unclean code. (Don't know the reason for the comment, I was given follow-up questions, and to accommodate all that I changed the whole code from a function API to an object-oriented stand-alone application, with class and member functions, maybe I should have copied the code over to another implementation).
  6. Didn't finish in 40 minutes (I finished coding, only further optimization and time-complexity and stuff were missed. and I don't think we have a better solution than topological sort for Alien dictionary)

?2. Coding: Given travel data {(name: travel), .. } find most frequent flyer. feedback- No hire
Coded up the solution, discussed optimization, complexities, follow-up questions. felt like a good interview. there were 2 interviewers (1 trainee).
Cons:

  1. problem-solving approach slow for SDE2, not bar raising
  2. there were 3 follow-up questions, only finished 2. (They never told me there were 3. During the discussion of optimization, I explained a lot of stuff, spending time in new code as well. Had they told me there was 3 part to the question I'd have kept the suggestions to a minimum.)
  3. (Trainee) didn't consider memory-efficient solutions/trade-offs. (It was I who brought up the memory concerns, like how huge the data is, like parallel processing/ batch processing, etc. But I never coded it, it felt out of scope for me, and they never asked me either)
  4. (Trainee) WEAK FUNCTION NAME (it was logical and a verb, I don't know what the F she was talking about)
  5. (Trainee) Missed input to the function (I created a function API but forgot a parameter in the function, I found the error myself and fixed it before debugging. Don't see the point there either)
  6. Biased towards his own methods (Funny!! the first interviewer said I'm taking hints, this one says I don't take hints)

?3: Manager round (Behavior): Feedback - No hire
I wasn't told this round is only behavior. I was trying to finish the answers quickly as possible so that we can start the coding. but it was entirely behavioral.
Cons:
EXP1: The answer didn't exactly match the Softskill she was looking for. Was more aligned to another Softskill.
EXP1: The candidate didn't directly talk to the customer (My immediate customer is the product owner, I can only talk to them, there are layers, I cant go find random users, my product is an e-Commerce website. Cant make sense of this comment)
EXP1: Did everything iteratively- trial and error. (I explained my approach and how 'Design thinking methodology' works. I was shocked that this experienced manager called Design thinking -trial and error and put that as a Con)
EXP2: Story not good enough for SDE2
EXP3: Story about my Startup- Candidate did not deliver the product. (I incorporated an LLC company in the US, and I'm on a student visa. By visa laws, I cant work for my own company. Plus, I cant scale the product without investment which I don't have. My journey was apparently not good enough)

?4. Coding: Given sales data log, {(product, state)...} find all products sold in all the states. Bar raiser round, Feedback- No hire
Two interviewers (1 Trainee)
Cons:

  1. Hardcoded 50 state solution, until the interviewer pointed it out. (The question was for the US, in the clarifying questions I made the suggestion to give me the number of states as input as well so that we can use my API for all the countries. But I forgot to update my API, it was a small change though, and the number of states as an input was not there in their question)
  2. The code wasn't clear. (There were multiple follow-up questions, like parsing data, cleaning input, error checks, etc. I updated the existing code and added other function APIs in the same code. It got a little crowded but wasn't that bad, I had the pressure of 40 minutes countdown too)
  3. Kept unneeded comments in the code. (When I add some logic, I leave a comment for readability. When there were follow-up questions I commend old code rather than deleting them. I agree that it made the whole file a little bulky)
  4. The Code wasn't bar-raising for SDE2
  5. (Trainee) Syntax errors like missing brackets
  6. Didnt use abstraction/ SOLID principles

Soft skill: I gave a negative experience and they put all my experience in the CONS!! LOL!! So much for honesty and humbleness!! It was not that bad of an experience, something about I failed to convince my team for something I wanted and instead settled for middle ground. Too bad I'm not arrogant enough for them. LOL !!

?5. Design: Given existing IoT-based product line and a powerful data ingestion pipeline. Design the dashboard, data persistence, Feedback - No Hire

Cons:

  1. Uncomfortable with requirements specific to ML edge devices. (I asked a lot of questions on the existing pipeline and product line. I wanted to understand why they have what they have, the way they have. Seems like he wasn't comfortable sharing that with me)
  2. Spend a lot of time bikeshedding. (Yes, I asked a lot of questions about the user and IoT devices to understand what's needed for a user. They wanted me to design a dashboard without telling me what's important for the User.)
  3. Overall architecture was rushed, lacked specifics.
  4. Not bar-raising for SDE2

The interview experience was good, I never thought I will be looked down upon for being simple and providing simple solutions.
I used to believe interviewers are there to help you, but NO, THEY ARE NOT! Maybe there are people who would love to bet on people, but these people were not.

I find it reveals the company culture a lot. Like, If there is a cutthroat competition in the team, they wouldn't need another competitor in the team. Or, if they get blamed for a bad hire, they don't wanna bet on people. Or, they're just not trained well enough to interview engineers/ leaders/ dreamers/ wild ducks!

I felt really disappointed reading the feedback, some of these comments felt really silly. Maybe it all comes down to the first impression. If you like someone, you automatically notice their strengths and notice their flaws otherwise.

Yeah, there were some really good comments too, I'm not sharing it here, it's already a long post. The bottom line is, those comments were apparently not strong enough to change their mind. It's also confusing to see how they weigh these comments, like, one interviewer wrote, "he used a technique I have never seen before which reduced the code lines and complexity(bitwise operation)", and yet wrote in Cons 'Not bar-raising for SDE2' LOL!!!

I'm really grateful to the friend who shared this feedback, disappointing, but still, I learned a lot. I don't behave like interviewers are my friends anymore or they are better than me. Often these people are from the same team working in the same position, just don't give them a chance to look down upon you!
Maybe, if they feel you are better than them they'll realize you are in a different league and they can't compete with you and hence not a threat to them in the team. During coding, don't give them anything more than they asked for, they might have follow-up questions, let them come to you with that. Sometimes they haven't even thought of or are aware of the optimizations you suggest. Try to start with the best/ optimum solution you can think off, you can explain logic using a dumbed down version, but code better be the optimum solution, a simple solution may not get you through 'Bar raiser expectation' for SDE2 or higher. Remember, 40 minutes just flies by.

Bottom line, COMMAND RESPECT, you can't expect or demand it, and if you are really bummed about rejection, just remember, interviewers, are also just people, sometimes scared, intimidated or clueless. Or it was just bad timing that you couldn't show off every checklist items they have. Reading my feedback, I felt, an automated system could have run this interview, just looking for items or signs to check, I didn't see much humane wisdom in feedback!

So, did it work for me?
Yeah, in the last 2 months...
Interviewed for SDE2 at SAP and got the offer for Senior SDE.
Interviewed for SDE2 at Uber and got the offer for SDE2 at the location and team of my choice.
I joined Uber (CA, USA)

Monday

windows batch save screenshot

      
set d=%date:~-4,4%-%date:~-10,2%-%date:~7,2%_%time:~0,2%%time:~3,2%%time:~6,2%
c:\tools\magic\magick.exe clipboard:  c:\workshot\%d%.png
   

test smtp server with powershell

Send-MailMessage -SMTPServer smtp.domain.com -To [email protected] -From [email protected] -Subject "This is a test email" -Body ...