Hello there, just 4 months ago I got a job in D.E. Shaw through campus placements in my college NIT Trichy. To help my juniors and students from other colleges as well, I finally decided to write about my overall experience with the recruitment process of D. E. Shaw. But before that, lets tell you in brief about the company.
D. E. Shaw is an investment banking company which basically deals with investing other people’s money into right places to make more money out of it. It invests in a lot of places like share market, start ups, capital of other companies, so called “hedge fund”, etc. So in short, its a money-making machine. David E. Shaw worked at Morgan Stanley before leaving that job and founding the world’s biggest hedge fund company with total assets estimated at $30 Billion, almost same as Morgan Stanley now. Anyways, that’s enough history for you to know.
D. E. Shaw is basically a New York based company but has its offices all over the world, including Hyderabad, Mumbai and Gurgaon in India, but if you’re being recruited from India for a software job, you are most likely to get placed in Hyderabad. They’re known for their tough recruitment process and high pay all over the world. Though almost all of their work is related to finance and market, they’re doing a lot in Computer Science research also. Amazon founder Jeff Bezos was a D. E. Shaw employee before he left and founded Amazon.com. In India, the D. E. Shaw’s main office is in Hyderabad and its fully related to Software Development and hence called “D. E. Shaw India Software Limited” (DESIS).
Now I will not bore you much and start with the process.
D. E. Shaw generally prefers computer science branch students but they’re not as strict as Amazon or Google. My branch is ECE (Electronics and Communications) and I still got through. But its quite difficult for non-CS students to even qualify for the process, leave alone the question of getting recuited. The reason being they put their CGPA cutoff for them as 8.5 ! while for CS students it was only 7.0 . Luckily, my CGPA was above the cutoff and I was allowed to sit for the process.
The recruitment process consisted of an online/written round followed by interview round. In their presentation before the process, they’ll scare the hell out of you by talking about their requirements and minimum skills but don’t get disheartened. In my case, they said they want students with – “Computer science background, Excellent coding skills, Excellent communication and soft skills, and knowledge of Compilers theory, Operating Systems, Networking, Automata, DBMS, Web technology, and god knows what ..”. Being a non-CS student, I never had a formal course in any of those subjects, but somehow owing to my interest I knew OS, Networking and Web technology. Still I was pretty scared after seeing their long list of requirements.
Anyways, the first round began. Initially they took an online round but due to some network problem, they had to scrap it. Next morning, they came up with a paper based round. There were 2 sections. One was aptitude and one was coding, both being objective type. The aptitude section was as lengthy as difficult. No one could have solved all 30 questions in 30 minutes time. Infact, I was only able to attempt 10. Next 40 minutes or so was reserved for the coding test. The questions they asked covered almost all the topics they mentioned in their pre-placement presentation. But the maximum number of questions were related to getting output or finding errors in C, C++ and JAVA codes. The questions they asked from theoretical subjects were more or less the basics and easy. Some questions were also for testing your understanding of pre-written codes. In those questions (which were quite a few in number), you will be given a huge chunk of code with some part missing and you have to identify which snippet among the options best fits in there. Sometimes its given what the code is supposed to do, but in some questions it was also your task to find out. So I think the differentiating factor is how well your actual coding skills are. And you need to know these 3 languages atleast – C, C++ and JAVA. Again, similar to aptitude section the coding section was also very lengthy with some programs extending upto 1 or more pages. I’d recommend to skip those programs initially and jump to other easy problems first. Then if you have time, you can come back and attempt them.
In the end of the coding round, they had one special subjective test in which they asked you to write the full code in any language for the give problem statement. In my case, the problem was : “Given a tree, find the depth of the largest binary search tree it contains.” I know it sounds simple enough but only until you start coding it. And while writing codes of such problems, make sure to display your data-structures and algorithmic skills and not your knowledge of STL libraries. Even if you’re not able to solve the problem and you used some complicated data structures (by using, I mean you created them from scratch without any help from STL libraries) and some good algorithms, then they are likely to appreciate your coding skills if not your problem-solving skills. And just a hint although I think you already know this – BST are the favourites of all software companies :). Overall, I sat for 2 companies including Amazon and both of them had a coding problem related to BST only.
And finally when submitting your answers, they may ask you to submit your resume along with your photo. A good CGPA, academic club memberships and enough number of projects are likely to get more of their attention than if you top the aptitude test. I think a good resume is a very important factor for D. E. Shaw people.
Based on all these factors – your CGPA, resume, first round marks, your coding skills, they’ll shortlist a few people for the interview. In my case, they selected 12 including few post-graduates. In the interview I had 3 rounds. Very unusual but true, I had my HR round first ! I think its because technical people were occupied with others. By the way, I was also the last candidate to get interviewed. Its not that they took interviews serially one-by-one, infact there were many parallel panels, but all others had atleast 1 round when I had none. So don’t think if you’re the last candidate you have less chance or so. Although its a common phenonmenon with many recruiters but not with this one I believe. Getting back to HR round, it was more of a stress round. For the first 5 minutes, the interviewer didn’t ask me anything and kept gazing at me with his hands on his chin, like he was watching a boring show on TV. I didn’t know what was happening and I kept murmuring something trying to start a conversation but he won’t even respond. Finally, I took the courage and gave him my resume asking “Would you like to take a look on my resume?”. This time he responded and started asking me questions seeing my resume. Well, to my utter surprise, he asked me “Why I did a project in IISC ?”. I never expected such a question, I just said that I was free during vacation and I didn’t get project from anywhere else and I had some contacts there so I got one. Later, I realized that I gave a perfect answer. The reason any company would ask that question is because IISC being a research institution of the country, any student who might do a project there might also go for higher studies instead of doing a job after graduation. And take my word, if any company gets even the slightest smell of inclination towards higher studies after looking at your projects, you’re out no matter how good you are ! Due to my statement I was saved. But after that, I immediately removed my IISC project from my job resume. Same I’d advise to all of you, to remove all of your research-based projects from your resume when you’re sitting for a company. But in case all your projects are like that, then rephrase the project title and description in your resume so that it looks more like a coding project and not a research project. If you need help, you can leave a comment and I’ll try to reply.
Anyways, then there were usual HR questions like your hobbies, interests, family background, history of my town, etc. He did ask me some technical questions also like on seeing the word ‘Hacking’ in my resume, we started discussing upon hacking, its types and laws related to it. Totally random you’d think but hey my friends had worse. One of my recently placed friend Prasad Khare who got placed in Atmel, was discussing the movies Inception, Hurtlocker and US government policies during his HR !!
HR went for about half an hour and then came my first technical round. They started off with puzzles, which were quite easy and common ones. Then only after 2 puzzles they started asking me about my favourite subject and language. I told them OS, Networks and C++. But instead they asked me all about Java ! I kept telling them I hadn’t revised Java but that didn’t help. They’ll ask some question and I’ll write the code in C++ and they would ask me to convert it to Java. They’d also ask the equivalents of C++ OOP concepts in Java. Its not that I know nothing of Java, I have actually done a lot of coding in it, but that day and time, I was totally unprepared. So I kept guessing a lot based on my poor memory and later to my surprise, I found I got many of them right 🙂 .
They also asked some design questions in which they asked me to write the class and related functions (just the prototypes) for implementing a parking lot management system. Then there were questions on hacking and security. They also asked about the network problem they faced the previous day when the online round was going on, due to which they had to scrap it. They asked what could be the reason behind it and what could be the solution. Overall, again the majority of the questions were coding type with C++ concepts like virtual functions, JAVA OOP, and design problems. This round went on for 15-20 minutes past 1 hour or so.
Finally, after few hours I was called for my last interview round. It was more like a casual round in which the D.E.Shaw associate director was taking my interview. The first thing he said was “I just wanted to meet you once myself” and he asked a few HR questions again. He asked me if I had any higher studies plan, my strengths and 2 weaknesses, why their company, etc. It was a cool round with the atmosphere also easy and it went on for just 20 minutes or so.
Finally they took some time and announced my name and the only one to get recruited from my college. ! Whats even more wonderful I got a windcheater and a cool laptop bag on the spot 🙂 The offer letter reached me after 2 months and I have to join just few days after my college ends. I’ve heard the work is quite hectic there but you can’t get a 7-digit salary by doing nothing. That’s all my friends. Have any questions, feel free to leave a comment. Hope this helps.