Hello, I am Saurabh Kalikar. I am sharing my campus placements 2015-16 experience at IIT Madras. In this post, I share Credit Suisse interview questions and written test for (SMG Lab Analyst) profile.
We had an awesome experience throughout the campus placement journey. It was a long and painful phase of written/coding rounds for all the companies (I appeared for almost 60 companies), which started from October 1st and went on for the next two months. All the IIT starts their placement interviews on December 1st. Everyone was preparing themselves for the interviews.
And the D-day hits the Chennai sea-shore, and placements started. All the dream companies like Google, Microsoft were supposed to have interviews in 0th slot (12.00 AM to 6.00 AM). I had an interview for Microsoft at 1.30 AM. I had all the technical rounds for Microsoft. Including all the rounds, interviews went on till 4.30 AM. It was a nice experience and a proud moment for me that I had Microsoft interviews. My interviews went well but because of tough competition, I had little hopes from Microsoft.
I had my IBM interview around 10.30. It went on for 45 min. They were looking for pure research profile. As I have a publication, they were keen to understand my research work.
And the boom rumor, people started gossiping about Microsoft that they have released 24 offers altogether. What??? 24 ?? Yes, 24. Microsoft who never gives more than 4-5 offers, this time, gave 24 offers. But I was not in.
Suddenly news came, No company was able to make the way to the campus because of the heavy flood, all Chennai city was underwater. And the final news from placement office that placements are postponed for an indefinite time and student will get notified at the end of December. Saddened!
Finally the news, placements will resume from 6th January 2016. I had lots of interviews scheduled on Day-2, i.e., now Jan 6th. I had interviews for Xerox Research India, VMWare, Cisco, Credit Suisse, Rovi. Xerox Research was in the Day-2.1 slot. I didn’t get placed in that session too. Now here comes the important session Day-2.2 which gave me a wide smile on my face. I had interviews with 4 companies.
I went to Credit Suisse for the first round at 4.30 PM. Earlier in November, Credit Suisse had a pen-paper test for shortlisting the students for the interviews. The test pattern was focusing mainly on Logical thinking and coding skill. Below, I am sharing Credit Suisse interview questions and my experience.
Table of Contents
Few questions I remember from tests are:
There were two coding questions:
Credit Suisse Interview was of three technical rounds and one HR round.
Question: Tell something about yourself.
Answer: I gave a short introduction of the around 1-2 minutes. I mainly showcased my work in parallel programming and the paper publication I had in that area.
Obviously, the second question followed on my publication.
Question: What exactly this publication talks about?
Answer: I explained my work well and made him understand a few things. He asked me a few things about multi-threading.
Question: What are the things threads share among themselves?
Answer: Code segment, Data segment, Heap allocated memory. I showed full confidence in my basics of multithreading.
Question: What about Stack segment?
Answer: Each thread has its own execution stack. Threads also have their own TCB( Thread control block).
Then he started dragging me into OS concepts.
Question: As a viewpoint of OS how thread and process differ?
Answer: As an OS, while creating a process (using the fork) OS calls clone() system call and while creating a thread, OS calls clone() system call. However, while creating a thread, it passes different arguments, like in the case of thread creation, it has to pass the pointer to the function to be called by the thread, etc. He was satisfied.
For better understanding, read the difference between process and thread in the Operating System.
Question: Suppose you have a server generating data in row-wise fashion and you have to display this data on the screen in table format. If the data at particular row changes from the server, you have to update it on screen too.
How will you do this task in parallel and what are the challenges?
Answer: We can assign a thread for handling the updates at the particular row. Challenges are while updating a row we should maintain the consistent state on screen. So the updates should be atomic. The discussion went on for a while. I introduced the concepts of locks, barriers during that discussion.
Now he shifted the interview to the SQL basics.
Question: For some database schema, he asked me to write 2-3 basic SQL queries.
Answer: I wrote.
Then he asks me a standard puzzle.
Question: If you have 25 horses having different speeds of running. You want the top three horses. But you are allowed 5 horses to take part in the race in one go. How many rounds of such races required?
Answer: 7, It’s a standard one. Google it.
And my first round over.
After the normal ice-break phase of an interview, he asked me about the projects I did during the course. I have the 4th prize in the HiPC Parallel Programming Challenge, so he asked me about that project.
In that competition, we had to cluster the high dimension(97) data points using Intel Xeon-Phi co-processor. I explained the techniques we used for the parallelization. I also explained the Xeon-Phi architecture and the challenges it introduces in the programming.
Then he gave me a scenario about the shared file system in a distributed environment and asked me what are the benefits and the challenges of using the shared file system. I explained up to some level. I clearly specified that I have not worked in the distributed environment but I can map this scenario to the multi-core cache coherence (MOESI) protocol.
He asked me the concept of map-reduce in the distributed environment. I answered.
Then he switched to coding skills.
He gave me a question and asked me to write complete code for that.
Question: You have a skyline of the city. (Please note, it’s NOT a standard skyline problem). You have (x1, x2, H) for each building. Now if I ask you two queries,
What data structure you will use to store the skyline map?
Answer: I gave the BST based solution where the BST key will be an interval (X1, X2). There a few corner
cases. Think about it.
Question: If you have a set of words in a dictionary, and I give you a new word to search from the dictionary. How will you do it efficiently?
Answer: Its straightforward solution using tries. After saying tries, he did not ask me to write code. And my second technical round finished.
Again some random discussing, how does your day going on and all. After this, he directly asked me some interview coding questions.
Question: For a restaurant, there is a fix menu card. The menu card has different items according to the day of the week. But every day the menu will have some changes than the standard one. The manager will add new few items and will remove a few existing items from the menu for that day. You want to write a summary that…
Item added: 1. 2. 3. Item removed: 1. 2.
Write a complete running program.
Answer: I wrote. He was looking for object-oriented design concepts. Initially, I started a non-OO design. Then I
changed it to OO when he asks me to do so.
Question: Do you know virtual functions? Explain with a real-world example.
Answer: I explained.
Question: Then a few more question to test the object-oriented concepts, I don’t remember exact questions. I answered almost all. And the interview over.
HR was the coolest man. He asks me about my family background and a few normal HR-questions. Then he specified that joining will be Mumbai. Do you have any problem? I told that I am from Maharashtra 🙂
And exchanging few more words HR round got over.
It was around 10.30 PM. I also had multiple rounds for VMWare, Cisco, Rovi in between these Credit Suisse interview rounds. It was an awesome day. I was completely exhausted because of lots of interviews.
There was a rumor that I got an offer from Credit Suisse. Around 12.30 PM I got the confirm news that actually I got the offer. A smile on my face 🙂 Friends started congratulating me. We were four close friends who prepared together for placements and the good part was, all got placed on that day, though in different companies. But it was the end of placement season for us. A sigh of relief. I called my parents who were eagerly waiting for the updates. My father was in seventh heaven because of the Mumbai location 🙂
That’s it from Saurabh@IITM. All the Best!
Editors’ Note: Thank you, Saurabh for sharing Credit Suisse interview questions and your experience for the SMG Lab Analyst profile. We wish you all the best for your future.