Goldman Sachs Interview Experience

Last Updated : 5 Sep, 2025

I had applied for the position of Compliance Software Engineer at Goldman Sachs and got a response in two weeks with a preliminary online assessment to be cleared.

Online assessment

There were 2 coding questions to be solved on the GeeksforGeeks platform. The questions were of an easy level, one of which was - String compression. The other question was an ad-hoc problem on a 2D matrix, which was quite simple too. A few days after clearing the OA, an interview was scheduled.

Round 1 - DSA

The interview was set up on the Coderpad platform, which has an IDE as well as a drawing board for visually explaining. I was asked for my language of interest to code the solutions, and I went with C++. The first problem was the maximum average marks. I solved it using the same approach as that in the link. A few follow-up questions were asked. The second problem was the standard rainwater trapping. I suggested a linear approach and coded it. Overall, the round was easy to moderate.

A week later, I was contacted for further rounds. 3 rounds (and a managerial round, if shortlisted) were scheduled on the same day, each of one hour's duration. The rounds were based on DSA and software engineering.

Round 2 - DSA

The interview was set on Coderpad again, and it consisted of 2 problems. The first problem went as follows: An array of balls is given, with each number representing its strength. If the number is positive, then the ball moves to the right, or else it moves to the left, all with the same speed. If two balls collide, the ball with a larger magnitude of strength destroys the other, and its strength reduces by the strength of the other ball. After all collisions, return the final sequence of the strength of balls

E.g., for the input - [2, 5, -3, 3, -2 1 -1] the output would be [2, 2, 1]

The second problem was rainwater trapping again (lol)! This time, upon coding a solution with O(n) space, I was asked to optimise it further.I mentioned the two-pointer approach.

Round 3 - Software Engg.

Even though the round was mentioned to focus on software engineering aspects, I was first asked a coding question. The problem went as follows: given a set of points in the Cartesian plane, compute the number of horizontal trapezoids that could be formed with the points. A horizontal trapezoid is a quadrilateral with two sides parallel to the x-axis. I suggested a linear approach and coded the solution.

Then I was asked about my work experience. Finally, I was asked to mention any design pattern of my choice and explain it. I briefly explained the Singleton pattern.

Round 4 - Software engg.

This interview was fully focused on LLD/HLD. I was asked to design an interface that deals with utility payments like paying electrical bills, mobile data, internet, similar to that in Paytm or AmazonPay. I was expected to come up with the low-level design of creating classes for entities and to mention services/APIs for functionalities like authentication, payment, etc. In addition to low-level design, a few questions were asked on the high-level design to support it. Aspects like caching, auth tokens, scalability were touched upon.

My experience and suggestions

The DSA problems for the most part were doable. While solving a problem, if you feel stuck at any stage do not hesitate to share with the interviewer your thought process. They might help you get closer to the solution.

When dealing with system design cases, try to understand what the interviewer expects. For the most part work with the interviewer to develop a solution and share any worthy insights or suggestions to let the interviewer know about your knowledge.

Comment