Interview Experience at Goldman Sachs | Analyst | Bengaluru (India)

goldman sachs logo
goldman sachs
AnalystBengaluru, India
May 6, 20254 reads

Summary

I successfully navigated a multi-round interview process at Goldman Sachs for an Analyst role in Bengaluru, encompassing DSA, system design, core Java, SQL, and behavioral questions, ultimately receiving positive feedback for my candidature.

Full Experience

I applied via referral and received the test link almost a month later.

Round 1: Online HackerRank Test (120 mins)

  • There were 2 medium-level questions: one greedy and one graph-based.
  • Completed both in around 40–45 minutes.

I got the interview invite around 20 days later.

Round 2: CoderPad Interview (1 Interviewer)

  • CoderPad is a collaborative platform where both you and the interviewer can write code, with an IDE built-in.
  • I was expected to write working code that passes test cases.

Question 1:

  • First Unique Character in a String – easy one, solved it in about 10 minutes.

Question 2:

  • A long string str was given, along with two other strings str1 and str2. I had to find the minimum distance between the occurrences of str1 and str2 in str, making sure str1 appeared before str2.
  • There were multiple edge cases. The interviewer didn’t point them out directly and wanted me to catch them by debugging through test cases. He was very helpful and patient.
  • I couldn’t solve all the edge cases due to time constraints, but the interviewer seemed satisfied with my approach and, I believe, mainly wanted to assess my debugging skills.

I got a call the next day that I had cleared the round and would be moving on to the Super Day.

Super Day: 3–4 Interviews with 1-Hour Gaps

Each round had 2 interviewers: one actively asking questions and the other mostly observing.

Round 3: Data Structures

Interviewer 1:

  • Asked a Candy Crush-style question on a 1-D array. If 3 identical items appear together, they must be removed recursively.
  • I gave both brute-force and optimized (stack-based) solutions.
  • He asked some follow-up questions by changing requirements in the same question.

Interviewer 2:

  • Asked the Group Anagram problem.
  • Also followed up with questions on the code I wrote.

This round went pretty well.

Round 4: Software Engineering Practices

Interviewer 1:

  • Shared a long Java code snippet and asked me to explain the output. It was focused on static and dynamic binding concept in polymorphism.
  • Then gave an array of strings and asked me to use Java Streams to filter and map values based on conditions—tricky if you’re not very familiar with streams.
  • Ended with a simple SQL join query.

Interviewer 2:

  • Started with a dynamic programming problem similar to House Robber.
  • Then asked a tricky SQL query using LEFT JOIN. I made some mistakes initially, but with hints, I was able to solve it on the second try.
  • Then I was asked a hard DSA problem—though I don’t remember the exact question, I suggested an approach that failed on some test cases. I started working on an alternative solution, but ran out of time before I could complete it.

The last 15 minutes of this round didn’t go very well, but 30 minutes later I got a call from HR to appear for the next round.

Round 5: Software Design & Architecture (1 Interviewer)

Originally, there were supposed to be 2 interviewers, but one had an urgent task.

  • The interviewer deep-dived into my resume and current project.
  • Asked about how I’d scale and optimize my current project—expected some high-level design (HLD) concepts.
  • Since my project involved backend - database related concepts, he asked about indexing and how it works in distributed systems. I didn’t know all the answers, but mentioned B+ Trees and related them to how operations behave across multiple servers.
  • He wrapped up with a couple of puzzles: one on hourglasses and one on fruits in a basket.

I had mixed feelings about this round. But got a call next day for HM round.

Round 6: Technical + Hiring Manager Round (1 Hour)

Usually, GS has a 30-minute HM round after Super Day, but I was scheduled for a Technical + HM round—possibly because I couldn’t solve that DSA problem in Round 4.

Interviewer 1:

  • Asked about Design Principles; I had to explain SOLID principles.
  • Gave a scenario to test my understanding of the Liskov Substitution Principle.
  • Asked me which design patterns I know, and then focused on Observer Pattern. I was asked to write pseudocode for it.

Interviewer 2:

  • Asked about my current project, business impact, and planning.
  • Asked behavioral questions, such as dealing with team conflicts.
  • Briefly shared details about his own team’s work.

I felt confident about this round.

A few days later, I got confirmation that the feedback was positive and they would be moving forward with my candidature.

Final Thoughts

Overall, the interviewers were extremely supportive throughout all the rounds. The process covered a wide range of topics—DSA, Java concepts, LLD, design patterns, SQL, project-based HLD, puzzles, and behavioral questions.

It was a great experience.

Truly grateful to this community — your support has meant a lot during my preparation journey. Kudos!

P.S.: If you’re applying to GS, don’t rely too much on the status shown in the application portal. Mine said “Application Turndown” even after HR told me the feedback was positive. Two weeks later, they opened a new position for me on the portal and continued the process. I also know others whose interviews began even after their portal showed “Application Turndown”. Whoever operates it, I don’t know what he smokes.

Interview Questions (17)

Q1
First Unique Character in a String
Data Structures & AlgorithmsEasy

Given a string, find the first non-repeating character in it and return its index. If it doesn't exist, return -1.

Q2
Minimum Distance Between Two Words in a String (str1 before str2)
Data Structures & Algorithms

A long string str was given, along with two other strings str1 and str2. I had to find the minimum distance between the occurrences of str1 and str2 in str, making sure str1 appeared before str2. There were multiple edge cases. The interviewer didn’t point them out directly and wanted me to catch them by debugging through test cases.

Q3
Candy Crush-style question on a 1-D array (Recursive Removal of 3 Identical Items)
Data Structures & Algorithms

If 3 identical items appear together in a 1-D array, they must be removed recursively. Follow-up questions were asked by changing requirements in the same question.

Q4
Group Anagrams
Data Structures & Algorithms

Given an array of strings strs, group the anagrams together. You can return the answer in any order. An Anagram is a word or phrase formed by rearranging the letters of a different word or phrase, typically using all the original letters exactly once. Follow-up questions were asked on the code I wrote.

Q5
Java Polymorphism (Static/Dynamic Binding)
Other

Shared a long Java code snippet and asked me to explain the output. It was focused on static and dynamic binding concept in polymorphism.

Q6
Java Streams Filtering and Mapping
Other

Given an array of strings, I was asked to use Java Streams to filter and map values based on conditions—tricky if you’re not very familiar with streams.

Q7
Simple SQL Join Query
OtherEasy

Ended with a simple SQL join query.

Q8
Dynamic Programming Problem (House Robber-like)
Data Structures & Algorithms

Started with a dynamic programming problem similar to House Robber.

Q9
Tricky SQL LEFT JOIN Query
Other

Asked a tricky SQL query using LEFT JOIN.

Q10
Scale and Optimize Current Project (HLD)
System Design

Asked about how I’d scale and optimize my current project—expected some high-level design (HLD) concepts.

Q11
Indexing in Distributed Systems
System Design

Since my project involved backend - database related concepts, he asked about indexing and how it works in distributed systems. I didn’t know all the answers, but mentioned B+ Trees and related them to how operations behave across multiple servers.

Q12
Puzzles (Hourglasses & Fruits in a Basket)
Other

He wrapped up with a couple of puzzles: one on hourglasses and one on fruits in a basket.

Q13
Explain SOLID Principles
System Design

Asked about Design Principles; I had to explain SOLID principles.

Q14
Liskov Substitution Principle Scenario
System Design

Gave a scenario to test my understanding of the Liskov Substitution Principle.

Q15
Design Patterns (Observer Pattern Pseudocode)
System Design

Asked me which design patterns I know, and then focused on Observer Pattern. I was asked to write pseudocode for it.

Q16
Current Project, Business Impact, and Planning
Behavioral

Asked about my current project, business impact, and planning.

Q17
Dealing with Team Conflicts
Behavioral

Asked behavioral questions, such as dealing with team conflicts.

Discussion (0)

Share your thoughts and ask questions

Join the Discussion

Sign in with Google to share your thoughts and ask questions

No comments yet

Be the first to share your thoughts and start the discussion!