Credit Suisse Interview Questions for SMG Lab Analyst
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 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 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.
Credit Suisse Written Test:
Few question I remember from tests are:
- You have a watermelon having weight 100 kg. This 100 kg contains 2% watermelon pulp and 98 % water. If we keep this watermelon to get dry for a week, after a week the weight will reduce to 50 kg. What percentage of water now present in watermelon?
- You have an equilateral triangle. Three cats are sitting on each corner of that triangle. If all cats run at same speed, what is the probability that the cat will collide?
One or two more questions were there, I don’t remember.
There were two coding questions:
- Find the kth smallest element in the array.
- One more question on tree or graph for coding.
Credit Suisse Interview was of three technical rounds and one HR round.
First Credit Suisse Interview: Technical 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 few things. He asked me 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 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 SQL basic queries.
Answer: I wrote.
Then he asks me a standard puzzle.
Question: If you have 25 horses having different speeds of running. You want 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.
Second Credit Suisse Interview: Technical round
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 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 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,
- For a new building of given dimension (X1, X2, H), is there any available hole present in current
skyline map. Report YES if present else NO.
- For a given point on the x-axis of skyline map, report the height for that point.
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 of 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 a code. And my second technical round finished.
Third Credit Suisse Interview: Technical round
Again some random discussing, how does your day going on and all. After this, he directly asked me some 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 few existing items from the menu for that day. You want to write a summary that…
Write a complete running program.
Answer: I wrote. He was looking for the object-oriented design concepts. Initially, I started non-OO design. Then I
changed it to OO when he asks me to do so.
Question: Do you know virtual functions? Explain with real-world example.
Answer: I explained.
Question: Then 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 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!
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.