Goldman Sachs Associate Interview Experience

Coder Pad Round

I started with an introduction and he asked me some resume based questions. (5-10 min)
DSA 1 - Word Ladder
DSA 2 - Medium level Sliding Window based

Super Day
On super day they scheduled 2 rounds.

Round 1 : DSA Round
Started with Intro. He straight away gave me DSA.
DSA 1 : Cheapest Flights with K-stops
DSA 2 : Least Common Ancestor
DSA 3 : Variation of LCA, at any given node of tree find all k-distanced nodes (need to track backward also).

Round 2 : Software Engineering Practices Round
Started with Intro. It was a resume based round. They randomly picked anything from my resume and started asking questions.
Since I had worked on Caching and also mentioned Concurrent Hashmaps, they asked me. What are Concurrent Hashmaps?
If you want to implement caching for distributed systems, how would you implement it?
What are different caching techniques (Write back, Write Through, Write Around) in detail.
When you will prefer which technique.
Since I mentioned Kafka. Where have you used Kafka?
What is Kafka? In detail discussion.
What problems you faced initially with Kafka and how you fixed that.
One user is in Germany and one in the US, and the data source is in the US. How you will make sure that the user in Germany sees data without any latency.
DB optimization (Partitioning, Consistent Hashing, Multi Masters, Read Replicas).
Difference between SQL & NoSQL, which one have you used, why, and how.
If millions of users are hitting DB, then how will you handle that? Without much latency.
Asked me if I am comfortable with Database Table Design, I said yes. Then I was given one table which had some flaws, and asked me to optimise it so that redundancy is reduced and lookup is faster. (Note - You should be comfortable with Normalization forms and foreign key concepts).
Then I was asked how you will implement caching using Concurrent Hashmaps and how you will track the cache miss counts, cache hit counts and frequency count. (Wrote rough code on coderpad not detailed expectations only they wanted to know logic).
How will you implement LRU & LFU? (just discussed, no code)

Round 3 : Software Design and Architecture
Started with Introduction. Asked about the difference between SQL & NoSQL, when you will use what? Then I was given a High Level Design Question to Design Ride Booking Systems like Uber. Deep Discussion on this, continuous counter questions will be asked on each step. I listed FR and NFR, and gave a rough capacity estimation. Then I proceeded with the flow for booking rides from users perspective and accepting rides from drivers perspective. I mentioned various components, listed where to use Kafka, Redis, and mentioned web sockets. I was asked questions like how will kafka work in your flow in depth discussion. When a user books a ride how it will get the ride booked in depth flow. How you will make sure there is 1:1 mapping of user to driver in case of multiple drivers. How surge is handled. What if one user wants to go a shorter distance and one user wants to go a longer distance. How you will scale the system. What is consistent hashing, why it was invented. I don’t remember all the questions but there were many as I proceeded with the design.

Round 4 : Hiring Manager
In this round some one at a very senior role joined, He asked me to give a brief Introduction and tell what were the challenges I faced in the projects and how you tackled it. Then he asked some questions about GS like Why GS, what was revenue of GS last year, What was revenue of your current firm, Do you have interest in finance, how do you keep yourself updated about the financial performance of your company. How you rate yourself in Springboot. He asked me some questions on AI as I had mentioned it in my resume. Then he asked me what the hierarchy of your current firm is. He asked some behavioral questions like
If you hear someone talking in an elevator that your colleague who was expecting promotion, he is no longer getting promoted. How will you react?
What if your colleague has taken credit for your work, how will you react to such a situation?

Discussed Comp and was told that I will get an offer within one week but after following up for 3 weeks got to know that role was filled up, so they mapped me to some other team for which I had to give one more Hiring Manager. After giving this round I received an offer after 3 weeks.

Comments (4)