Hi everyone, I interviewed for DE Shaw recently. The recruiter contacted me through email, and I received a hackerrank test link.
Round 0 - Hackerrank Test
8 MCQs from CS fundamentals, OS, DBMS, CN.
8 Aptitude questions (probability, p&c etc.)
3 Coding questions. I'd these were Leetcode medium but each question had a time constraint. I was able to right the full working code for the first question only. Wrote some code for the other two but it didn't pass anything.
Got a rejection mail after a couple of days. Then recruiter contacted me after some days saying they liked my resume and I was shortlisted for another team.
Process begins on Sunday, 11 am
Round 1 - Interview
First question was find number of subarrays which had k odd numbers. It can be done using two pointers.
After that questions on OOPs related to abstract class and interface. A question related to SQL query. Basic questions related to React (reasons a React website might work slow).
Round 2 - Analytics/Prob stat Interview
Interview revolved around random number generators. We discussed how they can be implemented, how can we measure the randomness. I couldn't recall much, but talked about entropy, we can draw inferences from a measure which calculates the deviation from the ideal answers, weighted sum of probabilities etc etc. I guess he was impressed by my thinking process and approach so he said to just implement the code to calculate deviation. He asked what error you will tolerate etc.
After he asked me 2 puzzles, one was given 10 bags having infinite coins weighing 1 gram, only 1 bag has 1.1 gram coin, min tries to find that bag using weighing machine and the other one was also a standard puzzle.
After this he asked me find the longest reward path in matrix, we can move only down or right (this is an introductory DP problem) and a SQL query.
Round 3 - DSA interview
First he asked me given an array, consider all subarrays, return the subarray with kth largest sum. I discussed the approach using prefix sum array, maintain a heap of size k as an optimization. I was coding alongside, and he stopped me as I guess was convinced with the approach.
Then he discussed searching in a rotated sorted array. Then asked how would you solve the same question if the array can be sorted and rotated in any order. I discussed with him that I would compare the first and last elements, and probably the middle element to discuss what case we are dealing with, was stuck for some time then he said I guess we should move to a new question as you can anyway solve it given a bit more time. I said ok.
Then he asked given a vector of words and a string, find if the string can be formed using the words. I gave him an approach using trie and explained him. He asked can you do it using DP, I came up with a DP approach and he asked me to write the pseudo code for the same.
After this he asked me an SQL query (it's related to correlative subquery or something like that, he mentioned after I gave the solution).
Round 4
This was mainly focussed on databases, what is normalization, normalization on a given database, some questions related to OS, some related to OOPs. Asked me if I know something about Design, I said I know some design patterns. Also asked me some SQL queries at the end.
Told him that I learnt the CS syllabus in the last 1 week for this interview, said he was impressed given that I am from a non-cs background. But said there's a slight risk associated with me being from a non-cs background. And it's upto the firm whether they want to take that risk. He offered me ops role, I said no I am pretty confident that I can handle the learning curve associated with the Dev role.
It was 5:30 pm in the evening, recruiter said they'll contact me on Monday for the HR, got the rejection on Tuesday.
I never expected that I'll interview with DE Shaw, forget making it till the final round. The rejection made me sad for a couple of minutes but the confidence I gained while preparing for the same was immense. Almost all of the interviewers praised me and said I am on the right track but yeah they took my Sunday.
If they don't consider non-cs folks, they shouldn't interview them in the first place. Should look out for chicks instead. Might improve the company's "diversity".