GoldMan Sachs Interview Experience

Shubham Anand
4 min readJun 8, 2022

--

In this article, I will try to cover my interview experience with GoldMan Sachs for the role of Analyst.

Before diving deep into this, a brief introduction about me, I have around 2 years of experience having worked on Spring MVC, Kubernetes etc.

So lets start from the start πŸ˜„

How did I get the opportunity?

This is according to me the hardest part about job hunting. For this I would say just keep your LinkedIn profile updated.

I was lucky enough to be reached out by a recruiter on LinkedIn. I promptly applied for it and was provided a Hackerrank test link.

Coding Test

  1. Given a string in the form of β€˜abbbccd’ , the task was to compress it to a form of β€˜1a3b2c1d’. A straightforward STACK question.
  2. Given a string containing numbers like β€˜123’ and each English alphabet being mapped as follows β€” β€˜a’ is 1 , β€˜b’ is 2 ….. β€˜z’ is 26. The task was to find the number of ways to decode the string .
    Eg: String s = β€˜123’ , we can decode it as β€˜1|23’ making it β€˜aw’
    it as can also be decoded as β€˜12|3’ making it β€˜lc’
    So the answer to be returned was 2. It was a Medium level DP problem.

Luckily having practiced a bit, I was able to solve the 2 questions within the given time. So I was moved to the interviews.

Round 0 ( Screening )

This was a Pair Coding/ Screening round ( probably just to make sure I was the one that solved those test questions πŸ˜†)
This was an hour long session consisting of 3 Easy-Medium level standard interview problems.

  1. Give the name of student and their marks in different subjects, find the student with the highest average marks
    Eg: β€˜Bob’ scored 90 , β€˜Alice’ scored 95 and β€˜Bob’ scored 98.
    So the answer should be Alice
    Bob’s average marks are 94 while that of Alice is 95.
  2. The standard rain water trapping problem. Link to question
  3. The standard find first non repeating character in a string question.
    Link to question

Since I was one you wrote the online test πŸ˜„, it was relatively an easy round to clear.

I was then informed by the HR about schedule of the Technical Rounds, there were 3 rounds in a single day ( a fine Saturday 😐 )

Round 1

This was the first company where they had 2 interviewers. The discussion started with the introductions and discussion about the projects.

  1. Then was asked to write a code to find Pythagoras triplets in a given array.
  2. SQL query for second highest salary in a given table of employee name, employee id and their salary.
  3. Define the REST endpoint to get a list of items while creating a E-commerce application backend. They were focusing mainly on the basics of REST API and the best practices to code it.
  4. This is was an interesting question. Given ’N’ equidistant points which form a loop and each point has a petrol station having different amount of fuel. Where should the trip start so that it can be completed.

I was able to answer most of the questions. I loved the discussion on the last question.

Round 2

Just after a gap of just 30 minutes had another discussion 😫. Again started with the formal introduction and project discussions. Then came in the questions-

  1. Given a string and an NxM grid , each cell containing an English alphabet. Return if the provided string can be formed from the characters in the grid. I was able to solve it using DFS. The interviewer was kind enough to allow me to just write the pseudocode. 😌
  2. Design an In-Memory File storage system. I would say it was mostly a LLD question where I was asked to write the class representing File and Directory and the relation between them.
    Also was asked to write the functions to add, delete and update the files and directory. I really enjoyed the discussion of calculating the size of the directory having multiple files and directories.
    ( If someone says they trees in Computer Science are useless show them this example 😊)

Overall was a great discussion with interviewers mainly focused on judging how I approach the problem.

Round 3

Luckily had a couple of hours before this interview. This was purely based on Java fundamentals, some of the questions were-

  1. Demonstrating the use of lambda functions.
  2. Difference between == and .equals()
  3. Dependency injection
  4. Implementation of Singleton Design Pattern ( okay, okay. I agree. Not purely Java fundamentals πŸ˜†)
  5. Overriding the hashCode() and equals() functions in a Class
  6. Implementation of HashMap and how .put() knows when to update and when to add.

Overall and good discussion of Java fundamentals.

After a few days, I received an email from the recruiter to inform that I was selected for the role. 🎊

Few tips

  1. Think out loud β€” Its happens very often that you know the correct answer but you are not sure, so you think but you don’t say it. If you think out loud, a good interviewer will always catch the answer from your thought.
  2. Take Interviews as discussion β€” I learned this the hard way after getting a few rejections. If you take interviews as a discussion between you and someone senior in your team, it would release a lot of pressure and will also help the interviewer understand how you will perform in the team discussions.
  3. You will never be 100% ready β€” Don’t wait to be 100% ready before applying for jobs. Take your leap of faith as the opportunities come to you.
To sum up the previous point πŸ˜†

All the best!!

--

--