D E Shaw Internship Interview Experience (On-Campus)

DE Shaw visited our campus (MNIT Jaipur) in the first week of August 2019 for a 2-month software development internship.

Technical Test (50 min)-
1. Find the maximum number of connected nodes in the graph. (Dfs)
2. Delete some numbers from the given array to maximize the difference between the sum of odd position elements and even position elements. (Greedy or Dp)
E.g. 6 7 5 1 9 2 10
Ans 23 ( 7, 1, 9, 2, 10)

I was able to solve both questions in 20 mins and because of this given very much preference in the interview. Those who were able to solve one and a half questions were selected for the interview round.
Out of 88 students, 11 shortlisted for interview.

Technical Interview 1 (50 min)-
There were two interviewers and both of them were very helpful.

1. The internal implementation of the list in python. (if python mentioned in resume)



2. Implement python list in C. My first solution is using struct and linked list and then move on to union and linked list and finally accurate one with a linked list with void * pointer.

3. Python dictionary internal implementation (hashing)

4. More questions on python decorator, generator, list, and other basic questions on python which I don’t remember.

5. C++ questions on unique_ptr and shared_ptr and their functions.

6. Difference between macros and typedef.

7. Explain Compilation process.

8. Explain Virtual function (vptr and vtable).

9. A brief discussion on multiple Inheritance, Diamond Problem, Solution.



10. Discussion on an operating system, why we need it, page replacement algorithm and basic questions. (if you don’t know much then you can skip it)

11. Different methods to call constructor, deconstructor, copy constructor and their internal working. Pointer case in copy constructor and how to handle it.

12. Questions on Computer Architecture. (As I am a student of ECE, I haven’t studied computer architecture so I skipped it.)

13. Questions from my resume that why I changed my primary language to c++ from python. My favorite data structure in python and c++.

14. Basic questions about myself what I do in my free time, my hobbies and my favorite projects and all.

15. Why I choose NodeJS over all other backend languages. I had given a very lame answer that because I learned only this that’s why I am using it. They laughed but were satisfied with the answer.

16. Short introduction and discussion on the project (for a very short time).

17. Explain Inline function and Differentiate between inline and macros.

18. Difference between function declaration and definition.

19. Use of header file stdio, whether functions are declared or defined in it and basic details of it.



20. Memory management diagrams. (Explained cache level 1, 2, 3, main memory, disk storage.) What makes cache fast? How these memories work?

21. File handling in c++ and what happened if we open a 10gb file in a computer with 4gb RAM.
I just gave some answers and they didn’t react at all.

21. Can a function be stored in python list or in void * pointer in c++? I said no but don’t know whether it is correct or not.

22. There are n goods with a weight of ith good is wi and m trucks. You have to load this truck in such a way that each truck should carry almost equal weights.
I gave a DP solution for m==2 and they don’t ask me to generalize it.

5 students out of 11 were promoted to the next TI. Your coding round score, attitude, confidence, and communication skills matter most. You must have a deep knowledge of at least one language. Read all the articles related to your primary language on geeksforgeeks.

Technical Interview 2(50 min)-
There were two interviewers in this round also. They were also very helpful and were providing necessary hints at the relevant times.

1. First, they make me comfortable and asked me what I had at lunch and some general questions.

2. They asked me my primary coding language and asked me why I used python instead of C++(my primary coding language) in today’s test.

3. Can you give another approach than dfs to the first question of coding test?
Sol: – Suggested bfs, brute force approaches but they were not satisfied. Then I provided a set and union approach and explained the working and uses of set and union. They were satisfied with the approach.

4. Design a data structure with Insert, delete and search operations in O(1)(worst case).
Sol: – Given them hashing approaches and different methods for collision handling but all the methods take more than O(1) in the worst case.
Then they told me that data will be in range 1-9999 only.
I instantly gave a solution with one array when a number is inserted make 1 at the position of the number and 0 for deletion.



5. Asked me to implement get random also in O(1).
Sol:- I was able to crack the solution using 3 arrays. One solution I found on geeks is here .

6. Question on Dp. In a matrix find the longest path with the difference between adjacent elements should be 1. You can start at any point and move in any 8 direction from the element.
Sol: – Used Dp and they asked to write the code on paper. They just checked logic, not syntax and asked me to dry run the code with a matrix given by them. I was able to pass all corner test cases.

7. Based on your experience with c++ and python which language you find most useful and why? Asked to compare the languages in every possible aspect.

8. Discussion on my projects and asked me to show any website that I have made. My portfolio website was hosted on GitHub so I showed that.

9. Asked me internals of NodeJS and JavaScript to which I answered I don’t know much internals of these languages.

10. Asked me why I used NodeJS and they want some technical answer, not like the previous one.

11. One very tough question on a Game theory which I couldn’t remember but I was unable to solve it up to the mark they are expecting. I gave a basic solution but they want me to design an exact algorithm that I was unable to.

12. Difference between strongly typed and weakly typed languages, dynamic and static languages and classify c++ and python based on the same.

13. List comprehension in python and tried to confuse me with python by writing string + int and many other functions that would give a compilation error. Output prediction for python codes.

After this round, only 2 students were promoted to HR round. In this round, their main focus was on my way of thinking. Don’t stick at a single solution always try to explore various other possibilities.

HR Interview (15 min)-
1. How was your interview?
2. Is this your first experience? How was it?
3. Tell me about yourself.
4. Why DE Shaw?
5. Your top 3 dream companies apart from DE Shaw.
6. How was the Test?
7. On a scale of 10, how would you rate today’s test? Are there any students who are really good coders but unable to crack the test?

Two students were selected for the summer internship and I was fortunate enough to be one of them.
if you want then after each round you may ask some questions to the interviewee.
e.g. you can ask about technologies, languages used in their company or about the environment.

All questions were available on https://www.geeksforgeeks.org/ and it is the best site I found for interview preparation. A big thanks to the whole geeksforgeeks team and contributors.
This article is contributed by Suryaprakash Agarwal.
Your DSA knowledge and soft skills are key to your success.
Best of Luck for your Interviews.

Write your Interview Experience or mail it to contribute@geeksforgeeks.org




My Personal Notes arrow_drop_up

Check out this Author's contributed articles.

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.


Article Tags :

4


Please write to us at contribute@geeksforgeeks.org to report any issue with the above content.