goldman sachs logo

Goldman Sachs Interviews

103 experiences2,161 reads697 questions20% success rate
Goldman Sachs Interview Experience | Corporate Treasury – Software Engineering Analyst
goldman sachs logo
Goldman Sachs
Software Engineering Analyst2.7 yearsOffer
November 1, 2025110 reads

Summary

Had a technical interview for the Software Engineering Analyst role at Goldman Sachs. The interview included one coding question involving finding the maximum points path in a grid with specific movement directions. The candidate passed all test cases and completed a dry run.

Full Experience

Goldman Sachs Interview Experience | Corporate Treasury – Software Engineering Analyst

Date: 4 days ago

Experience: 2.7 years

Round: Technical Interview (after HackerRank)

Duration: ~60 minutes (Interview ended in ~45 mins)

Platform: Virtual (Google Meet / Zoom)


🧩 Round Details

The round was scheduled for 60 minutes, but it lasted around 45 minutes.

Surprisingly, I was asked only one main coding question — unlike many other Goldman Sachs interviews I had read about (which usually include two coding questions). no response from recuriter


⚙️ Coding Question (Asked in Interview)

The interviewer shared a problem that involved and kafa related question :

A grid (matrix) containing integer values, where you have to move from a source cell to a destination cell while collecting maximum possible points.

You could move in specific directions (up,right), and the goal was to find the path that collects the maximum points.

all test case pass also done with dry run

Interview Questions (1)

Q1
Maximum Points Path in Grid
Data Structures & Algorithms

A grid (matrix) containing integer values, where you have to move from a source cell to a destination cell while collecting maximum possible points. You could move in specific directions (up, right), and the goal was to find the path that collects the maximum points.

Goldman Sachs SDE Interview Experience
goldman sachs logo
Goldman Sachs
SDE IOffer
October 23, 2025102 reads

Summary

I successfully cleared the Software Development Engineer (SDE) interview process at Goldman Sachs, securing an offer after a comprehensive multi-round evaluation. The interview series included an Online Assessment, Coderpad, two DSA rounds (part of a Superday), a Software Engineering round, a System Design round, and a final Hiring Manager discussion.

Full Experience

My journey through the Goldman Sachs SDE interview process was quite extensive, unfolding over several months. It began with an Online Assessment where I tackled two LeetCode medium difficulty DSA problems. This was followed by a Coderpad round, where I faced a graph problem involving virus propagation in a unidirectional, acyclic graph, and a follow-up extending it to multiple initial infection sources.

The Superday consisted of three rounds. The first DSA round presented me with a problem to find the top K tallest buildings from a given list of heights. Another graph problem was asked, which I don't recall precisely, but it was described as a direct LeetCode medium requiring BFS and topological sort concepts, primarily an implementation task. The Software Engineering round delved into my resume, OOPS principles, and different Java HashMap types along with their time complexities. I also encountered a puzzle question and general SDLC practices.

The System Design round focused on designing an LRU cache, alongside further resume-based questions. Finally, the Hiring Manager round was predominantly behavioral, with only a few basic technical inquiries.

I successfully received an offer. The entire process, from initial application to offer letter, took about 2-3 months, with each round's result taking roughly two weeks. Patience is definitely key when interviewing with Goldman Sachs.

Interview Questions (5)

Q1
Virus Spread in Unidirectional Graph
Data Structures & AlgorithmsMedium

There are some set of people represented as graph (Uni-directional and no cycles). Each person has an ID. Given an ID of a person, that person gets the virus. Return all the set of people who will get the virus.

Q2
Virus Spread in Unidirectional Graph (Multiple Initial Infections)
Data Structures & AlgorithmsMedium

Follow-up to the previous problem: Instead of one ID, now the initial infected set is a list of IDs. With minimal changes in code, you have to achieve finding all people who will get the virus. The ID here is a unique person/human identifier.

Q3
Top K Tallest Buildings
Data Structures & AlgorithmsMedium

Given a list of building heights, return the top k tallest buildings.

Q4
Java HashMaps Types and Complexity
Data Structures & Algorithms

Discuss different Java HashMap types and the time complexity of their operations.

Q5
Design LRU Cache
System DesignMedium

Design a Least Recently Used (LRU) cache.

Preparation Tips

My most significant takeaway from this experience is the critical importance of resume accuracy and depth. For instance, if you mention 'caching' on your resume, even if your experience is limited to a specific type like write-through cache, be prepared to discuss various cache mechanisms, eviction policies, and related concepts comprehensively. It's crucial to know any term you include in your resume inside out, and also to understand the broader concepts surrounding it—aim for at least 80% mastery.

GS Associate Interview Experience | YOE - 2.3 years
goldman sachs logo
Goldman Sachs
Associate2.3 yearsOngoing
October 21, 202597 reads

Summary

I recently interviewed for an Associate role at Goldman Sachs, which involved several technical rounds covering data structures, algorithms, system design, and software engineering practices, based on my 2.3 years of experience.

Full Experience

My interview journey for the Associate role at Goldman Sachs consisted of several distinct rounds, meticulously testing my skills in various domains. I'm excited to share the details from my 2.3 years of experience.

Coderpad Round 1

This was my first coding assessment, where I was presented with two DSA questions:

  1. The first problem was an easier version of a Trie-based question, specifically focusing on implementing insert(word) and countWordsStartingWith(prefix) operations. The interviewer referenced this problem for context.
  2. For the second question, I had to find the size of the largest connected component within a forest.

Coderpad Round 2

Following the initial coding round, I faced another set of two DSA challenges:

  1. I was tasked with implementing a custom class that would support two primary operations: insert(num) to add a number to the data structure and isTopK(num) to determine if a given number is among the top K most frequent numbers present.
  2. The second question involved finding the first non-repeated character in a string. We then delved into an important discussion about how to adapt this algorithm for very large strings that might not fit entirely into a single machine's RAM.

Software Engineering Practices 1

This round shifted focus towards practical software engineering knowledge:

  1. I was given a Java code snippet and my task was to identify any issues or bugs present within it.
  2. The interviewer then probed my understanding of how HashMaps work internally and questioned me on different types of exceptions in Java.
  3. A significant portion of this round was dedicated to a detailed discussion about my previous projects and contributions.

Software Engineering Practices 2

Building on the previous round, this one also focused on engineering practices, with a specific design challenge:

  1. I was asked to design a rate limiter. We engaged in a meaningful discussion about various approaches, and I specifically talked about the Leaky Bucket algorithm. Subsequently, I was asked to write a code snippet for its implementation. The discussion also included considerations on how to select appropriate leak rates and bucket sizes for the leaky bucket algorithm.

System Design Round

The final round was entirely dedicated to System Design:

  1. The discussion began with the Low-Level Design (LLD) of an oversimplified stock market system. This was a purely verbal discussion, with no coding involved.
  2. We then extended this LLD into a High-Level Design (HLD) for the same stock market, which led to discussions about transactions and locking mechanisms within databases.
  3. The round concluded with a thorough grilling of my resume, focusing on my experience and technical background.

Interview Questions (11)

Q1
Trie with Insert and CountPrefix
Data Structures & Algorithms

Implement a Trie-like data structure that supports two operations: insert(word) to add a word to the trie, and countWordsStartingWith(prefix) to return the number of words in the trie that start with the given prefix. This is described as an easier version of a problem found at algo.monster/liteproblems/1804.

Q2
Largest Connected Component in Forest
Data Structures & Algorithms

Find the size of the largest connected component in a given forest (a collection of disjoint trees or graphs).

Q3
Top K Frequent Numbers Data Structure
Data Structures & Algorithms

Implement a class with two operations: insert(num) to add a number to the data structure, and isTopK(num) to check if a given number is among the top K most frequent numbers currently in the data structure.

Q4
First Non-Repeated Character with Scaling
Data Structures & Algorithms

Find the first non-repeated character in a string. Discuss how to extend the algorithm for very large strings that cannot fit into the RAM of a single machine.

Q5
Java Code Snippet Debugging
Other

Given a code snippet written in Java, identify and explain the issues present within it.

Q6
HashMap Internals and Java Exceptions
Other

Explain the internal working mechanisms of a HashMap. Also, describe different types of exceptions in Java and when they occur.

Q7
Project Discussion
Behavioral

A detailed discussion regarding my past projects and technical contributions highlighted in my resume.

Q8
Rate Limiter Design with Leaky Bucket
System Design

Design a rate limiter. Discussed the Leaky Bucket algorithm in detail, including how to select appropriate leak rate and bucket size. I was then asked to write a code snippet implementing the Leaky Bucket algorithm.

Q9
LLD of Simplified Stock Market
System Design

Verbal discussion focusing on the Low-Level Design (LLD) of an oversimplified stock market system, without any coding required.

Q10
HLD of Stock Market with Transactions
System Design

Extend the Low-Level Design of the simplified stock market to a High-Level Design (HLD). This involved discussions about transactions and locking mechanisms within the database.

Q11
Resume Grilling
Behavioral

An in-depth review and questioning based on my resume and professional experience.

Goldman Sachs Interview Experience | Analyst | Bangalore
goldman sachs logo
Goldman Sachs
AnalystBangalore
October 21, 202584 reads

Summary

I recently interviewed with Goldman Sachs for an Analyst role in Bangalore, navigating through an Online Assessment, a CoderPad screening, and a comprehensive Superday that included multiple Data Structures & Algorithms rounds, a Low-Level Design challenge, and a Behavioral/HR interview.

Full Experience

My interview journey with Goldman Sachs for an Analyst position in Bangalore started with an Online Assessment (OA) conducted on Hackerrank. This assessment primarily tested my fundamental coding skills with problems focused on arrays, strings, and understanding time/space complexity.

Following the OA, I proceeded to a CoderPad Screening. This was a live coding session designed to evaluate my problem-solving speed, code correctness, and clarity of thought. During this round, I was asked to solve two distinct problems: Find the Length of Cycle in an Array and Number of Islands. For the 'Number of Islands' problem, the interviewer specifically guided me to use BFS over DFS, emphasizing its advantage in avoiding potential stack overflow issues.

The final and most intensive stage was the Superday, which comprised four consecutive rounds.

  • Round 1 – Data Structures & Algorithms (DSA): My first DSA round presented two challenges. One involved finding the Minimum Characters to Remove from the left, right, or both ends to make a string palindrome. The second was a Binary Search Assignment, which felt very similar in concept to the popular 'Koko Eating Bananas' problem.
  • Round 2 – Data Structures & Algorithms (DSA): In the second DSA round, I tackled the classic Coin Change problem, where I had to find the minimum number of coins required to make a specific amount. Additionally, I was given the Container With Most Water problem, which came with an intriguing follow-up question: 'what if the container is tilted?'
  • Round 3 – Low-Level Design (LLD): This round shifted focus to design principles. I was tasked with designing a Traffic Light System that could dynamically adjust its wait times based on real-time traffic data, requiring me to consider various system components and interactions.
  • Round 4 – Behavioural / HR: The last round was a standard behavioral and HR interview. We discussed my past projects, examples of ownership and challenges I've faced, how I handle tight deadlines and conflicts, and my overall motivation and career goals. A particularly interesting scenario-based question was posed: 'You overhear in a lift that a colleague, who was expecting a salary hike, is actually not going to get one. How would you handle this situation while maintaining professionalism and confidentiality?'

Interview Questions (8)

Q1
Find Length of Cycle in Array
Data Structures & Algorithms

Find the length of a cycle present in a given array.

Q2
Number of Islands
Data Structures & Algorithms

Given a 2D grid map of '1's (land) and '0's (water), count the number of islands. An island is surrounded by water and is formed by connecting adjacent lands horizontally or vertically. The interviewer preferred BFS over DFS to avoid stack overflow.

Q3
Min Chars to Make String Palindrome by Removing Ends
Data Structures & Algorithms

Determine the minimum number of characters to remove from the left, right, or both ends of a given string to make it a palindrome.

Q4
Binary Search Problem (Koko Eating Bananas variant)
Data Structures & Algorithms

A problem similar to 'Koko Eating Bananas', which typically involves finding a minimum or maximum value within a range where the condition is monotonic, making binary search applicable.

Q5
Coin Change (Minimum Coins)
Data Structures & Algorithms

Given an array of coin denominations and a target amount, find the minimum number of coins needed to make up that amount.

Q6
Container With Most Water
Data Structures & Algorithms

Given n non-negative integers a1, a2, ..., an, where each represents a point at coordinate (i, ai). n vertical lines are drawn such that the two endpoints of line i is at (i, ai) and (i, 0). Find two lines, which, together with x-axis forms a container, such that the container contains the most water. Follow-up: What if the container is tilted?

Q7
Design a Traffic Light System
System Design

Design a Traffic Light System that dynamically adjusts wait times based on real-time traffic data, considering factors like sensor input, traffic flow prediction, and synchronization between intersections.

Q8
Handling Confidential Information Scenario
Behavioral

Scenario: You overhear in a lift that a colleague, who was expecting a salary hike, is actually not going to get one. How would you handle this situation while maintaining professionalism and confidentiality?

Preparation Tips

My preparation for these interviews primarily involved a thorough revision of core Data Structures and Algorithms topics, including BFS/DFS, Dynamic Programming (DP), two-pointer techniques, binary search, and various string manipulation algorithms. I focused not just on solving problems, but also on clearly communicating my logic and walking through examples step-by-step. For the Low-Level Design round, my strategy was to concentrate on designing systems that were simple, scalable, and where I could clearly articulate the trade-offs involved in different architectural choices. For the Behavioral/HR rounds, I diligently prepared structured stories using the STAR method to effectively highlight instances of my ownership, teamwork, and problem-solving skills.

Goldman Associate Interview Experience
goldman sachs logo
Goldman Sachs
AssociateRejected
October 2, 202576 reads

Summary

I interviewed for an Associate position at Goldman Sachs, undergoing an Online Assessment, CoderPad, and four onsite rounds that included DSA, Java concurrency, SQL, and System Design problems. Despite my efforts, I was ultimately rejected after the final System Design round.

Full Experience

I applied for an Associate role at Goldman Sachs via a referral. My interview journey began with an Online Assessment, which consisted of two medium LeetCode questions. Following that, I had a CoderPad round where I tackled a Trie-based question and a simple DFS problem, all within an hour using C++. The main interview process involved four subsequent rounds. Round 1, focused on DSA, included some resume-based questions, a DSA problem based on hashmaps, and a Binary Search Tree question combined with two pointers. Round 2 delved into more resume-based discussions, a Java concurrency problem, SQL questions, and another LeetCode medium DSA question. Round 3 was a System Design interview where I was asked to design a high-level upload portal for internal users. The final round, lasting 30 minutes, centered on a parking lot problem, specifically how to efficiently calculate prices given varying strategies for weekdays, weekends, and specific hours (like 9 AM - 5 AM). This last round, unfortunately, led to my rejection; I found the interviewer somewhat unresponsive when I sought clarifications.

Interview Questions (2)

Q1
Design an Internal Upload Portal
System Design

Design a High-Level Design (HLD) for an upload portal intended for internal users.

Q2
Parking Lot Pricing Calculation
System Design

Design a system focused on how to efficiently calculate parking prices if we have different pricing strategies based on weekdays and weekends, and also consider specific hours (e.g., 9 AM - 5 AM).

Goldman Sachs Interview Experience - Associate | August 2025 | Bangalore
goldman sachs logo
Goldman Sachs
AssociateBangalore3 yearsOffer
October 1, 202557 reads

Summary

I interviewed for an Associate position at Goldman Sachs in Bangalore in August 2025 and received an offer after successfully navigating a comprehensive interview process that included online assessments, multiple technical DSA and system design rounds, and a final hiring manager discussion.

Full Experience

I recently went through the interview process for an Associate position at Goldman Sachs in Bangalore, which spanned from June to August 2025. The process was conducted online and consisted of an Online Assessment followed by four technical rounds, and finally a Hiring Manager round. I have 3 years of experience.

Online Assessment

The online assessment included 2 LeetCode-style questions: one easy and one medium, which focused heavily on time complexity. I successfully cleared this stage and received an invitation for the interviews within approximately three days.

Round 1 (Technical DSA ~1 hour)

In this round, I was asked to solve two DSA questions by coding on a shared editor. The first problem required converting a fraction string (e.g., "2/5" or "-2/5") into its decimal representation, including handling recurring decimals like "0.(6)" for "2/3". The second question was an easy-medium linked list problem, which I don't fully recall, but I successfully passed all the provided test cases. After two weeks, I received an email inviting me to the Superday rounds.

Superday Round 1 (DSA ~1 hour)

This round involved two DSA questions. The first question was to check if a string has a cycle, for which I had to write optimized code. The second question was to build a calculator, given an expression string like "(2*5+7)", and return the evaluated integer. The interviewer specified that it could include brackets, so I had to parse the expression and correctly handle operator precedence. I was able to solve both questions.

Superday Round 2 (DSA + System Design Lite)

This round combined DSA and a light system design component. The DSA question involved a 2D array: finding the maximum value path when travelling only diagonally up, diagonally down, or right. I explained a recursive approach first and then implemented an optimized solution, followed by discussing variations if movement directions changed. The data structures question asked me to design a structure for efficiently querying if at least two different customers visited the same store on a given day from a log file. I proposed a solution using a Map and Set, and we discussed follow-ups on implementing it with a database and the trade-offs between space and query efficiency.

Superday Round 3 (System Design – Twitter Clone)

This was a dedicated system design round where I had to design Twitter. The first half focused on Low-Level Design (LLD), detailing classes and models for Users, Tweets, and Follows. The second half shifted to High-Level Design (HLD) with an emphasis on scalability, particularly how to notify millions of users simultaneously. The discussion covered various topics like queues, database usage, caching strategies, scaling, microservices, and Kafka.

Superday Round 4 (Hiring Manager)

The final round was with the Hiring Manager. We had a deep dive into the architecture of my most recent project. I also answered questions on Agile methodology, including its pros and cons, and how I handle sprint delays. Leadership and situational questions were posed, such as how I would handle team conflicts and prioritize features against deadlines.

I successfully cleared all rounds and received an offer call for the Associate position an hour after my last Superday interview.

Interview Questions (7)

Q1
Fraction to Recurring Decimal
Data Structures & AlgorithmsMedium

Given a string representing a fraction, for example, "2/5", return its decimal representation. The fraction can also be negative, like "-2/5". The output should handle recurring decimals, such as "2/3" which returns "0.(6)".

Q2
Basic Calculator
Data Structures & AlgorithmsHard

Given a string representing an arithmetic expression, such as "(2*5+7)", evaluate it and return the integer result. The expression can include integers, basic arithmetic operators (+, -, *, /), and parentheses, requiring parsing and handling operator precedence.

Q3
2D Array Max Path Sum (Diagonal/Right)
Data Structures & AlgorithmsMedium

Given a 2D array, find the maximum value path sum where movement is restricted to diagonally up, diagonally down, or right. I initially approached this with recursion and then optimized it. There were also follow-up questions regarding changes in allowed movement directions.

Q4
Efficient Store Visit Query System
Data Structures & AlgorithmsMedium

Given a log file detailing store visits, design a data structure that can efficiently answer queries to determine if at least two different customers visited the same store on a specific day. Follow-up discussions included alternative implementations using databases and an analysis of trade-offs between space complexity and query efficiency.

Q5
Design Twitter
System DesignHard

The task was to design Twitter. The first half focused on Low-Level Design (LLD), including defining classes and models for Users, Tweets, and Follows. The second half covered High-Level Design (HLD) concerning scalability, specifically how to efficiently notify millions of users simultaneously. This involved discussions on various system components like queues, database usage, caching strategies, scaling, microservices architecture, and Kafka.

Q6
Agile Methodology Discussion
Behavioral

Discussion revolved around Agile methodology, including its pros and cons, and strategies for handling sprint delays or impediments.

Q7
Leadership & Situational Questions
Behavioral

Situational and leadership-focused questions were asked, such as how I would handle conflicts within a team and how I prioritize features against tight deadlines.

Interview Experience Goldman Sachs | Analyst | Coderpad round
goldman sachs logo
Goldman Sachs
AnalystOngoing
September 29, 202574 reads

Summary

I had a Coderpad round for an Analyst position at Goldman Sachs where I was able to solve two algorithmic questions, though I received some hints on the second one. The verdict is still pending.

Full Experience

I joined the Coderpad round for an Analyst position at Goldman Sachs. The interviewer started right on time with introductions. I was asked two specific questions. I managed to solve both of them. For the second question, the interviewer provided a couple of hints when I was heading in the wrong direction, which I thankfully picked up and used to solve the problem. I am currently awaiting the final verdict.

Interview Questions (2)

Q1
Find Unique Substrings of Length 'len'
Data Structures & Algorithms

Given a string, find all the unique substrings of a specified length 'len'. As a follow-up, I was asked to handle multiple edge cases through exception handling.

Q2
Find Root of Largest Tree in a Forest
Data Structures & Algorithms

Given a forest (one or more disconnected trees), find the root of the largest tree and return its Id. If there are multiple such roots, return the smallest Id among them. I was provided with a map immediateParent, containing key-value pairs indicating child -> parent relationship. The key is the child and the value is its corresponding immediate parent.

Constraints:

  • Child cannot have more than one immediate parent.
  • Parent can have more than one immediate child.
  • The given key-value pair forms a well-formed forest (a tree of n nodes will have n-1 edges).
Example:
Input:
{ { 1 -> 2 }, { 3 -> 4 } }
Expected output: 2

Goldman Sachs Associate - Interview Experience
goldman sachs logo
Goldman Sachs
Data Engineer, Associate3 yearsRejected
September 27, 202541 reads

Summary

I interviewed for an Associate Data Engineer role at Goldman Sachs with 3 years of experience. The process involved a HackerRank assessment, a CoderPad round, and a multi-round Super Day, but I was unfortunately rejected after the second round of the Super Day.

Full Experience

A recruiter reached out to me for a Data Engineer (Hadoop/Spark) Associate position, given my 3 years of experience. The interview process began with a HackerRank round, followed by a CoderPad round. The final stage was a Super Day, which comprised multiple elimination rounds. Despite making it to the Super Day, I was ultimately rejected after the second round, as I didn't perform as well as required.

Interview Questions (5)

Q1
Forest Analysis: Unconnected Trees and Max Children Root
Data Structures & AlgorithmsMedium

Given a list of child-parent relations representing trees in a forest, I needed to determine the number of unconnected trees. Additionally, I had to identify the root of the tree that contained the maximum number of children. A Depth-First Search (DFS) approach was suggested.

Q2
Maximize Same Elements in Sorted Array with K Increments
Data Structures & AlgorithmsMedium

I was given a sorted array of numbers and an integer value k. My task was to increment any number(s) in the array, using a total of at most k increments. The objective was to find the maximum number of identical elements that could be achieved in the array after these operations. A sliding window technique was hinted at.

Q3
Task Scheduler with Cooling Period
Data Structures & AlgorithmsMedium

Given an array of tasks, a CPU can process one task per cycle. However, similar tasks must be performed after a k cooling period cycles. I needed to determine the minimum CPU cycles required to complete all tasks. The problem statement suggested using a Heap or a Queue.

Q4
Implement TTL-based Cache
System DesignMedium

I was asked to implement a Time-To-Live (TTL) based cache. This involved designing a cache mechanism where key-value pairs would automatically expire after a specified duration.

Q5
Design a Notification System (LLD)
System DesignHard

I needed to design a Notification System at a Low-Level Design (LLD) level. The focus was on defining the classes, their relationships, and incorporating appropriate design patterns to build a robust and scalable system.

Goldman Sachs Interview Experience | Associate Role | Transaction Banking | Sep 2025 | Bangalore
goldman sachs logo
Goldman Sachs
associatebangalore3 yearsRejected
September 17, 202561 reads

Summary

I interviewed with Goldman Sachs for an Associate role, undergoing an Online Assessment, two coding rounds, and a Super Day comprising DSA, Low-Level Design, and High-Level Design rounds. Despite performing well in coding and some DSA, I was ultimately rejected after struggling in the High-Level Design round.

Full Experience

I applied directly on the Goldman Sachs portal, and soon after, a recruiter contacted me, providing a HackerRank test link for the first round.

1st Round - Online Assessment

This round consisted of two medium-difficulty questions. I successfully cleared this round and was invited for the next.

2nd Round - Coding (Codepad)

In this round, the interviewer presented two coding challenges. I was expected to provide the most optimal code. I successfully solved both problems, and all test cases passed within 30 minutes. This performance led to my selection for the Super Day.

Super Day Rounds

A week later, I participated in the Super Day, which involved three rounds conducted on the same day.

1st Round (DSA)

There were two interviewers in this round, each asking one question. I was able to partially solve the first design question but fully completed the second array problem with all test cases passing.

2nd Round (Low-Level Design)

This round began with discussions about my projects, followed by questions on NoSQL and SQL databases. I was then asked to design a system for a restaurant to track its most frequently ordered items. Additionally, there were Java-specific questions covering topics like the static keyword, garbage collection, and multithreading.

3rd Round (High-Level Design)

The final round involved designing a monitoring tool. Unfortunately, I struggled significantly in this round, partly because I felt my previous LLD round hadn't gone well, and I found myself unable to articulate a comprehensive solution.

Verdict

Ultimately, I was rejected after the Super Day rounds.

Interview Questions (6)

Q1
First Unique Character in a String
Data Structures & AlgorithmsEasy

Find the first non-repeating character in a string and return its index. If no such character exists, return -1.

Q2
Search in Rotated Sorted Array
Data Structures & AlgorithmsMedium

Find the integer in a rotated sorted array. The array was originally sorted in ascending order but was rotated at some unknown pivot point.

Q3
O(1) Data Structure for Update, Return, and Change All Values
Data Structures & AlgorithmsHard

Design a data structure that supports three operations: updating a specific value, returning a specific value, and changing all values currently in the data structure, all with O(1) time complexity.

Q4
Maximum Sum from Array Ends
Data Structures & AlgorithmsMedium

Given an array and an integer k, you can only take values either from the front or the back of the array. The goal is to output the maximum sum achievable by taking exactly k values.

Q5
LLD: Restaurant's Most Frequent Ordered Items
System DesignMedium

Design a system for a restaurant to track and identify its most frequently ordered items. The design should consider data structures, APIs, and overall system architecture for a low-level implementation.

Q6
HLD: Design a Monitoring Tool
System DesignHard

Design a high-level architecture for a generic monitoring tool. Consider aspects like data collection, storage, visualization, alerting, and scalability.

Goldman questions asked for Birmingham location SDEII
goldman sachs logo
Goldman Sachs
SDE IIbirmingham
September 15, 202540 reads

Summary

I recently interviewed at Goldman Sachs for an SDEII position in Birmingham, where I encountered a specific Data Structures & Algorithms question.

Full Experience

During my interview process for the SDEII role at Goldman Sachs in Birmingham, I was asked to solve a coding problem. I also noted a link to another LeetCode discuss post which might contain further details about a different problem.

Interview Questions (1)

Q1
Find Second Smallest Element in Array
Data Structures & AlgorithmsEasy

Given an array of integers, find the second smallest element. The solution should achieve an O(n) time complexity.

Goldman Sachs | Associate | interview experience
goldman sachs logo
Goldman Sachs
Associate3 yearsRejected
September 6, 202545 reads

Summary

I recently interviewed for an Associate role at Goldman Sachs. The process involved three rounds focusing on DSA and JavaScript. Unfortunately, I was rejected after failing to perform well in the second DSA round.

Full Experience

I was reached out by a recruiter for an Associate position with a frontend (React) focus. I have 3 years of experience in product-based companies.

Round 1 (DSA)

This round focused on Data Structures and Algorithms.

  • I was asked to find the second largest number in an array.
  • The second problem involved processing a 2D array of [name, marks]. My task was to group marks by name, compute the average for each name, and then return the maximum average among all names.

Round 2 (DSA)

The second DSA round proved to be challenging for me.

I didn't perform well in this round, which ultimately led to my rejection.

Round 3 (Javascript)

This round was focused on JavaScript concepts.

  • There was a discussion around reduce, filter, and the spread operator.
  • I was specifically asked to flatten a 2D array using the reduce method.
  • There was also a complex JavaScript problem involving both reduce and filter, though I don't recall the exact specifics.

I received a rejection verdict, primarily due to my performance in Round 2.

Interview Questions (5)

Q1
Find Second Largest Number in Array
Data Structures & AlgorithmsEasy

Given an array of numbers, find the second largest number in it.

Q2
Maximum Average from Grouped Marks
Data Structures & AlgorithmsMedium

You are given a 2D array of [name, marks]. You need to group marks by name, compute the average per name, and return the maximum average among all names.

Q3
Search in Rotated Sorted Array
Data Structures & AlgorithmsMedium

Refer to the LeetCode link for the full problem statement.

Q4
Find the Kth Largest Integer in the Array
Data Structures & AlgorithmsMedium

Refer to the LeetCode link for the full problem statement.

Q5
Flatten 2D Array using Reduce
OtherEasy

Demonstrate how to flatten a 2D array using the reduce method in JavaScript.

Goldman Sachs Virtual Panel Interview | August 2025 | Engineering Associate | USA
goldman sachs logo
Goldman Sachs
Engineering AssociateUSAOngoing
September 4, 202572 reads

Summary

I recently interviewed at Goldman Sachs for an Engineering Associate position, undergoing a virtual panel with three rounds covering algorithms, system design, and behavioral questions. I successfully advanced to the "Bar Raiser" round.

Full Experience

This virtual panel interview for an Associate position at Goldman Sachs was a follow-up to my CoderPad interview. The day consisted of three separate rounds, each lasting about 60 minutes, all conducted on the same day.

Round 1: Algo & Data Structures

The first round began with interviewers asking several common Core Java questions related to data structures such as Lists, Sets, and HashMaps. Following this, I was given two coding problems to solve: first, implementing a HashMap from scratch, and second, finding the length of the Longest Increasing Subsequence. There was a minor hiccup as the interviewers expected me to code in Java, but I clarified that I had opted for Python during the recruiter's initial query.

Round 2: Software Design and Architecture

This round started with a brief discussion about the High-level Design of a significant project I had worked on at my previous company. Afterward, we transitioned into a discussion about the High-Level Design (HLD) for a URL Shortener website, similar to tinyurl. The focus was purely on discussing trade-offs and architectural considerations, without the need for any diagrams.

Round 3: SDLC & Resume

The final round was quite relaxed, feeling more like a casual conversation with colleagues. The interviewers thoroughly reviewed my resume, asking detailed questions about my past experiences and responsibilities. We also discussed various Software Engineering practices, including how I approach creating JIRA tickets. Overall, it was a very chill experience and not as intimidating as it initially seemed.

Super Day Verdict: I advanced to the "Bar Raiser" round!

Interview Questions (2)

Q1
Longest Increasing Subsequence
Data Structures & AlgorithmsMedium

Find the length of the longest increasing subsequence in a given array.

Q2
Design URL Shortener
System DesignHard

Design a high-level architecture for a URL Shortener service similar to tinyurl. Discussion should cover trade-offs.

Interview Experience - Goldman Sachs - Analyst - 2yrs
goldman sachs logo
Goldman Sachs
compliance analyst2 yearsOngoing
August 30, 202516 reads

Summary

I underwent a multi-stage interview process at Goldman Sachs for an Analyst role, including an Online Assessment, Coderpad rounds, a comprehensive Superday, and a Hiring Manager interview. I am currently awaiting the final decision for the Compliance Analyst position.

Full Experience

I applied for the Analyst role at Goldman Sachs through a referral and received an Online Assessment link within a few days.

Round 1 - Online Assessment

This round consisted of two coding questions:

  • One question involved using a stack to remove substrings where a character appeared K or more times consecutively.
  • The second was a queue-based problem where I had to simulate a given problem statement.

Round 2 - Coderpad

This round also had two coding questions:

  • A standard Grid Dynamic Programming problem.
  • The classic problem of merging N sorted arrays into a single sorted array.

Superday

My Superday comprised three intense rounds conducted on the same day.

Round 3 - Data Structures

This round focused on data structures and algorithms:

  • I was given a sorted integer array and an integer 'k'. The task was to maximize the frequency of any number by distributing 'k' among elements (incrementing them) until 'k' was non-negative. For example, with [1,3,5,8,10,11,12] and k = 3, the answer is 3 (incrementing 11 by 1 and 10 by 2 results in three 12s). I discussed brute force, binary search, and sliding window solutions.
  • The second question was a standard Dynamic Programming problem on stocks.

Round 4 - Software Engineering Practices

This round delved into software engineering concepts and problem-solving:

  • A problem revolved around finding shortest paths on exchanges, specifically involving negative costs. I explained the limitations of Dijkstra's algorithm and then detailed Bellman-Ford and Floyd-Warshall algorithms.
  • Another problem was a standard sliding window question, which was exactly "Fruit Into Baskets" from LeetCode.

Round 5 - Software Design and Architecture

This was a system design focused round:

  • We started with an in-depth discussion about my current projects and Kafka.
  • Following that, I was given a problem statement similar to "Design Twitter". I thoroughly explained the Functional Requirements (FR), Non-Functional Requirements (NFR), APIs, Entities, and High-Level Design (HLD). My HLD included components such as Load Balancers, Microservices, Caching, CDNs, Asynchronous Processing, S3, DynamoDB, and various Fan-out services. It was a very engaging and insightful discussion, and I learned a lot.

An hour after the Superday, I received a call from HR, informing me that I needed to attend a Hiring Manager round at their office.

Round 6 - Hiring Manager Round

This round primarily focused on behavioral questions, exploring my past experiences and how I handle various situations.

I am now waiting for the final result for the Compliance Analyst role.

Interview Questions (6)

Q1
Remove Substrings with K or More Repeating Characters
Data Structures & Algorithms

I faced a question involving a stack where I needed to remove substrings if a particular character appeared more than or equal to 'k' times consecutively.

Q2
Merge N Sorted Arrays
Data Structures & Algorithms

I was asked to merge N given sorted arrays into a single sorted array.

Q3
Maximize Frequency of Number with K Operations
Data Structures & Algorithms

Given a sorted integer array and an integer 'k', in each operation, I could take some portion from 'k' and add it to any number in the array. This could be done until 'k' was non-negative. The goal was to maximize the frequency of any number using optimal operations. For example, if the array is [1,3,5,8,10,11,12] and k = 3, the answer is 3 because I can increment 11 by 1 and 10 by 2, making three occurrences of 12.

Q4
Shortest Path with Negative Costs (Bellman-Ford/Floyd-Warshall)
Data Structures & Algorithms

I was presented with a problem involving finding shortest paths on exchanges, which also included negative costs. I discussed the limitations of Dijkstra's algorithm and then explained Bellman-Ford and Floyd-Warshall algorithms as suitable solutions.

Q5
Fruit Into Baskets
Data Structures & Algorithms

I was given a standard sliding window problem, specifically related to collecting fruits into baskets.

Q6
Design Twitter
System Design

The round started with discussions about my current project and Kafka. Following that, I was given a problem statement similar to 'Design Twitter'. I explained the Functional Requirements (FR), Non-Functional Requirements (NFR), APIs, Entities, and High-Level Design (HLD) covering components like Load Balancers, Microservices, Caching, CDNs, Asynchronous Processing, S3, DynamoDB, and Fan-out services.

Goldman Sachs Associate Experience  - July 2025
goldman sachs logo
Goldman Sachs
AssociateIndia4 yearsRejected
August 27, 202534 reads

Summary

I interviewed for an Associate position at Goldman Sachs in July 2025. The process included an online assessment, a CoderPad interview, and a SuperDay consisting of multiple rounds. Unfortunately, I was rejected after the second SuperDay round because I could not fully complete one of the coding questions within the time limit.

Full Experience

Background

  • I have 4 years of experience and am based in India.
  • A recruiter initially reached out to me through Naukri.
  • The team I was interviewing for was Compliance Engineering.

Interview Structure

The overall interview process was structured as follows:

  • Screening: HackerRank Online Assessment (2 hours)
  • Round 0: CoderPad Interview (1 hour)
  • SuperDay Rounds (Onsite Loop): These were scheduled for the same day.
    • Round 1: Data Structures (1 hour)
    • Round 2: Software Engineering Practices/DSA (1 hour)
    • Round 3: Software Design and Architecture (1 hour) - I did not proceed to this round.
    • Round 4: Hiring Manager Round - I did not proceed to this round.

Screening: HackerRank OA (2 hours)

I completed the HackerRank Online Assessment within 15–20 minutes. The questions were relatively easy.

Round 0: CoderPad Interview (1 hour)

This round involved two coding questions:

  1. First Unique Character in a String: I used a two-pass fixed-size frequency array approach, achieving O(N) time complexity.
  2. Trapping Rain Water: My chosen approach was a two-pointer scan from both ends, updating bounds and accumulating water.

I successfully coded the most optimal solutions for both problems, and all test cases passed.

SuperDay Round 1: Data Structures (1 hour)

This round focused on Data Structures with two problems:

  1. Reverse Single-Linked-List in k-Groups
  2. Longest Increasing Subsequence

SuperDay Round 2: Software Engineering Practices or DSA (1 hour)

I was given one main question for this round:

  1. Shortest Path with K Hops/Free Edges

Unfortunately, I could only code this single question within the allocated hour, which meant I did not proceed to Round 3.

Verdict

I received a rejection after SuperDay Round 2.

Interview Questions (5)

Q1
First Unique Character in a String
Data Structures & AlgorithmsEasy

Given a string s, find the first non-repeating character in it and return its index. If it does not exist, return -1.

Q2
Trapping Rain Water
Data Structures & AlgorithmsHard

Given n non-negative integers representing an elevation map where the width of each bar is 1, compute how much water it can trap after raining.

Q3
Reverse Nodes in k-Group
Data Structures & AlgorithmsHard

Given the head of a linked list, reverse the nodes of the list k at a time, and return the modified list.

Q4
Longest Increasing Subsequence
Data Structures & AlgorithmsMedium

Given an integer array nums, return the length of the longest strictly increasing subsequence.

Q5
Shortest Path with K Hops/Free Edges
Data Structures & AlgorithmsHard

Find the shortest path in a graph, allowing for up to K special 'hops' or 'free edges' that might have different cost considerations.

Goldman Sachs Online Assessment Question | String | GCD | Maths
goldman sachs logo
Goldman Sachs
Ongoing
August 26, 202518 reads

Summary

I recently encountered a problem during my Goldman Sachs Online Assessment related to simplifying fractions, which required applying GCD concepts.

Full Experience

During my recent online assessment for Goldman Sachs, I was presented with a problem that involved simplifying fractions. The core task was to take a string in the format "a/b" and reduce it to its lowest terms, ensuring the denominator remains positive. It was a straightforward implementation once the logic for handling negative numbers and using the greatest common divisor (GCD) was clear.

Interview Questions (1)

Q1
Simplify Fraction
Data Structures & AlgorithmsEasy

Problem: Simplify Fraction

You are given a string s in the form "a/b", where a and b are integers (which may be positive or negative).

Your task is to reduce the fraction into its lowest terms.

  • If the fraction reduces to an integer, return the integer (as a string).
  • If not, return the simplified fraction in the form "p/q".
  • Ensure the denominator is always positive (move any negative sign to the numerator).

Examples

Input: "13/12"
Output: "13/12"

Input: "4/6"
Output: "2/3"

Input: "10/100"
Output: "1/10"

Input: "100/400"
Output: "1/4"

Input: "7/35"
Output: "1/5"

Input: "-12/13"
Output: "-12/13"

Input: "12/-4"
Output: "-3"

Input: "-8/-4"
Output: "2"

Goldman Sachs CoderPad Interview | August 2025 | Engineering Associate | USA
goldman sachs logo
Goldman Sachs
Engineering AssociateUSA
August 7, 20251 reads

Summary

I recently appeared for my CoderPad interview round for an Associate position at Goldman Sachs. The interview focused on DSA, where I was asked two very easy questions, including an easier variation of the 'High Five' problem, which I solved successfully. I am currently awaiting the results of the interview.

Full Experience

I recently appeared for my CoderPad interview round for an Associate position at Goldman Sachs. The interviewer was on-time. It started with an overview of what to expect during this round, followed by quick introductions.

The interview was focus on DSA. I had opted for Python as my language prior to the interview. The interviewer also mentioned that I'm allowed to use Google (no AI tools like ChatGPT) for looking up syntax, but not the whole code itself. I was asked two very easy questions which I was able to complete in about 30 minutes. The interviewer was helpful and provided hints as well.

First question: It was a very easy Array question which could be solved using Two-Pointers technique. I presented brute, better and optimal approaches, and we implemented the optimal approach (TC: O(N), SC: O(1)) after discussing the trade-off's.

Second question: A much easier variation of the "High Five" question that required just a Hash Map (no min/max heaps). This problem has only a single solution (TC: O(N) + O(M) where N is the size of the list and M is the size of the HashMap, SC: O(M))

The interviewer was satisfied with the approach and we tested all the edge cases for both the problems. The interview concluded with the questions for the interviewer.

TBH, I was pretty nervous before the interview since it has been a minute since I appeared for one. But when the questions were rolled, I felt confident. I prepared for the interview using LC-Tagged.

Awaiting result of the interview.

Interview Questions (1)

Q1
High Five (Easier Variation with Hash Map)
Data Structures & AlgorithmsEasy

A much easier variation of the "High Five" question that required just a Hash Map (no min/max heaps). This problem has only a single solution. I presented an approach with time complexity O(N) + O(M) where N is the size of the list and M is the size of the HashMap, and space complexity O(M).

Preparation Tips

I prepared for the interview using LC-Tagged.

Goldman Sach OA | When I'll get HR call
goldman sachs logo
Goldman Sachs
3 years
August 6, 20254 reads

Summary

I recently completed an Online Assessment for Goldman Sach, successfully solving both given data structures and algorithms questions. I am now waiting for an HR call regarding the next steps.

Full Experience

Experience: 3 years 1 month
College: One of the IIIT
Current Compnay: US based healthcare startup, prevously in a Media giant.

Tech: Python backend

Hi Everyone,
Recently I got OA link from Goldman Sach and solve both questions.
1. A string of Alphabets, you have to find out the appearance of each charecter. [EASY]
e.g: aaEEbghf
o/p: 2a2E1b1g1h1f

2. Not exactly remember but question is like below-
Encode a string and decode it. A lot of Exception I have to handled, in question it was mention there will be a good number of exceptions, you have to handle it without try-catch block. After multiple iteration I was able to solve the questions. [HARD - because test cases were locked]

OA date: 27th July, 2025

When I'll get the HR call? I checked in online they are saying within 10 days most of the cases.

Interview Questions (2)

Q1
Character Count in String
Data Structures & AlgorithmsEasy

Given a string of alphabets, you have to find out the appearance of each character. For example, input: aaEEbghf, output: 2a2E1b1g1h1f.

Q2
String Encoding and Decoding with Exception Handling
Data Structures & AlgorithmsHard

The question involved encoding a string and then decoding it. A significant aspect was handling various exceptions without using traditional try-catch blocks. I managed to solve it after multiple iterations.

Goldman Sachs Summer Analyst Internship Interview Experience 2025 (Selected)
goldman sachs logo
Goldman Sachs
Summer Analyst Internship
August 4, 20253 reads

Summary

I recently went through the Goldman Sachs Summer Analyst internship hiring process and was selected. The process involved an online assessment followed by three eliminatory technical and HR rounds, covering projects, Data Structures & Algorithms (DSA), and scenario-based questions.

Full Experience

Hi everyone,
I recently went through the Goldman Sachs Summer Analyst internship hiring process and wanted to share my experience. Hopefully, this helps anyone preparing for it!


Online Assessment (1 hour)

Multiple MCQs + 3 coding problems + 1 situation-based essay.
Topics: DSA, OOPs, and some basic math.


Interview Process (3 eliminatory rounds)

Round 1 (Technical)

Discussion about one of the projects from my resume.
DSA Question: Rotten Oranges variation (fruits instead). Given a test case and asked to dry run it.
Follow-ups and discussed edge cases.

Round 2 (Technical + HR)

Again discussed a project from my resume.
HR: Challenges faced while doing the project.
The interviewer gave a case and asked how I would implement that scenario in my project (follow-up question).
DSA Question: Given two strings s and p, find all starting indices of anagrams of p in s.
JavaScript questions were linked to the DSA problem — for example, how I would implement the logic and handle the results on the frontend for this DSA question.
Follow-ups, discussed edge cases, and time complexity.

Round 3 (Technical)

Discussion about one of the projects from my resume.
DSA Question: Given currency conversion rates, determine if there exists a conversion path that can yield a profit.

Each round lasted ~30-40 minutes.

Verdict: Selected 🎉

Interview Questions (3)

Q1
Rotten Fruits (Rotten Oranges Variation)
Data Structures & AlgorithmsMedium

A variation of the Rotten Oranges problem, involving fruits instead. I was given a test case and asked to dry run the solution, discussing follow-ups and edge cases.

Q2
Find All Anagrams in a String
Data Structures & AlgorithmsMedium

Given two strings s and p, find all starting indices of p's anagrams in s. I also had to answer JavaScript-specific questions on how I would implement the logic and handle the results on the frontend for this DSA question, discussing follow-ups, edge cases, and time complexity.

Q3
Currency Arbitrage Path Detection
Data Structures & AlgorithmsHard

Given a set of currency conversion rates, determine if there exists a conversion path that can yield a profit (i.e., ending with more money than started with after converting back to the original currency).

Preparation Tips

My preparation focused on Data Structures & Algorithms (DSA), Object-Oriented Programming (OOPs), and basic math, which were essential for the online assessment. I also practiced discussing my resume projects and preparing for behavioral and scenario-based questions.

Goldman Sachs Summer Analyst Internship Interview 2025
goldman sachs logo
Goldman Sachs
Summer Analyst Internship
August 3, 20252 reads

Summary

I interviewed for a Summer Analyst Internship at Goldman Sachs, which involved an online assessment followed by two technical rounds. Despite performing well in the initial DSA rounds, I was rejected after a challenging second technical round that focused heavily on my resume details, systems, and theoretical concepts rather than problem-solving.

Full Experience

Lately, i got the opportunity to interview at Goldman Sachs, as they had visited my campus.

Round-1: Online Assessment:
This consisted of mulptiple MCQs and three coding problems and one situation-based essay. This round was for an hour. Topics included DSA and OOPs.

Round-2: Technical-Round-1:
This consisted of two problems and around 30-35 minutes. We were required to explain our approach and write a pseudo-code and make a dry run with around 2 test-cases.
I was also asked about my projects in this round with some crux-working explaining.
The first problem was Rising Temparatures and second one was "Candy" on leetcode. These were fairly doable problems and i could do them in the required time after some optimisations while dry-run. The interviewer seemed to be pretty happy.

Round-3: Technical-Round-2:
This usually consists of a hard-level leetcode questions, my peers were asked DSA. However, i wasnt asked any DSA and was thoroughly grilled on my resume, asked me in-built library functions, encrytion techniques, Computer Networks, Docker and ci/cd pipeline, architecture. I found this round pretty hard and the evaluation seemed to be unfair as i was asked tougher questions compared to others. It took me some time to process this round. It was very intimadating and "ab-normal" for an internship interview where you were being evaluated on problem-solving and not on software concepts. Anyways, i respect their decision and it is fair to be asked. Wish i had made it!

Would like to know if something like this has happened in your interviews!

Verdict: Rejected! :(

Interview Questions (9)

Q1
Rising Temperatures
Data Structures & Algorithms

I was asked the 'Rising Temperatures' problem. I had to explain my approach, write pseudo-code, and dry run with 2 test cases.

Q2
Candy
Data Structures & Algorithms

I was asked the 'Candy' problem from LeetCode. I had to explain my approach, write pseudo-code, and dry run with 2 test cases.

Q3
Discussion on Projects
Behavioral

I was asked about my projects, requiring me to explain their core workings.

Q4
Resume Deep Dive
Behavioral

I was thoroughly grilled on the details of my resume.

Q5
In-built Library Functions
Other

I was asked questions about various in-built library functions.

Q6
Encryption Techniques
Other

I was asked questions related to encryption techniques.

Q7
Computer Networks Concepts
Other

I was asked questions about Computer Networks.

Q8
Docker and CI/CD Pipeline
System Design

I was asked questions about Docker and CI/CD pipelines.

Q9
System Architecture Concepts
System Design

I was asked questions about system architecture.

[Offer] Goldman Sachs Summer Analyst 2026 – Full Interview Experience
goldman sachs logo
Goldman Sachs
Summer Analyst
August 1, 20253 reads

Summary

I successfully secured an offer for the Goldman Sachs Summer Analyst 2026 position after undergoing three rounds of interviews that focused on technical skills, data structures and algorithms, HR, and analytical problem-solving. My communication, approach, and mindset were key factors that contributed to my selection.

Full Experience

🟢 Round 1 – Technical + HR Blend

This was my first-ever interview, and I was honestly nervous. But the interviewer made me feel at ease from the start.

❓ Question: Tell me something that's not in your resume

I spoke about my role as the Technical Head at QCM, where we manage the club’s website, conduct quizzes, and handle role-based access. This led to a long technical discussion.

💬 We discussed:

  • How we store quiz data
  • Use of Apprite as BaaS
  • Role-Based Access (RBA)
  • How quizzes are conducted through our platform

🧠 DSA Question:

Given two strings A and B, find the minimum length substring of A that contains all characters of B (order doesn't matter).

My Approach:

  • Started with a brute-force O(n²) solution and wrote the code
  • Then optimized it using two-pointer sliding window, explained the logic clearly
  • The interviewer was happy with the explanation — no need to write the optimized code

We ended with a few HR questions like:

  • Tell me about a time you faced conflict in a team
  • How did you resolve it?

🔵 Round 2 – Core DSA Problem

This round focused purely on DSA.

❓ DSA Question:

Given a grid with a start and an end cell. Each cell has some coins. Find a path from start to end such that maximum coins are collected.

💡 My Approach:

  • Proposed a DFS solution

  • Interviewer asked: “Why not BFS?”

    • Explained that BFS is suitable for shortest path/minimum-based problems, but for maximization, DFS helps explore all possibilities
  • Discussed time complexity: exponential due to recursion

  • Then I proposed DP with memoization to optimize the solution

💻 Coding:

  • Wrote a clean recursive + DP solution with minimal bugs
  • Interviewer was impressed with my clarity and approach

🟡 Round 3 – HR + Analytical + Tech

Though it was the HR round, it included some technical discussion too.

Topics Covered:

  • Deep dive into my Walmart Sparkathon project
  • Asked what improvements I would make if I rebuilt it from scratch with experience

❓ Unexpected Twist:

  • Gave me a problem without specifying how to solve it
  • I solved it using a DSA approach, which he appreciated
  • Then he asked me to solve the same using MySQL
    • I struggled at first, but after some hints and back-and-forth, I managed to solve it
    • He was satisfied with my willingness to learn and adapt

HR Questions:

  • Why should we hire you?
  • Why is Goldman Sachs important to you?

✅ Final Verdict: Selected

All three interviewers were chill, engaging, and helpful. They weren’t just testing coding skills — they were observing my communication, approach, and mindset.


💭 Final Thoughts

An interview isn’t just about getting the correct answer.
People often treat interviews as one-way evaluations, but they're actually conversations.

If you're solving a problem:

  • Speak your thoughts aloud
  • Keep the interviewer in the loop
  • Ask for hints if you’re stuck — don’t let ego stop you

Interviewers are not there to trap you — they’re there to understand your approach and help you succeed.


Feel free to reach out if you're preparing for GS or any similar SDE interviews. Happy to help! 😊

Interview Questions (5)

Q1
Tell me something not on your resume
Behavioral

Tell me something that's not in your resume

Q2
Minimum Window Substring
Data Structures & AlgorithmsHard

Given two strings A and B, find the minimum length substring of A that contains all characters of B (order doesn't matter).

Q3
Describe a conflict in a team and its resolution
Behavioral

Tell me about a time you faced conflict in a team. How did you resolve it?

Q4
Max Coins Path in Grid
Data Structures & AlgorithmsMedium

Given a grid with a start and an end cell. Each cell has some coins. Find a path from start to end such that maximum coins are collected.

Q5
Why Goldman Sachs and why hire you?
Behavioral

Why should we hire you? Why is Goldman Sachs important to you?

GOLDMAN SACHS Interview Experience (Jun- July 2025)
goldman sachs logo
Goldman Sachs
July 28, 20253 reads

Summary

I applied to Goldman Sachs, successfully cleared the Online Assessment with two custom coding problems, but unfortunately, I was rejected after the second coding round, where I made a mistake on one of the LeetCode problems (Fraction to Recurring Decimal).

Full Experience

I had applied on 14/06/2025. I got OA link on 25th June 2025. It had 2 questions of easy-med level.

  1. Persons A and Buses an encryption based system for their conversation. Each conversation message is encoded from the source and decoded in the destination using a shared private positive number key known to each other

2)Given a number 'x', and a range of 'y' , please find the count of all the numbers in' in that range, such that the product of the number 'n' and 'x' does not contain any digit from the number 'n'. General Constraints: All the inputs will be integers and below 10$ E.g., if x = 2, y = 10 and z = 15, then, 2 × 10 = 20 // Invalid, since the product contains 0 from 10. 2 x 11 = 22 // Valid

I was able to answer these.

Round 2: coderpad. 18/07/2025 This round has 1 easy question and 1 med level question.

  1. Power question: https://leetcode.com/problems/powx-n/description/?envType=problem-list-v2&envId=n86csxy2

  2. Recurring decimal: https://leetcode.com/problems/fraction-to-recurring-decimal/description/?envType=problem-list-v2&envId=n86csxy2

Unfortunately I made some mistake for 2nd question and after few days application got turned down.

Interview Questions (4)

Q1
Encryption System with Shared Key
Data Structures & Algorithms

Persons A and Buses an encryption based system for their conversation. Each conversation message is encoded from the source and decoded in the destination using a shared private positive number key known to each other

Q2
Count Numbers Whose Product with X Lacks Digits of N
Data Structures & Algorithms

Given a number 'x', and a range of 'y' , please find the count of all the numbers in' in that range, such that the product of the number 'n' and 'x' does not contain any digit from the number 'n'. General Constraints: All the inputs will be integers and below 10$ E.g., if x = 2, y = 10 and z = 15, then, 2 × 10 = 20 // Invalid, since the product contains 0 from 10. 2 x 11 = 22 // Valid

Q3
Pow(x, n)
Data Structures & AlgorithmsEasy
Q4
Fraction to Recurring Decimal
Data Structures & AlgorithmsMedium
Goldman Sachs - Offer Accepted - US
goldman sachs logo
Goldman Sachs
Associate (Software Engineer)Dallas, TX3 years
July 25, 20252 reads

Summary

I applied for an Associate (Software Engineer) position at Goldman Sachs in Dallas, TX, and after navigating CoderPad screenings, a virtual panel, and a hiring manager interview, I successfully received and accepted an offer.

Full Experience

Position - Associate (Software Engineer)
Location - Dallas, TX
Status - F1 student (May 25 graduate), 3 years fintech exp

---

Application Timeline -


  • Apr 27: Applied via careers portal
  • May 28: Email requesting availability for CoderPad screening
  • Jun 06: Round 1 – CoderPad
  • Jun 17: Advanced to virtual panel interview
  • Jul 09: Virtual panel (3 rounds)
  • Jul 10: Advanced to hiring‑manager interview
  • Jul 11: Hiring‑manager round
  • Jul 18: HR call (compensation and basic info)
  • Jul 21: Preliminary immigration call with Fragomen
  • Jul 24: HCM call — verbal offer, written offer received an hour later

---

Interview Breakdown -


>All leetcode questions were GS tagged questions

Round 1 — CoderPad (60 min)

  • 10–15 min: introductions and resume deep‑dive
  • Coding:
    • Medium — BFS/DFS
    • Hard — two‑pointer
    • Fully working code with test cases required

Virtual On‑Site (three 60‑min rounds, all in CoderPad)


  • Data Structures: Low‑level design; LeetCode‑style medium design problem
  • Software Engineering Practices:
    • 40 min resume discussion
    • Medium binary‑search question (coded during remaining time)
  • System Design & Architecture: System design — design a platform like LeetCode (more open-ended)

Hiring Manager Round

  • Scheduled for 30 min but lasted over an hour
  • Purely behavioral questions
  • Second half was mainly about the team and day-to-day activities

---
Hope this helps anyone on a similar journey — good luck and happy grinding!

PS: I did use ChatGPT to refine the post.

Interview Questions (1)

Q1
Design a Platform Like LeetCode
System Design

System design problem: Design a platform like LeetCode. This was described as a more open-ended question.

Coderpad Round GoldMan Sachs
goldman sachs logo
Goldman Sachs
July 23, 20253 reads

Summary

I cleared the HackerRank round and was invited for a CoderPad round at Goldman Sachs where I was asked two data structures and algorithms questions.

Full Experience

I cleared the hackerRank round from Goldman and got call after a week for coderPad round. Interviewer asked 2 questions 1 easy and 1 Medium.

Interview Questions (2)

Q1
Find 2nd Smallest Element in a Stream
Data Structures & AlgorithmsEasy

Find the 2nd Smallest element in a stream.

Q2
Minimum Path Sum (Variation)
Data Structures & AlgorithmsMedium

A variation of the problem Minimum Path Sum.

Goldman Sachs Programming Challenge (OA)
goldman sachs logo
Goldman Sachs
July 19, 20257 reads

Summary

I appeared for a Goldman Sachs Online Assessment today after being reached out to by a recruiter on LinkedIn. I successfully solved both programming challenges within 50 minutes.

Full Experience

Appeared for GS OA today Recruiter had reached out via LinkedIn Was able to solve both in about 50 mins. Lets see what happens next

Interview Questions (2)

Q1
Number of Cores Needed (CPU Scheduling)
Data Structures & Algorithms

Two arrays, start and end time were given which represented the process's start and end time. An O(n log n) solution was expected.

Q2
Longest Subsequence with K XOR Sum
Data Structures & Algorithms

Find the length of the longest subsequence such that XOR of adjacent elements is equal to K. An O(n) solution was expected. (Referenced GFG - GeeksforGeeks)

Goldman Sachs, Associate Interview Experience - USA (Salt Lake City) - rejected
goldman sachs logo
Goldman Sachs
AssociateUSA (Salt Lake City)
July 16, 20253 reads

Summary

I was referred for an Associate position at Goldman Sachs in Salt Lake City. The interview process included CoderPad, DSA, Software Design, and SDLC rounds, but I was ultimately rejected even though I felt the questions were manageable.

Full Experience

I was refered to the postion by a friend. Got email after a month for Coderpad.

CoderPad Round:

  1. Check if a number is Power of 10.
  2. Provided student name scores, find the highest average grade in the class.

After 2 weeks I got the result and was selected for next rounds. All the 3 rounds back to back on same day.

Round 1 : DSA

  1. Asked few questions around my work/resume and how my day to day work like.
  2. Coding : Given a dictionary ={ cat, zat, force, zebra} and char Array = {a, c ,a ,k,z, e, t}, what is the longest word that can be formed. I though I might be able to use Trie for optmization, big mistake. This problem is has simple solution with freq map/count. I did provide that solution, but I was hung up on finding optimal solution, which might have ticked off the interviewer.

Round 2: Software Design They straight jumped to question: Design Twitter to post and Search tweets. Questions around what I did and why I built is that way. SQL/NoSQL etc etc.

Round 3: SDLC and resume: Just grilling around my resume and day to day work.

I was not confident on the interview I gave, It couldn't have been easier, yet I wasn't able to give my best. After 3 weeks got rejection email.

Interview Questions (4)

Q1
Check if a number is Power of 10
Data Structures & Algorithms

Check if a number is Power of 10.

Q2
Highest Average Grade
Data Structures & Algorithms

Provided student name scores, find the highest average grade in the class.

Q3
Longest Word from Character Array
Data Structures & Algorithms

Given a dictionary ={ cat, zat, force, zebra} and char Array = {a, c ,a ,k,z, e, t}, what is the longest word that can be formed.

Q4
Design Twitter (Post and Search Tweets)
System Design

Design Twitter to post and Search tweets. Questions around what I did and why I built is that way. SQL/NoSQL etc etc.

Goldman Sachs CoderPad Interview || US position
goldman sachs logo
Goldman Sachs
US
July 15, 20253 reads

Summary

I experienced a CoderPad interview at Goldman Sachs for a US position, where I was presented with a unique string encoding problem involving a 'repeat from beginning' instruction.

Full Experience

You are given a sequence of characters, representing a series of steps. You need to find the minimum number of characters required to encode this sequence using a special "repeat from the beginning" instruction, denoted by '*'.

The '' instruction means that the currently encoded prefix should be repeated from its beginning. For example, if you have encoded "AB", then "AB" would expand to "ABAB". If you have encoded "ABC", then "ABC*" would expand to "ABCABC". This repeat instruction can be applied multiple times implicitly (e.g., 'A*' for 'AAA').

Your task is to write a function that takes the un-encoded sequence as input and returns the minimum number of characters required to encode it.

Example:

Consider the sequence "A, B, A, B, C, A, B, A, B, C, D". This can be encoded as "ABCD" which has a length of 6 characters.

We can name the problem as: MINIMUM ENCODING LENGTH

Test Cases:

print(f"'AA': {findMinChars('AA')}") # Expected: 2 (A + A) or (A* implies A repeated multiple times) print(f"'AAA': {findMinChars('AAA')}") # Expected: 2 (A*) print(f"'ABAB': {findMinChars('ABAB')}") # Expected: 3 (AB*) print(f"'ABABA': {findMinChars('ABABA')}") # Expected: 4 (ABA) print(f"'AAAAA': {findMinChars('AAAAA')}") # Expected: 2 (A) print(f"'ABCABCABC': {findMinChars('ABCABCABC')}") # Expected: 4 (ABC*) print(f"'ABABCABABCD': {findMinChars('ABABCABABCD')}") # Expected: 6 (ABCD)

Interview Questions (1)

Q1
Minimum Encoding Length with Repeat Instruction
Data Structures & Algorithms

You are given a sequence of characters, representing a series of steps. You need to find the minimum number of characters required to encode this sequence using a special "repeat from the beginning" instruction, denoted by '*'.

The '' instruction means that the currently encoded prefix should be repeated from its beginning. For example, if you have encoded "AB", then "AB" would expand to "ABAB". If you have encoded "ABC", then "ABC*" would expand to "ABCABC". This repeat instruction can be applied multiple times implicitly (e.g., 'A*' for 'AAA').

Your task is to write a function that takes the un-encoded sequence as input and returns the minimum number of characters required to encode it.

Example:

Consider the sequence "A, B, A, B, C, A, B, A, B, C, D". This can be encoded as "ABCD" which has a length of 6 characters.

We can name the problem as: MINIMUM ENCODING LENGTH

Test Cases:

print(f"'AA': {findMinChars('AA')}") # Expected: 2 (A + A) or (A* implies A repeated multiple times) print(f"'AAA': {findMinChars('AAA')}") # Expected: 2 (A*) print(f"'ABAB': {findMinChars('ABAB')}") # Expected: 3 (AB*) print(f"'ABABA': {findMinChars('ABABA')}") # Expected: 4 (ABA) print(f"'AAAAA': {findMinChars('AAAAA')}") # Expected: 2 (A) print(f"'ABCABCABC': {findMinChars('ABCABCABC')}") # Expected: 4 (ABC*) print(f"'ABABCABABCD': {findMinChars('ABABCABABCD')}") # Expected: 6 (ABCD)

Goldman Sachs Interview - Associate (US) | ✅ SELECTED
goldman sachs logo
Goldman Sachs
AssociateUS
July 15, 20256 reads

Summary

I successfully navigated multiple interview rounds for an Associate role at Goldman Sachs, including an online assessment, live coding, a Superday focused on data structures and system design, and a resume deep dive, ultimately receiving and accepting an offer.

Full Experience

Interview Experience – Accepted Offer

Application Source:
Applied on my behalf by applyjobsforme.com – they handled the job application process for me.


🧪 Round 1: Online Assessment

The initial round was an online assessment consisting of 2 data structures and algorithms questions, both of which I successfully solved within the time limit.

  • The questions were of medium difficulty, and focused on core problem-solving ability.
  • The platform tested for edge cases and optimality.

💻 Round 2: CoderPad Interview (Live Coding + Discussion)

The interview began with a brief self-introduction and then moved into live coding via CoderPad. The interviewer was collaborative and encouraged thinking out loud.

Question 1 (Medium): Top Student Scores Averaging

Problem:
You are given a list of [student_id, score] pairs. For each student, return the average of their top scores. If the top score is repeated, it should still be considered.

Example Input:

[[1, 100], [1, 100], [1, 100], [2, 99]]

Expected Output:

[[1, 100], [2, 99]]

Question 2 (Medium): Fraction to Recurring Decimal

Problem:
Given a numerator and denominator, return the result as a string. If the fractional part is recurring, enclose the repeating part in parentheses.

  • Examples:
    • 5/10 → "0.5"
    • 1/3 → "0.(3)"

I handled edge cases like negative numbers, zero numerators, and long recurring cycles.


🎯 Behavioral Segment:

  • Discussed motivation, past projects, and challenges overcome.
  • Shared an example of working under pressure and taking initiative.

✅ Successfully cleared this round. Got a call back for the Superday after nearly 2 months of wait.


🔍 Round 3: Superday – Data Structures Focus

Panel included two interviewers, each of whom asked one technical problem.

Question 1: Trapping Rain Water

A classic two-pointer problem to calculate the volume of water trapped after rainfall.

Question 2: Implement stoi (String to Integer)

Recreate the stoi function.

  • Handled white spaces, sign, integer overflow, and invalid characters.
  • Edge cases like " -42".

The focus was on string parsing, input validation


🛠️ Round 4: Superday – Software Engineering Practices

Another panel of two interviewers, this time focused on system and product thinking.

Question: Low-Level Design of Google Calendar

  • Designed a simplified version of Google Calendar with core functionalities:
    • Create, update, delete events.
    • Handle overlapping events.
    • Notification/reminder system.
    • Scalability for millions of users.
  • Discussed use of:
    • Data models (event schema, user calendar),
    • Concurrency handling,
    • API structure, and
    • Design tradeoffs like consistency vs availability.

I made sure to cover both object-oriented design and real-world constraints (like syncing across time zones).


📄 Round 5: Resume Drill / Deep Dive

  • Walked through resume projects and past roles.
  • Emphasis on impact, technologies used, and challenges faced.
  • They asked about one project in depth—how I designed it, what improvements I’d now make, and technical decisions behind it.

🎉 Result: Accepted Offer!

After multiple rounds and a considerable waiting period post-superday, I finally received an offer letter.

Interview Questions (5)

Q1
Top Student Scores Averaging
Data Structures & AlgorithmsMedium

You are given a list of [student_id, score] pairs. For each student, return the average of their top scores. If the top score is repeated, it should still be considered.

Example Input:

[[1, 100], [1, 100], [1, 100], [2, 99]]

Expected Output:

[[1, 100], [2, 99]]
Q2
Fraction to Recurring Decimal
Data Structures & AlgorithmsMedium

Given a numerator and denominator, return the result as a string. If the fractional part is recurring, enclose the repeating part in parentheses.

  • Examples:
    • 5/10 → "0.5"
    • 1/3 → "0.(3)"
Q3
Trapping Rain Water
Data Structures & Algorithms

A classic two-pointer problem to calculate the volume of water trapped after rainfall.

Q4
Implement `stoi` (String to Integer)
Data Structures & Algorithms

Recreate the stoi function. Handled white spaces, sign, integer overflow, and invalid characters. Edge cases like " -42".

Q5
Low-Level Design of Google Calendar
System Design
  • Designed a simplified version of Google Calendar with core functionalities:
    • Create, update, delete events.
    • Handle overlapping events.
    • Notification/reminder system.
    • Scalability for millions of users.
  • Discussed use of:
    • Data models (event schema, user calendar),
    • Concurrency handling,
    • API structure, and
    • Design tradeoffs like consistency vs availability.

Preparation Tips

💡 Tips for Future Candidates:

  • Practice fundamentals – hashing, heaps, prefix/suffix arrays, and string manipulation.
  • Be ready to explain edge cases, time/space tradeoffs, and design choices clearly.
  • For system design rounds, think like a product engineer – focus on usability, scalability, and reliability.
  • Don't forget behavioral prep – STAR format helps a lot.
Goldman Sachs | Reject | Rookie Mistake
goldman sachs logo
Goldman Sachs
Frontend Developer
July 13, 20252 reads

Summary

I interviewed for a Frontend Developer role at Goldman Sachs, which resulted in a rejection after I struggled with one coding problem and made a rookie mistake in my preparation, particularly around managing pressure and articulating my approach.

Full Experience

Round 1 - Technical (1 Hour) Interviewer: Friendly and supportive

Question 1:

Variation of Second Smallest.

Before coding, I was asked to clearly explain my understanding of the problem and approach.

I completely blanked out — couldn’t think clearly under pressure, even though it was a relatively simple problem.

I was expected to generate my own edge case test cases. Spent ~30 minutes on this and couldn’t make progress.

Question 2:

Twisted version of [LeetCode 1086. High Five].

Solved it in 5 minutes with a clean approach. Interviewer appreciated the solution and allowed me to retry the first question.

Back to Question 1:

Came up with a working solution in O(n log n), but the expected solution was O(n).

Interview Questions (2)

Q1
Find Second Smallest Element in an Array
Data Structures & Algorithms

I was presented with a variation of the problem to find the second smallest element in an array. Before coding, I was asked to clearly explain my understanding of the problem and approach. I was also expected to generate my own edge case test cases. An O(n) solution was expected.

Q2
Twisted Version of High Five
Data Structures & AlgorithmsMedium

I was given a twisted version of LeetCode 1086. High Five. The original problem typically asks to calculate the average of the top five scores for each student. I needed to adapt this to the specific twisted requirements provided during the interview.

Preparation Tips

I had 4 days to prepare for the interview, during which I focused primarily on Goldman Sachs-specific questions, though none of them were asked. My key learnings for future preparation include: being able to articulate the problem and my approach before jumping into code, practicing solving problems under pressure, simulating actual interview environments during prep, being prepared to generate edge cases independently, and learning to reset my mindset quickly if I get stuck.

Goldman Sachs | Analyst (2YOE) | Interview Experience | Bangalore
goldman sachs logo
Goldman Sachs
AnalystBangalore2 years
July 10, 20254 reads

Summary

I applied for an Analyst position at Goldman Sachs in Bangalore via referral. The interview process consisted of six rounds: an Online Assessment, two Coderpad rounds focusing on DSA, two Superday rounds covering Data Structures, Software Engineering Practices, Software Design and Architecture, and a final Hiring Manager round, ultimately leading to a successful offer.

Full Experience

Applied via referral


R1 - OA

2 Medium DSA Questions.


R2 - Coderpad Round (Coderpad + Zoom - 60 mins 1 Interviewer)

  1. Shortest Subarray to be Removed to Make Array Sorted
  2. Number of Islands

Fumbled while solving first problem, but kept on communicating clearly and asking questions, eventually got the approach and coded it out. Solved 2nd question within 5 minutes.


R3 - Superday - Data Structures (Coderpad + Zoom - 60 mins 2 Interviewers)

  1. Gas Station
  2. Minimum Window Substring

Solved both the problems.


R4 - Superday - Software Engineering Practices (Coderpad + Zoom - 60 mins 2 Interviewers)

Resume questions based on Database, Sharding vs Partitioning, Explain keyword used in sql, Types of scans used in explain statement and it's advantages/disadvantages over others. Javascript question based on creating a debouncing function and possible optimizations.


R5 - Superday - Software Design and Architecture (Coderpad + Zoom - 60 mins 2 Interviewers)

Resume questions based on experience and projects. Path vs param query. LLD Design ATC (Air Traffic Control) System.


R6 - Hiring Manager Round (30 mins 1 Interviewer)

First HM asked if I had any questions for her, I had collected some questions prior to the interview related to the department and the application. Normal Behavioural Questions like Why switch So Early ? What would you do if someone took credit for your work ? How will you handle the confrontation if it gets physical ?


Verdict - Selected

Interview Questions (9)

Q1
Shortest Subarray to be Removed to Make Array Sorted
Data Structures & AlgorithmsMedium

Shortest Subarray to be Removed to Make Array Sorted

Q2
Number of Islands
Data Structures & AlgorithmsMedium

Number of Islands

Q3
Gas Station
Data Structures & AlgorithmsMedium

Gas Station

Q4
Minimum Window Substring
Data Structures & AlgorithmsHard

Minimum Window Substring

Q5
Database Concepts & SQL Optimizations
Other

Resume questions based on Database, Sharding vs Partitioning, Explain keyword used in sql, Types of scans used in explain statement and it's advantages/disadvantages over others.

Q6
Implement Debouncing Function in Javascript
Data Structures & Algorithms

Javascript question based on creating a debouncing function and possible optimizations.

Q7
Resume & API Query Design
Other

Resume questions based on experience and projects. Path vs param query.

Q8
LLD: Air Traffic Control System
System Design

LLD Design ATC (Air Traffic Control) System.

Q9
Behavioral Questions: Why Switch Early, Credit for Work, Conflict Resolution
Behavioral

Normal Behavioural Questions like Why switch So Early ? What would you do if someone took credit for your work ? How will you handle the confrontation if it gets physical ?

Preparation Tips

Tips:

  1. Just solving the problem isn't enough, explain your approach, edge cases, dry run your solution with given example.
  2. All interviews were scheduled on short notice of 2 days for me, so be prepared to interview at short notice.
  3. Practice LLD and be ready for questions based on Resume
Goldman Sachs | Analyst@2YOE | Interview Experience | Bangalore
goldman sachs logo
Goldman Sachs
AnalystBangalore2 years
July 9, 20253 reads

Summary

I interviewed for an Analyst position at Goldman Sachs in Bangalore. After multiple rounds covering DSA, system design, and behavioral aspects, I received an offer.

Full Experience

Goldman Sachs Interview Experience

Current Profile

Company: Competing Investment Bank Base: 15.2 LPA Annual Bonus: 2.5 L Retention: 3 L

Recruiter Reachout on linkedin - Asked for Java specifically and all rounds to be held in java

R1 - OA (28 March 2025)

  • 2 DSA Questions
  • Classic 1-0 Knapsack - Medium
  • Binary Search Question - Medium

R2 - Coderpad (28 April, 2025)

  • Basic Array Average Question - Easy
  • String Manipulation - Easy

R3 - Algorithms and Java Discussion (In Person)

  • Hashmap Internals
  • Java Deep Dive
  • Time Complexities

R4 - System Design (In Person)

  • Resume Deep Dive - Kafka, Cloud
  • Notification Sending System: Multiple User Groups, Multiple Transports
  • Multithreading Deep Dives

R5 - Techno-Managerial

  • Resume Deep Dive
  • DSA - Find Kth largest number in a Stream

H6 - Hiring Manager Round

  • Normal Behavioural Questions

Got the Offer after a long long wait

Offer: https://leetcode.com/discuss/post/6938216/goldman-sachs-analyst2yoe-comp-bangalore-13ky/

Interview Questions (4)

Q1
0/1 Knapsack Problem
Data Structures & AlgorithmsMedium

The classic 0/1 Knapsack problem.

Q2
Hashmap Internals Discussion
Other

Discussion around the internal working and implementation of HashMaps in Java.

Q3
Design a Notification Sending System
System Design

Design a system capable of sending notifications to multiple user groups through various transport mechanisms (e.g., email, SMS, push notifications).

Q4
Find Kth Largest Number in a Stream
Data Structures & Algorithms

Design a data structure that finds the Kth largest element in a continuous stream of numbers.

Goldman Sachs - Associate - Interview Experience
goldman sachs logo
Goldman Sachs
Associate3 years
July 8, 20256 reads

Summary

I interviewed for an Associate role at Goldman Sachs with almost 3 years of experience. After completing the OA and CoderPad rounds, I provided solutions to specific LeetCode problems. However, my interview process was unfortunately cancelled after a poor feedback from the Data Structures round.

Full Experience

I’m presently working at a good product-based company and have almost 3 years of experience.

Round 1 : OA (2 hr)

It consisted to 3 leetcode medium level questions. Couldn't remember exact questions.

Round 2 : CoderPad Interview (1 hr)

Question 1: It was a medium-level question involving hashmaps, but I couldn't find the exact one on LeetCode. Question 2: https://leetcode.com/problems/minimum-path-sum/description/

Rounds 3, 4 & 5 are kind of loop interviews scheduled on the same day.

Round 3 : Data Structures (1 hr)

Question 1: https://leetcode.com/problems/find-original-array-from-doubled-array/description/ Question 2: https://leetcode.com/problems/magnetic-force-between-two-balls/description/

Immediately after Round 3, I received an email stating that the remaining rounds had been cancelled. When I reached out to the HR, she mentioned that the feedback from Round 3 was very poor.

Just FYI Round 4 is Software Engineering Practices (1 hr) Round 5 is Software Design and Architecture (1 hr) Round 6 is Hiring Manager Round

Good luck to all!

Interview Questions (2)

Q1
Find Original Array From Doubled Array
Data Structures & AlgorithmsMedium

An integer array original is transformed into a doubled array changed by appending twice the value of every element in original, and then randomly shuffling the resulting array. Given changed, return original if changed is a doubled array. If changed is not a doubled array, return an empty array or [-1]. The elements in original can be returned in any order.

Q2
Magnetic Force Between Two Balls
Data Structures & AlgorithmsMedium

You have n baskets and m balls. You want to place m balls into n baskets such that the minimum magnetic force between any two balls is maximized. Given an integer array position where position[i] is the position of the i-th basket, return the maximum possible minimum magnetic force.

Goldman Sachs- Analyst Software Engineering - Interview Experience
goldman sachs logo
Goldman Sachs
Analyst Software Engineering2 yearsOngoing
July 6, 202572 reads

Summary

I interviewed for an Analyst Software Engineering role at Goldman Sachs with 2 years of experience. The process involved an Online Assessment, multiple DSA and System Design rounds, and a Hiring Manager discussion, resulting in positive feedback and awaiting a final offer.

Full Experience

My Goldman Sachs Interview Experience

I am a software engineer with two years of experience, and I was looking for better opportunities. After applying to Goldman Sachs with a referral, I received a call for an Online Assessment (OA) and subsequent interview rounds.

Online Assessment (OA)

The OA consisted of two questions, and I completed it within 15-20 minutes.

Round 1: DSA - 1 hr

This round focused on Data Structures and Algorithms. I was asked two questions. I felt this round went well; the interviewer seemed satisfied, and I was able to explain my solutions from the ground up, including optimizations, along with their time and space complexities.

SuperDay Rounds

After the first round, I received a call from HR to schedule my SuperDay, which I scheduled for the following week.

Round 2: DSA - 1 hr

This round also involved two DSA questions. It went pretty well, and I was able to answer all the interviewer's questions.

Round 3: Software Engineering practices - 1 hr

This round combined DSA and Low-Level Design (LLD). For the first 30 minutes, I worked on a DSA problem, explaining my approach using BFS and optimizing it with a priority queue. I also discussed the differences between BFS and DFS and their respective use cases, particularly in terms of pruning.

In the next 30 minutes, I was asked to design Splitwise. I began by discussing the application requirements, and once the interviewers were satisfied, I proceeded to define classes and their relationships. I wasn't asked to code due to time constraints, but the interviewer seemed content with my design discussion.

Round 4: Software Design and Architecture - 1 hr

This round started with an in-depth discussion of my current project, including its high-level architecture. Later, I was given a scenario and asked to determine suitable design patterns and the OOPS principles involved. Another question specifically about the Builder design pattern followed. I explained its use for creating immutable objects, resolving telescoping constructors, and performing validations. However, the interviewer asked me to consider its application in a multi-threading scenario, which I wasn't familiar with at the time, and I admitted that. Overall, this round heavily focused on project discussions and design patterns. I felt I could have performed much better in this round.

Round 5: Hiring Manager Round - 30 Mins

Around 20 minutes after completing the SuperDay rounds, HR called to inform me that I had cleared them and scheduled a call with the Hiring Manager. This round primarily consisted of 4-5 behavioral questions.

A week later, I called HR and was informed that the feedback was positive. I am currently awaiting a final response from the HR team. The entire process, from application to completing all rounds, took approximately one month. I found the interview process to be well-structured, and the interviewers were helpful, offering hints whenever I felt stuck.

Interview Questions (10)

Q1
Distribute Toys in a Circle
Data Structures & Algorithms

Given k toys and n students sitting in a circle, return the index of the first child who doesn't receive a toy. Assume students are indexed from 0 to n-1 and toys are distributed sequentially starting from student 0. If all students receive a toy and there are still toys left, distribution continues from student 0 again.

Q2
Decode Ways
Data Structures & Algorithms

A message containing letters from A-Z can be encoded into numbers using the following mapping:

'A' -> "1"
'B' -> "2"
...
'Z' -> "26"

To decode an encoded message, all digits must be mapped back into letters using the reverse of the mapping above (and sometimes multiple digits must be used to map to a single letter).

Given a string s containing only digits, return the number of ways to decode it.

The test cases are generated so that the answer fits in a 32-bit integer.

Q3
Distinct Subsequences
Data Structures & Algorithms

Given two strings s and t, return the number of distinct subsequences of s which equals t.

A string's subsequence is a new string formed from the original string by deleting some (or none) of the characters without disturbing the remaining characters' relative positions. (i.e., "ACE" is a subsequence of "ABCDE" while "AEC" is not).

The test cases are generated so that the answer fits on a 32-bit integer.

Q4
Implement In-place Sorting Algorithm (Quick Sort)
Data Structures & Algorithms

Implement an in-place sorting algorithm that uses O(1) auxiliary space. Candidates were asked to suggest suitable algorithms (e.g., Quick Sort, Heap Sort) and then specifically implement Quick Sort.

Q5
Maximal Square
Data Structures & Algorithms

Given an m x n binary matrix maximalSquare, return the largest square containing only '1's and return its area.

Q6
Sort Large File with Limited RAM
System Design

Given a file containing numbers, approximately 2 GB in size, and a system with only 250 MB of RAM available, describe an algorithm to sort these numbers. The solution must account for the memory constraint, meaning the entire file cannot be loaded into memory at once.

Q7
The Maze II
Data Structures & Algorithms

There is a ball in a maze with empty spaces and walls. The ball can go through empty spaces by rolling up, down, left or right, but it won't stop rolling until hitting a wall. When the ball stops, it could choose the next direction.

Given the maze, the start and destination of the ball, find the shortest distance for the ball to stop at the destination. If the ball cannot stop at the destination, return -1.

The maze is represented by a binary 2D array. 1 means the wall and 0 means the empty space. You may assume that the borders of the maze are all walls (see examples for details).

start and destination coordinates are represented by row and column indices.

Q8
Design Splitwise
System Design

Design a system like Splitwise, focusing on its core functionalities. This includes discussing application requirements, defining classes (e.g., User, Expense, Group, Transaction), and establishing relationships between these classes. Consider how to handle debt tracking and settlements.

Q9
Identify Design Patterns and OOPS Principles for a Scenario
System Design

Given a specific software design scenario, identify appropriate design patterns (e.g., Creational, Structural, Behavioral) that can be applied to solve the problem efficiently. Additionally, explain which Object-Oriented Programming (OOPS) principles (e.g., Encapsulation, Inheritance, Polymorphism, Abstraction, SOLID principles) are relevant and how they are utilized in the proposed solution.

Q10
Discuss Builder Design Pattern Use Cases (Multi-threading context)
System Design

Explain the primary reasons for using the Builder design pattern. Discuss its advantages, such as handling complex object construction with many optional parameters (telescoping constructors), ensuring object immutability, and performing validations before final object creation. Furthermore, elaborate on specific benefits or considerations when employing the Builder pattern in a multi-threading environment, particularly concerning thread safety and concurrency.

Goldman Sachs | Associate | 3 YOE | Bengaluru | Reject
goldman sachs logo
Goldman Sachs
AssociateBengaluru3 years
July 3, 20255 reads

Summary

I interviewed for an Associate role at Goldman Sachs in Bengaluru, comprising multiple coding rounds and a technical discussion on Java Concurrency and JVM. Despite solving most coding problems, I received a rejection.

Full Experience

Round 1 : 2 hour Hackerrank test with 2 Easy-Medium questions. I was able to successfully solve both questions within 20-25 minutes.

Round 2 : Coderpad round Q1. https://leetcode.com/problems/find-minimum-in-rotated-sorted-array/description/ Q2. Similar to https://leetcode.com/problems/trapping-rain-water/description/

Superday Round 3 : Q1. https://leetcode.com/problems/single-element-in-a-sorted-array/description/ Q2. https://leetcode.com/problems/combination-sum-ii/description/

Fumbled badly in the first question.

Round 4 : Q1. https://leetcode.com/problems/number-of-substrings-containing-all-three-characters/description/ Q2. https://leetcode.com/problems/word-ladder/description/

5-6 questions related to Java Concurrency (Runnable, Callable, ExecuterService, Thread Lifecycle) and JVM Garbage Collection.

Got a Rejection Mail after this round.

Edit : Updated the title to clarify YOE :D.

Interview Questions (7)

Q1
Find Minimum in Rotated Sorted Array
Data Structures & AlgorithmsMedium

Given a sorted array that has been rotated at some pivot unknown to you beforehand, find the minimum element.

Q2
Trapping Rain Water (Similar)
Data Structures & AlgorithmsHard

A problem similar to trapping rain water, likely involving computing how much water can be trapped between elevation map bars.

Q3
Single Element in a Sorted Array
Data Structures & AlgorithmsMedium

You are given a sorted array consisting of only integers where every element appears exactly twice, except for one element which appears exactly once. Find this single element.

Q4
Combination Sum II
Data Structures & AlgorithmsMedium

Given a collection of candidate numbers and a target number, find all unique combinations in candidates where the candidate numbers sum to target. Each number in candidates may only be used once.

Q5
Number of Substrings Containing All Three Characters
Data Structures & AlgorithmsMedium

Given a string s consisting only of characters 'a', 'b' and 'c'. Return the number of substrings that contain at least one occurrence of all these characters 'a', 'b' and 'c'.

Q6
Word Ladder
Data Structures & AlgorithmsHard

Given two words, beginWord and endWord, and a dictionary wordList, return the number of words in the shortest transformation sequence from beginWord to endWord.

Q7
Java Concurrency & JVM Garbage Collection
Other

5-6 questions related to Java Concurrency (Runnable, Callable, ExecuterService, Thread Lifecycle) and JVM Garbage Collection.

Interview experience - Goldman Sachs - Analyst
goldman sachs logo
Goldman Sachs
Analyst
June 30, 20255 reads

Summary

I went through a comprehensive, multi-stage interview process at Goldman Sachs for an Analyst role, which included an online assessment, multiple technical rounds covering data structures, algorithms, debugging, system design, and behavioral questions. I successfully cleared all rounds and received a job offer.

Full Experience

I applied through referral on GS portal and recieved an online assesment link after few days.

Round 1 - Online Assesment

Q1 - Decode ways

Q2 - Given a range of numbers [l, r] and an integer q. The task is to count all such number in the given range such that any digit of the number does not match with any digit in its product with the given number q.

I completed both the questions and got an email asking for my details and that interview will be scheduled soon.

Round 2 - Coderpad.

Got a call from HR, 2 months after the OA for scheduling interview.

Q1 -Trapping rainwater disguised as compute snowpac.

Q2. The question asked was about a bishop on an 8x8 chessboard. I was given the starting and target coordinates and had to find the minimum number of moves for the bishop to reach the target. If it was impossible, I needed to return -1.

Since I completed both the questions with optimal implementation and edge cases, interviewer asked me a third debugging question.

Q3 - Given a program to find number of characters (including spaces) between the given positions of two words. Debug the program so that it works for all the given test cases.

Interviewer gave around 5 test cases on which the program was failing. I was able to find three bugs and interviewer wrapped it up

Super day

From here on every round had a panel of two interviewers interviewing.

Round 3 - DSA (Mandatory)

First interviewer asked first two DSA questions. Q1. Min Stack - A variation of this question was asked where I had to implement max stack instead of min. Q2. Number of Islands - A slight variation of this question was asked.

Second interviewer joined a little late and started with resume grilling and asked lots of question on project in current company.

Q3. Max path sum -A variation of this question was asked where we could make only diagonal and downwards movement.

Round 4 - Software engineering principles (Mandatory)

Q1. Given a logger class and three functions - a - startTime function with startTime and process id as parameters. b - endTime function with endTime and process id as parameters. c - print function - Prints all the completed process whenever invoked in ascending order of start time.

The program works as a stream class with continuous inputs being fed to it.

Q2. Convert integer to words - A variation of this question was asked where in the conversion has to be in Indian format instead of International. Q3. Decode ways Q4. Design a distributed cache system and some questions on scalability, load balancing, etc were asked. Q5. Some basic questions revolving around performance improvement in the cache system were also asked towards the end of the interview.

Wemt very well and was able to answer all the questions.

Round 5 - Design and Architecture

Q1. SQL query to find all employees whose salary is greater than their manager.

Q2. Predict the winner - Was asked to print the path of each of the players as well.

Q3. Find shortest distance from bottom left vertex to upper right vertex of a cube.

One of the interviewers did not join this round, so I had design round again next day.

Round 6 - Design and Architecture

Q1. Design LLD for BookMyShow (with full implementation).

Q2. How will you scale the system in case of increased traffic load?

Q3. Design LLD for rate limiter.

Q4. How will you handle a situation in a rate limiter where the window has space for just one request and multiple requests come at once from same user through different devices.

Round 7 - Hiring Manager

Q1. Why are you looking for switch so early Q2. Why GS Q3. Couple of behavioural questions.

Verdict - Selected

Interview Questions (21)

Q1
Decode Ways
Data Structures & AlgorithmsMedium

Standard LeetCode problem Decode Ways.

Q2
Count Numbers with No Matching Digits in Product
Data Structures & Algorithms

Given a range of numbers [l, r] and an integer q. The task is to count all such number in the given range such that any digit of the number does not match with any digit in its product with the given number q.

Q3
Trapping Rain Water (Snowpack variation)
Data Structures & AlgorithmsHard

The classic 'Trapping Rain Water' problem, disguised as computing snowpack.

Q4
Minimum Moves for Bishop on Chessboard
Data Structures & Algorithms

Given an 8x8 chessboard with starting and target coordinates for a bishop, find the minimum number of moves for the bishop to reach the target. Return -1 if impossible.

Q5
Debug Program: Characters Between Words
Other

Given a program to find number of characters (including spaces) between the given positions of two words. Debug the program so that it works for all the given test cases. I was able to find three bugs given around 5 failing test cases.

Q6
Max Stack (Min Stack variation)
Data Structures & AlgorithmsMedium

A variation of the Min Stack problem; I had to implement a Max Stack instead of a Min Stack.

Q7
Number of Islands (variation)
Data Structures & AlgorithmsMedium

A slight variation of the Number of Islands problem.

Q8
Minimum Path Sum (Diagonal/Downwards variation)
Data Structures & AlgorithmsMedium

A variation of the Minimum Path Sum problem where movement was restricted to only diagonal and downwards.

Q9
Design a Logger Class with Time-Ordered Process Printing
System Design

Given a logger class and three functions: startTime(startTime, processId), endTime(endTime, processId), and print(). The print() function should print all completed processes whenever invoked, in ascending order of start time. The program should handle continuous inputs as a stream.

Q10
Convert Integer to Indian English Words (variation)
Data Structures & AlgorithmsHard

A variation of the 'Integer to English Words' problem, where the conversion needs to be in Indian number format instead of International.

Q11
Decode Ways
Data Structures & AlgorithmsMedium

Standard LeetCode problem Decode Ways.

Q12
Design a Distributed Cache System
System Design

Design a distributed cache system. Questions on scalability, load balancing, and performance improvement were also asked.

Q13
SQL Query: Employees with Salary > Manager's Salary
Other

Write an SQL query to find all employees whose salary is greater than their manager's salary.

Q14
Predict the Winner (with path printing)
Data Structures & AlgorithmsMedium

A variation of the 'Predict the Winner' problem, with an additional requirement to print the path of each player.

Q15
Shortest Distance in a Cube
Data Structures & Algorithms

Find the shortest distance from the bottom-left vertex to the upper-right vertex of a cube.

Q16
LLD Design: BookMyShow
System Design

Low-level design for a system like BookMyShow, including full implementation details.

Q17
Scaling a System for Increased Traffic
System Design

Discuss strategies to scale a system in case of increased traffic load.

Q18
LLD Design: Rate Limiter
System Design

Low-level design for a rate limiter.

Q19
Rate Limiter Edge Case: Multiple Requests from One User/Device
System Design

How to handle a situation in a rate limiter where the window has space for just one request, but multiple requests come simultaneously from the same user through different devices.

Q20
Behavioral: Why are you looking for a switch so early?
Behavioral

Behavioral question: Why are you looking to switch jobs so early?

Q21
Behavioral: Why Goldman Sachs?
Behavioral

Behavioral question: Why are you interested in Goldman Sachs?

Goldman Sachs | Associate | Interview Experience
goldman sachs logo
Goldman Sachs
AssociateBengaluru
June 28, 20255 reads

Summary

I applied directly on the GS career portal for an Associate role in Bengaluru and underwent a multi-stage interview process, including an Online Assessment, CoderPad, and two Panel DSA rounds, before receiving a rejection after the first panel interview.

Full Experience

I applied directly on the GS career portal. The job title was "Global Banking & Markets - Eq GSET Platform - Associate - Bengaluru". I received a HackerRank test link after 8 days, which the recruiter had mentioned needed to be completed within 24 hours in the email. There were a total of 5 rounds. A peculiar thing to note was that all communications (OA/Interviews) were sent by email and not by any phone calls.

Online Assessment (120 minutes)

  1. Non-repeating digit in product - GFG Count numbers in range such that digits in it and it's product with q are unequal
  2. Coding Wars - LC 1395. Count Number of Teams

I got an email the next day itself stating that I cleared the test and they are moving my candidature ahead for the next level of interview processes. They also asked for some basic details and mentioned that the opportunity is a complete WFO. After 8 days, I received an email to provide my next 2 weeks availability for the CoderPad round.

CoderPad Interview Round (60 minutes)

The interviewer began with the introduction and mentioned that he was among the sister teams for whom they were hiring. The coderpad was initially set up for the Java language, although in the email, I had mentioned C++ as my preferred language. Upon request, the interviewer allowed me to use C++ and mentioned that for the upcoming rounds to use Java. The interviewer was engaging and helpful.

  1. Apache log file contains a list of IP addresses. Find the IP address with the highest frequency. If multiple IP addresses tie for the highest frequency, then return the values in a comma-separated format.
  2. Analogous to LC 42. Trapping Rain Water (given as snow instead of rain).

For the trapping rain water problem, I initially gave the O(N) space approach, and since there was time remaining, he asked me to optimise and then gave the two-pointer approach, but could not complete the coding. The interviewer said that I was on the right track for the optimal solution, just had to consider a few edge cases and mentioned that he was anyway happy with the previous approach.

Note: By this time, all those who are preparing for GS Interviews would know that the Trapping Rainwater problem is one of Goldman Sachs' all-time favourite problems, so make sure to practice and be familiar with all approaches (brute, better, and optimal).

Overall, I was satisfied with my performance and hoped to receive a call for Superday. Soon, I got an email within 45 minutes post-interview asking about my availability for the next rounds, and I gave my preference for next week.

I was expecting all 3 interviews to happen the same day. However got the invite to Panel Interview for Round 1 and 2 back-to-back on the same day. They also mentioned that each interview is an eliminatory round. It was supposed to be 1 week later, but unfortunately, I fell sick, so it had to be pushed further 1 more week. One thing I liked very much about GS is their flexibility to schedule interviews based on the candidate's availability. My preparation for the next rounds was from the past 3 months Goldman Sachs interview experience found on the Leetcode Discuss section.

Panel Interview - Round 1 - DSA (60 minutes)

This round was taken by 2 VPs. Began with introductions, and the first interviewer gave a problem with very little context. You are given a list of cities and a function/API boolean isDirectConnected(c1, c2). Implement boolean isConnected(c1, c2). While coding, I had to ask follow-ups, and both interviewers were helpful enough to provide hints if I was stuck anywhere. I took around 40 minutes, including recognising it was a graph + DFS problem and writing pseudocode, as the interviewers also stopped me in between asking some why/hows on the code. Later, the interviewer mentioned that the graph could be bi-directional, and I had forgotten initially to keep a visited array, so I had fixed that too.

The second interviewer then asked a question that if we have 1B numbers and want to find the top 1M numbers, which data structure would you use and what would be the time complexity of it? I told that we would use a min-heap and the T.C. would be O(NLogK). However, the interviewer had a slightly different opinion around the TC, and the interview was wrapped up by me asking a question on the GBM team.

I felt that the interview went good and was honestly preparing to appear for the 'Software Engineering Practices' round. However, I was a bit shocked to receive the rejection mail 10 minutes after the interview. I am not sure how I have messed up, perhaps taking hints to solve. All I know is that I could not have done much better, although I could be more confident. Maybe it's god's plan, anyway, back to square 1!

Interview Questions (6)

Q1
Non-repeating digit in product
Data Structures & Algorithms

GFG Count numbers in range such that digits in it and it's product with q are unequal

Q2
Count Number of Teams
Data Structures & Algorithms

Coding Wars - LC 1395. Count Number of Teams

Q3
Highest Frequency IP Address in Apache Log
Data Structures & Algorithms

Apache log file contains a list of IP addresses. Find the IP address with the highest frequency. If multiple IP addresses tie for the highest frequency, then return the values in a comma-separated format.

Q4
Trapping Rain Water (or Snow)
Data Structures & Algorithms

Analogous to LC 42. Trapping Rain Water (given as snow instead of rain).

Q5
Check Connectivity Between Cities
Data Structures & Algorithms

You are given a list of cities and a function/API boolean isDirectConnected(c1, c2). Implement boolean isConnected(c1, c2).

Q6
Find Top K Numbers from Large Dataset
Data Structures & Algorithms

If we have 1B numbers and want to find the top 1M numbers, which data structure would you use and what would be the time complexity of it?

Preparation Tips

My preparation for the next rounds was from the past 3 months Goldman Sachs interview experience found on the Leetcode Discuss section.

GS interview experience
goldman sachs logo
Goldman Sachs
Software Associate3.5 years
June 28, 20252 reads

Summary

I underwent an interview process for a Software Associate role at Goldman Sachs. The multi-round process covered various topics including Data Structures & Algorithms, Java, System Design, and behavioral aspects.

Full Experience

Here's my experience for a Software Associate. The process is usually long. Took sometime. YOE: 3.5yrs

1st round - DSA Find the first occurrence of a number in a sorted array. Easy Medium problem on arrays.

2nd Round - Java and DSA 1D Dp problem. Implement the navigatin of links in a browser - towards and backward. Overflow check in java.

3rd round - Java and DSA Trailing zeroes of n! easy medium 1D dp. Basic questions on OOPs like interfaces vs abstract classes.

4th round - LLD and HLD Hotel Management System Was expected to jot down the requirements. Design classes. Scaling issues and DB. Discussion on cache.

5th round - Managerial Questions on resume` Eg: What would you do if a PII data is sent to your mail by mistake? What actions would you take? Discussion on privacy of the data.

6th round - Managerial SDLC life cycle and discussion on my experience.

Interview Questions (7)

Q1
Find First Occurrence in Sorted Array
Data Structures & AlgorithmsMedium

Find the first occurrence of a number in a sorted array.

Q2
Browser Navigation Implementation
Data Structures & AlgorithmsMedium

Implement the navigation of links in a browser, including forward and backward functionality.

Q3
Java Integer Overflow Check
Other

Discuss how to handle or check for integer overflow in Java.

Q4
Trailing Zeroes in N Factorial
Data Structures & AlgorithmsEasy

Calculate the number of trailing zeroes in n! (n factorial).

Q5
OOPs Concepts: Interfaces vs. Abstract Classes
Other

Discuss basic Object-Oriented Programming (OOPs) concepts, specifically comparing and contrasting interfaces and abstract classes.

Q6
Design a Hotel Management System
System DesignHard

Design a Hotel Management System. Was expected to jot down the requirements, design classes, discuss scaling issues and database considerations. Also included a discussion on caching.

Q7
Handling PII Data Breach (Email)
Behavioral

What would you do if Personally Identifiable Information (PII) data is sent to your mail by mistake? What actions would you take?

Goldman Sachs Coderpad round questions !!!
goldman sachs logo
Goldman Sachs
June 27, 20252 reads

Summary

I had a coderpad round with Goldman Sachs where I was asked two coding questions. I struggled with both, particularly the first one which was a sliding window problem, and ran out of time on the second, leading to a feeling that I lost the opportunity.

Full Experience

I had a coderpad round with GS this week(This was the first time i used coderpad btw)So, I was asked to write the code for two questions under 60 mins. I vaguely remember the questions , them being

1) Given a string , we have to find the longest uniform string and return an array of which first element will be the starting index of the uniform string and second element will be the length of that uniform string

-- I knew it was a typical sliding window problem and I straight up digged into the code but halfway down I struggled to finish my logic also the interviewer was kinda tough throughout the round like she had a frowning face which was making me even more tensed lol .

2. Second question was to calculate the bestAverageGrade..it's a typical problem asked in their earlier rounds ..i regret not practising this . While implenting the solution my logic was correct i fumbled on this one too as i was about to run it the time was up, and towards the end I knew I lost this one ..but it was a good experience. So,to anyone reading this hope this helps you. Good luck!!

Interview Questions (2)

Q1
Longest Uniform Substring
Data Structures & Algorithms

Given a string, we have to find the longest uniform string and return an array of which first element will be the starting index of the uniform string and second element will be the length of that uniform string.

Q2
Calculate Best Average Grade
Data Structures & Algorithms

Second question was to calculate the bestAverageGrade. It's a typical problem asked in their earlier rounds.

Preparation Tips

I regret not practising the "bestAverageGrade" problem, which is typically asked in their earlier rounds.

Goldman Sachs | Analyst | Interview Experience | 1.5 YOE
goldman sachs logo
Goldman Sachs
Analyst1.5 years
June 27, 20253 reads

Summary

I interviewed for an Analyst role at Goldman Sachs, which included an Online Assessment, a CoderPad round, and three Superday rounds focusing on DSA, Software Engineering Practices, and System Design/OOPs/SQL. Despite demonstrating strong DSA performance, I was ultimately not selected due to challenges with a follow-up SQL question and Java Stream API related problems in later rounds.

Full Experience

💻 Online Assessment (April 2025- 1st week)

The OA had two problems:

  • An easy-level hashing question.
  • The "Decode Ways" problem — a classic Dynamic Programming question.

👨‍💻 CoderPad Round (May 2025 - last week)

I don't recall the exact problems, but they were straightforward for anyone with a solid understanding of DSA. Both were solvable within time limits without much difficulty.

🧠 Superday Rounds (12 June 2025)

Round 1: DSA

This was a problem-solving round focused on data structures and algorithms.
The first question was a medium-level two pointers problem.
I explained the brute-force solution first and then optimized it in terms of time and space complexity.
Solved it within 25 minutes with detailed explanations and passed all test cases without any runtime or compile-time errors.

Since I solved it quickly, the interviewer gave me a harder problem — not to code but to explain the approach.
I quickly provided the brute-force idea and mentioned binary search for optimization.
However, I struggled to articulate the helper function. The interviewer said I was close, but we ran out of time.
After the round, I realized it could’ve been solved using a greedy approach in the helper.

Round 2: Software Engineering Practices

This round was entirely focused on resume, Java, and Spring Boot.

Topics discussed:

  • Mockito: What it is and why it's used.
  • Caching: Detailed discussion since I had mentioned it on my resume.
  • Dependency Injection: Different ways to inject and their implementations.
  • API Versioning
  • Parameterized Queries in Spring Data JPA
  • SOLID Principles and the DRY Principle
  • Application Scaling: told about load balancers, microservices, caching, kafka, CDN, etc.
  • Discussion on Horizontal scaling

While I was able to answer most questions, I did struggle to frame a few responses clearly. Despite that, the round ended on a positive note with the interviewer wishing me luck for the next round.

Round 3: System Design + Java/OOPs + SQL

This round had two interviewers, but unfortunately, the call dropped midway and only one interviewer rejoined.

Here’s what we discussed:

Started with “Why do you want to switch?”

Then, the interviewer presented a medium-level SQL question involving GROUP BY, HAVING, COUNT, and a subquery. I initially solved it correctly using LIMIT. However, the interviewer followed up by asking me to solve the same problem without using LIMIT. I wasn’t able to come up with an alternative solution during the interview.

Next, we discussed:

  • Java version used in my project — I mentioned Java 8.
  • Asked about Java 8 Features

Then was asked to solve two easy DSA problems using Stream API. I wrote working code, but the interviewer was expecting specific functional operations. I admitted I hadn't used Stream API extensively but was familiar with forEach, map, filter, etc.

We then had an in-depth discussion on:

  • OOPs concepts, especially Polymorphism.
  • Covered both compile-time and runtime polymorphism.
  • Was asked to write code implementations for both.

After 40 minutes, the interviewer had no further questions and invited me to ask mine. I asked for feedback, but was told that would be shared by the hiring manager.

📞 Result

Unfortunately, I received negative feedback after the third round and was not selected. I struggled with a follow-up SQL question and wasn’t able to provide the expected answers for those two Stream API-related questions.

Interview Questions (12)

Q1
Decode Ways
Data Structures & Algorithms

The "Decode Ways" problem — a classic Dynamic Programming question.

Q2
Mockito: What it is and why it's used
Other

What Mockito is and why it's used.

Q3
Caching Concepts
System Design

Detailed discussion on Caching since I had mentioned it on my resume.

Q4
Dependency Injection
Other

Discussion on different ways to inject dependencies and their implementations.

Q5
API Versioning
Other

Discussion on API Versioning.

Q6
Parameterized Queries in Spring Data JPA
Other

Discussion on Parameterized Queries in Spring Data JPA.

Q7
SOLID Principles and DRY Principle
Other

Discussion on SOLID Principles and the DRY Principle.

Q8
Application Scaling Concepts
System Design

Discussion on Application Scaling, including load balancers, microservices, caching, kafka, CDN, etc. Also, a discussion on Horizontal scaling.

Q9
Why do you want to switch?
Behavioral

Behavioral question: "Why do you want to switch?"

Q10
SQL Query: Grouping, Filtering, Counting (without LIMIT)
OtherMedium

A medium-level SQL question involving GROUP BY, HAVING, COUNT, and a subquery. I initially solved it correctly using LIMIT. However, the interviewer followed up by asking me to solve the same problem without using LIMIT. I wasn’t able to come up with an alternative solution during the interview.

Q11
Java 8 Features
Other

Discussion on Java 8 Features.

Q12
OOPs: Polymorphism (Compile-time and Runtime)
Other

In-depth discussion on OOPs concepts, especially Polymorphism. Covered both compile-time and runtime polymorphism. I was asked to write code implementations for both.

Preparation Tips

💭 Final Thoughts

Overall, the experience was a mix of strong DSA performance and some learning moments in System Design and Java-specific features. The interviewers were encouraging and professional throughout. If you're preparing for similar roles, make sure to brush up on:

  • Java 8 Stream APIs
  • SQL queries
  • Core Spring Boot concepts
  • Software design principles like SOLID and scalability patterns

Best of luck to anyone preparing!

Goldman Sachs SuperDay Interview (Associate)
goldman sachs logo
Goldman Sachs
Associate
June 25, 20252 reads

Summary

I successfully navigated a HackerRank test and a coderpad screening round for an Associate role at Goldman Sachs. Despite performing well on several DSA questions, I was ultimately rejected after the SuperDay.

Full Experience

Gave hackerrank test around 3 month ago. After a week, got a call for coderpad screening round, after multiple rescheduling it got scheduled on 18th june. 1st question for coderpad round was First Non Repeating character in String 42. Trapping Rain Water (the must do problem for GS) solved both of them correctly along with edge cases. On the same day got call from HR that coderpad round feedback was positive so they scheduled superday for 25th june.

Round1 2 DSA questions 1. Design a DS where insertion , deletion and getValue(Index) all should be in O(1) 2.Binary search on Answers Ship in D days

Answered 2 with optimal solutions

Round 2 2 DSA questions 1.Given a string representing a mathematical expression (like "3 + 2 * (1 + 1)"), evaluate the result by following the correct BODMAS precedence rules (Brackets, Orders, Division, Multiplication, Addition, Subtraction). 2. Make a Number Minimum by removing K digits

Unable to solve 2nd question

verdict :Rejected

Interview Questions (6)

Q1
First Non-Repeating Character in a String
Data Structures & AlgorithmsEasy

Find the first non-repeating character in a given string.

Q2
Trapping Rain Water
Data Structures & AlgorithmsHard

Given n non-negative integers representing an elevation map where the width of each bar is 1, compute how much water it can trap after raining.

Q3
Design Data Structure with O(1) Insert, Delete, and GetValue(Index)
Data Structures & AlgorithmsHard

Design a data structure where insertion, deletion, and getValue(Index) operations all should be in O(1) time complexity.

Q4
Capacity To Ship Packages Within D Days
Data Structures & AlgorithmsMedium

Given a set of packages and a number of days D, find the least weight capacity of the ship that will result in all the packages being shipped within D days. This typically involves binary search on the answer space.

Q5
Evaluate Mathematical Expression with BODMAS
Data Structures & AlgorithmsHard

Given a string representing a mathematical expression (like "3 + 2 * (1 + 1)"), evaluate the result by following the correct BODMAS precedence rules (Brackets, Orders, Division, Multiplication, Addition, Subtraction).

Q6
Remove K Digits to Make Number Minimum
Data Structures & AlgorithmsMedium

Given a non-negative integer represented as a string, remove k digits from the number so that the new number is the smallest possible.

Goldman Sachs Analyst - USA - Super Day experience (Reject)
goldman sachs logo
Goldman Sachs
AnalystUSARejected
June 20, 202528 reads

Summary

I interviewed for an Analyst position at Goldman Sachs, participating in a Super Day consisting of DSA, System Design, and SDLC/Behavioral rounds. Despite feeling confident and answering all questions, I received a rejection email three days later.

Full Experience

I recently had a Super Day interview for an Analyst position at Goldman Sachs in the USA. The day was structured into three main rounds: Data Structures & Algorithms (DSA), System Design, and a combined SDLC/Behavioral/Managerial round, each lasting 45 minutes.

In the DSA Round, I was given four questions. First, I started implementing an LRU cache, specifically the put function, but the interviewer stopped me to move on after I completed a portion. The second question challenged me to combine two integer arrays into one without duplicates, with the constraint that hash-sets were not allowed. For the third, I tackled a dynamic programming problem: finding the maximum path sum in a matrix from top-left to bottom-right, only allowed to move right or down. This was framed as a fun scenario of maximizing national parks visited from Washington to Florida. I explained a DFS with memoization approach for this. Lastly, I discussed the optimal data structure for storing latitude and longitude, where I provided an in-depth answer about Quadtrees. I felt I answered all questions thoroughly and we even had five minutes for Q&A.

The System Design Round began with a fundamental question about REST APIs. The main challenge was to design a parking lot system with 100 spots and a single entry point, where vehicles are assigned a spot before entering. The discussion went deep into functional and non-functional requirements, identifying core entities, and designing APIs with their request/response structures. We also talked about database selection, SQL query optimization through indexing (including B+ trees), how to handle multiple entry points, and the use of in-memory versus database locks. I explained my logic for assigning spots using a hash-set for available IDs and a hash-map for assignments, all protected by locks for concurrency control.

The final SDLC / Behavioral / Managerial Round covered a range of topics. It started with resume-based questions. I then explained software testing and its various types, followed by questions about my past experience with testing and the SDLC methodologies I've followed. A significant portion involved describing my most challenging project and why it was difficult, leading to many follow-up questions. I was also asked if I'd ever faced an 'Out of Memory' exception, which led to a discussion on pagination. Finally, we touched upon debugging microservices in production and the concepts behind database indexing.

Despite feeling incredibly confident after the interviews and believing I answered every question, I received a rejection email three days later. I genuinely felt I couldn't have done anything more; I knew the answers to all questions and was happy with my performance. It felt like a significant setback, especially given my circumstances.

Interview Questions (13)

Q1
LRU Cache
Data Structures & AlgorithmsMedium

Implement a Least Recently Used (LRU) cache. My task was to implement the put function.

Q2
Combine Two Arrays Without Duplicates
Data Structures & AlgorithmsMedium

Combine two integer arrays into one without repeating elements. Ordered hash-sets and hash-sets were explicitly not allowed. The arrays may contain duplicate elements, but the final answer should have unique elements, and their order does not matter.
Example: nums1 = [1,2,3,4,5,1,2], nums2 = [5,6,7,8], expected ans = [1,2,3,4,5,6,7,8].

Q3
Max Path Sum in Matrix (Top-Left to Bottom-Right)
Data Structures & AlgorithmsMedium

Find the maximum path sum in a matrix, starting from the top-left corner and moving only right or down to reach the bottom-right corner. This was framed as a problem of traveling from Washington to Florida, wanting to visit as many National Parks as possible, with movement restricted to east and south directions. It is similar to Minimum Path Sum but for finding the maximum sum.

Q4
Data Structure for Latitude and Longitude
Data Structures & AlgorithmsMedium

What data structure would you use for storing latitude and longitude coordinates?

Q5
What are REST APIs?
System DesignEasy

Explain what REST APIs are.

Q6
Design a Parking Lot
System DesignHard

Design a parking lot system with a single point of entry and 100 spots. Before entering, each vehicle should be assigned a spot number. The discussion covered functional and non-functional requirements, core entities, core APIs (including request/response details), database choices, SQL query optimization (specifically indexing and B+ trees), strategies for handling multiple entry points, in-memory versus database locks, locking mechanisms, and the logic for assigning a spot.

Q7
Testing and Types of Testing
OtherEasy

Explain software testing and different types of testing.

Q8
Previous Experience with Testing
BehavioralEasy

Describe the types of software testing you have performed in your previous professional experiences.

Q9
SDLC Methodologies in Previous Experience
BehavioralEasy

Which Software Development Life Cycle (SDLC) methodologies have you followed in your previous professional experiences?

Q10
Most Challenging Project
BehavioralMedium

Describe the most challenging project you've worked on and explain why it was challenging. This question involved many follow-up questions.

Q11
Out of Memory Exception Handling
OtherMedium

Have you encountered an 'Out of Memory' exception? After clarifying questions, the discussion led to pagination as the expected solution.

Q12
Debugging Microservice in Production
OtherMedium

How would you approach debugging a microservice that is experiencing issues in a production environment?

Q13
Database Indexing Concepts
System DesignEasy

Explain database indexing: why we use it and how it helps improve performance.

GOLDMAN SACHS(Bangalore) | ASSOCIATE(SDE2) | SELECTED ✅
goldman sachs logo
Goldman Sachs
Associate (SDE2)Bangalore4 years
June 13, 20253 reads

Summary

I successfully interviewed for an Associate (SDE2) position at Goldman Sachs in Bangalore through a referral. The process involved six rounds, including DSA, Software Engineering Practices, System Design, and a Hiring Manager round, ultimately leading to a job offer.

Full Experience

YOE: 4 I applied to Goldman Sachs through a referral from a friend on March 11.

🔹 Round 1 – DSA (Hackerrank Online Test): I received a Hackerrank test link on March 31 which included 1 easy and 1 medium-level DSA problem. ✅ Went very well.

🔹 Round 2 – DSA (CoderPad Interview on April 15): This round focused primarily on DSA. I was asked one medium-level coding question along with a few questions about my projects, Java, and Spring Boot. ✅ Went very well.

🔹 Super Day – April 28 There were four interviews scheduled back-to-back with different focus areas:

🔸 Round 3 – DSA: This round involved solving one medium-level problem end-to-end with code and test cases, and discussing the approach (not code) for another algorithmic problem. ✅ Went very well.

🔸 Round 4 – Software Engineering Practices: This round was all about core engineering principles—deep dives into Java, Spring Boot, SQL & NoSQL, design patterns, ACID properties, code reviews, and project discussions. I was also asked to demonstrate a service violating the Single Responsibility Principle and then refactor it correctly. ✅ Went very well.

🔸 Round 5 – System Design & Architecture: It started with a deep discussion on my current project, followed by designing a high-level architecture for an e-commerce platform. ✅ Went very well.

🔹 Round 6 – Hiring Manager Round: This round began with my career journey, followed by a behavioral question which I answered well. However, I was asked three aptitude questions and couldn’t solve any of them. ➖ Went average.

📩 On May 21, I received the final result—and I’m happy to share that I got the offer!

Compensation Details: post

Interview Questions (2)

Q1
Refactor Service Violating Single Responsibility Principle
Other

I was asked to demonstrate a service violating the Single Responsibility Principle and then refactor it correctly.

Q2
Design E-commerce Platform Architecture
System Design

Design a high-level architecture for an e-commerce platform.

Goldman Sachs | Analyst | Bengaluru | Selected
goldman sachs logo
Goldman Sachs
AnalystBengaluru1.1 years
June 12, 20253 reads

Summary

I interviewed for the Analyst role at Goldman Sachs in Bengaluru and was selected. The process included an Online Assessment (OA) and a Super day with multiple rounds, covering coding, DSA, system design, and behavioral questions.

Full Experience

Current Experience: 1.10 Years College: Tier-2 Previous Organization: One of the MNCs

One Employee referred me.

OA

Coder pad round: 1st questions - Return an array containing prime numbers whose product is x Examples: primeFactorization( 6 ) == [2,3] primeFactorization( 5 ) == [5] primeFactorization( 12 ) == [2,2,3]

2nd question - Given an array of non-negative integers representing the elevations from the vertical cross section of a range of hills, determine how many units of snow could be captured between the hills.

 See the example array and elevation map below.
                             ___
         ___                |   |        ___
        |   |        ___    |   |___    |   |
     ___|   |    ___|   |   |   |   |   |   |
 ___|___|___|___|___|___|___|___|___|___|___|___
 [0,  1,  3,  0,  1,  2,  0,  4,  2,  0,  3,  0]
                             ___
         ___                |   |        ___
        |   | *   *  _*_  * |   |_*_  * |   |
     ___|   | *  _*_|   | * |   |   | * |   |
 ___|___|___|_*_|___|___|_*_|___|___|_*_|___|___
 [0,  1,  3,  0,  1,  2,  0,  4,  2,  0,  3,  0]

 Solution: In this example 13 units of snow (*) could be captured.

2) Implement computeSnowpack() correctly. 3) Consider adding some additional tests in doTestsPass(). trapping rainig water question basically.

Super day:

1st round: https://leetcode.com/problems/car-pooling/description/ https://leetcode.com/problems/find-the-winner-of-the-circular-game/description/

2nd round: https://leetcode.com/problems/rotting-oranges/description/ https://leetcode.com/problems/single-threaded-cpu/description/

3rd round: DSA - Everytime somebody comes to the website, we write a record to a log file consisting of TimeStamp, PageId, CustomerId. At the end of the day we have a big log file with many entires in that format. And for every day we have a new file. Now, given two log files (from day 1 and day 2), we want to generate a list of loyal customers that meet the criteria of a) they came on both days, and b) they visited at least two unique pages

singleton class implementation Abstract vs interface. When we prefer abstract class ArrayList/linked list When we prefer array list and linked list Static Process vs thread Design pattern used Singleton class Ci/cd process How Build process happen Unit testing.. Which library? Write Unit testing for a class for database connection. Which java version and it's features

HM round: Discussion on projects on resume. Sdlc process Standard behavioral questions Why leave current company? Why GS? Situation based questions like

  1. If an important client want some information about the other competitors. Then what you will do in this situation?
  2. If your colleague work in remote location and sent you the completed work. But the work is not relevant to the project than what you will do in this situation?

Verdict: Selected.

Compensation - https://leetcode.com/discuss/post/6834428/goldman-sachs-analyst-bengaluru-selected-6pew/

other interview exp - https://leetcode.com/discuss/post/6834384/all-interview-experiences-switch-journey-vpu1/

Interview Questions (21)

Q1
Prime Factorization of X
Data Structures & Algorithms

Return an array containing prime numbers whose product is x Examples: primeFactorization( 6 ) == [2,3] primeFactorization( 5 ) == [5] primeFactorization( 12 ) == [2,2,3]

Q2
Trapping Rain Water (Snowpack)
Data Structures & AlgorithmsHard

Given an array of non-negative integers representing the elevations from the vertical cross section of a range of hills, determine how many units of snow could be captured between the hills.

 See the example array and elevation map below.
                             ___
         ___                |   |        ___
        |   |        ___    |   |___    |   |
     ___|   |    ___|   |   |   |   |   |   |
 ___|___|___|___|___|___|___|___|___|___|___|___
 [0,  1,  3,  0,  1,  2,  0,  4,  2,  0,  3,  0]
                             ___
         ___                |   |        ___
        |   | *   *  _*_  * |   |_*_  * |   |
     ___|   | *  _*_|   | * |   |   | * |   |
 ___|___|___|_*_|___|___|_*_|___|___|_*_|___|___
 [0,  1,  3,  0,  1,  2,  0,  4,  2,  0,  3,  0]

 Solution: In this example 13 units of snow (*) could be captured.

2) Implement computeSnowpack() correctly. 3) Consider adding some additional tests in doTestsPass(). trapping rainig water question basically.

Q3
Car Pooling
Data Structures & AlgorithmsMedium
Q4
Find the Winner of the Circular Game
Data Structures & AlgorithmsMedium
Q5
Rotting Oranges
Data Structures & AlgorithmsMedium
Q6
Single-Threaded CPU
Data Structures & AlgorithmsHard
Q7
Loyal Customers from Log Files
Data Structures & Algorithms

Everytime somebody comes to the website, we write a record to a log file consisting of TimeStamp, PageId, CustomerId. At the end of the day we have a big log file with many entires in that format. And for every day we have a new file. Now, given two log files (from day 1 and day 2), we want to generate a list of loyal customers that meet the criteria of a) they came on both days, and b) they visited at least two unique pages

Q8
Singleton Class Implementation
Other

Implementation of a singleton class.

Q9
Abstract Class vs Interface Comparison
Other

Discuss the differences between abstract classes and interfaces, and when to prefer an abstract class over an interface.

Q10
ArrayList vs LinkedList Comparison
Other

Discuss the differences between ArrayList and LinkedList, and when to prefer one over the other.

Q11
Static Keyword in Java
Other

Explanation of the 'static' keyword in Java.

Q12
Process vs Thread
Other

Discuss the differences between processes and threads.

Q13
CI/CD Process
System Design

Discuss the CI/CD process.

Q14
Software Build Process
System Design

Explain how the software build process happens.

Q15
Unit Testing for Database Connection Class
Other

Discuss unit testing, relevant libraries, and write unit tests for a class handling database connections.

Q16
Java Version Features
Other

Discuss different Java versions and their key features.

Q17
SDLC Process
Other

Discuss the Software Development Life Cycle (SDLC) process.

Q18
Why Leave Current Company?
Behavioral

Tell me why you are looking to leave your current company.

Q19
Why Goldman Sachs?
Behavioral

Why do you want to work for Goldman Sachs?

Q20
Handling Client Request for Competitor Information
Behavioral

If an important client wants some information about other competitors, what would you do in this situation?

Q21
Handling Irrelevant Work from Remote Colleague
Behavioral

If your colleague, working remotely, sends you completed work that is not relevant to the project, what would you do in this situation?

Associate Goldman Sachs | US
goldman sachs logo
Goldman Sachs
AssociateUS
June 10, 20256 reads

Summary

I recently completed the online assessment and codepad rounds for an Associate position at Goldman Sachs in the US, successfully solving both questions and moving to the next stage.

Full Experience

Hello Everyone,

I recently had online assessment and codepad for goldman sachs. Solved both questions with all test cases passed. Moved to next stage got results in couple of hours after interview.

Codepad.

1.This is easy question. How ever it's more about how you answer and provide solution.

https://leetcode.com/problems/first-unique-character-in-a-string/description/

  1. Meduim Question based on the String. we need to find distance between the two words.

String word = "Hello this is a leetcode" word1 = "this" word2 = "is"

so calculate median distance like this -> 4/2, is -> 2/1

so start with 2 for word1 and "is" word2. Distance is 3.

How ever code is already present we need to figure out the bugs and fix them. It's more of collaboration round.

I already cleard GS Associate few years back and giving the interview again.

Interview Questions (2)

Q1
First Unique Character in a String
Data Structures & AlgorithmsEasy

This is easy question. However, it's more about how you answer and provide a solution. The problem can be found at: https://leetcode.com/problems/first-unique-character-in-a-string/description/

Q2
Find Distance Between Two Words (Debugging)
Data Structures & AlgorithmsMedium

Medium Question based on a String. We need to find the distance between two words. Given a String like "Hello this is a leetcode", and two words, e.g., word1 = "this", word2 = "is". Calculate median distance like this: word1 'this' -> 4/2, word2 'is' -> 2/1. So, starting with 2 for word1 and 'is' for word2, the distance is 3. However, code is already present, and we need to figure out the bugs and fix them. It's more of a collaboration round.

Goldman Sachs Analyst Interview experience
goldman sachs logo
Goldman Sachs
Analyst
June 9, 20256 reads

Summary

I applied for an Analyst position at Goldman Sachs via referral and went through a multi-stage interview process including Hackerrank, CoderPad, and several technical and system design rounds. Despite performing well in earlier stages, nervousness during the final technical and hiring manager round led to my eventual rejection.

Full Experience

I applied through a referral and got hackerrank link on March 30th and completed on that day.

Questions on Hackerrank test (Round-1):

  1. Decode ways question : https://leetcode.com/problems/decode-ways/
  2. Some Dp question involving coin denomination, don't remember exactly.

I was able to complete both questions with all test cases passing.

On April 7th, Hr scheduled Coder pad round and in this round I was able to code both questions optimally and got few followups for few test cases as well.

Questions asked on coder pad round(Round-2):

  1. https://leetcode.com/problems/robot-bounded-in-circle/description/
  2. https://leetcode.com/problems/trapping-rain-water/description/ with some modifications.

After a week I got a call from hr for the next round and it happened on 24th april. In this round I was asked one dsa question related to Graphs and i was able to come up with brute force approach and not able to optimize it. Later I was asked HLD of an e commerce website had discussion around what are different microservices i would require, what db i'm going to choose and tradeoffs and asked to write code for login page of the ecommerce website.

Exact Dsa question asked: You are given an array of objects, where each object contains the following properties:

name: a string representing the name of the object.

parentId: an integer representing the ID of the parent object. If the object has no parent, this value is null.

id: an integer representing the unique ID of the object.

Your task is to create a method that generates all possible paths from the root objects (objects with no parent) to the leaf objects (objects with no children). Each path should be represented as a list of names, starting from the root object and ending at a leaf object.

Example

Given the following array of objects:

List nodes = Arrays.asList(

new Node("A", null, 1),

new Node("B", 1, 2),

new Node("C", 1, 3),

new Node("D", 2, 4),

new Node("E", 3, 5)

{'1': ['2','3'],'2' :['4'],'3':['5']}

{'1':[{'2':[4]},{'3':[5]}]}

);

The method should return the following paths:

[

["A", "B", "D"],

["A", "C", "E"]

]

Constraints

The array of objects will not contain any cycles.

Each object will have a unique id.

The array may contain multiple root objects.

Objective

Implement the method findPaths that takes a list of Node objects and returns a list of paths, where each path is a list of names from the root to a leaf.

Next day I got call from hr and mentioned i will have two interviews on the same day and due to unavailability of me and panel it got postponed to may 7th.

Round-3: In this interview they asked about my current project details, what i have implemented, why we used certain things and later i was asked about what design patterns were used in my project. We had discussion around Factory design pattern, what is the necessity of factory design pattern and asked about singleton design pattern as well. Later I was asked two dsa questions and i was able to solve one completely and other one started with brute force and got to optimal approach,interviewer satisfied with my approach but didn't get enough time to code.

Dsa questions asked in this round:

  1. https://leetcode.com/problems/backspace-string-compare/description/
  2. https://leetcode.com/problems/first-missing-positive/

Due to some internet issue, next round that is supposed to happen on the same day got rescheduled to 13 th may.

Round-4: In this round, had discussion around my resume about my previous and current projects and discussed how we handle negative scenarios in my project and asked to write singleton design pattern first i write normal lazy instantiaion code, later i was asked to write without using synchronized keyword and i'm not aware of it. Had some questions about runnable and callable. What is synchronized keyword and some questions related to it. Was asked to design a system which will need to display all rows in a table in real time and in the db we will have millions of rows. I was also given a question related to strings, which i don't remember exactly and i'm unable to solve that.

After Round 4 I got call from Hr mentioning ,you will have final tech plus hiring manager round which was scheduled on May 19th. Round-5 (Final Technical plus Hiring manager round): In this round , had discussion around my resume, projects and standard questions like why are you looking for a change, why GoldmanSachs. Later it shifted to technical side and I was given this code and asked identify the possible bug .


public int add (int a,int b){
    int c = a + b;
    return c;
}

We discussed around overflow possibility and he asked to me write code to prevent it and throw an error, i was little nervous in this round and not able to write completely and the next question is to write generic max method which will take a class and returns the max value specified by the client, I didn't understand the question exactly after multiple followups and due to my nervousness, i'm unable to complete the code for this question. Next question was what data structures you will use and how do you handle if you have resturant and you want to maximize the staff utilization for taking orders from resturants, you will have customers, waiters, chefs.The goal is to maximize the staff utilization by the resturant. My approach is using queues and didn't answered properly how we can use threadpool after using queues to maximize the utilization and screwed up the interview. Later asked one behavioral question.

After so much preparation due to my nervousness I screwed up my last round and got rejected.

#GoldmanSachs #InterviewExperience #BestOfluck

Interview Questions (14)

Q1
Decode Ways
Data Structures & AlgorithmsMedium

Problem statement from LeetCode link.

Q2
Robot Bounded In Circle
Data Structures & AlgorithmsMedium

Problem statement from LeetCode link.

Q3
Trapping Rain Water (with modifications)
Data Structures & AlgorithmsHard

Problem statement from LeetCode link, with some modifications mentioned by the interviewer.

Q4
Generate All Paths from Root to Leaf in Object Tree
Data Structures & Algorithms

You are given an array of objects, where each object contains the following properties:

name: a string representing the name of the object.

parentId: an integer representing the ID of the parent object. If the object has no parent, this value is null.

id: an integer representing the unique ID of the object.

Your task is to create a method that generates all possible paths from the root objects (objects with no parent) to the leaf objects (objects with no children). Each path should be represented as a list of names, starting from the root object and ending at a leaf object.

Example

Given the following array of objects:

List nodes = Arrays.asList(

new Node("A", null, 1),

new Node("B", 1, 2),

new Node("C", 1, 3),

new Node("D", 2, 4),

new Node("E", 3, 5)

{'1': ['2','3'],'2' :['4'],'3':['5']}

{'1':[{'2':[4]},{'3':[5]}]}

);

The method should return the following paths:

[

["A", "B", "D"],

["A", "C", "E"]

]

Constraints

The array of objects will not contain any cycles.

Each object will have a unique id.

The array may contain multiple root objects.

Objective

Implement the method findPaths that takes a list of Node objects and returns a list of paths, where each path is a list of names from the root to a leaf.

Q5
E-commerce Website High-Level Design
System Design

High-level design (HLD) of an e-commerce website. Discussion around different microservices required, database choice and tradeoffs. Asked to write code for the login page of the e-commerce website.

Q6
Design Patterns Discussion (Factory, Singleton)
Other

Discussion around Factory design pattern, its necessity, and Singleton design pattern.

Q7
Backspace String Compare
Data Structures & AlgorithmsEasy

Problem statement from LeetCode link.

Q8
First Missing Positive
Data Structures & AlgorithmsHard

Problem statement from LeetCode link.

Q9
Singleton Design Pattern Implementation
Other

Implement Singleton design pattern. Initially, a normal lazy instantiation code was requested. Follow-up was to implement it without using the synchronized keyword.

Q10
Java Concurrency Concepts (Runnable, Callable, Synchronized)
Other

Questions about Runnable and Callable. What is the synchronized keyword and some questions related to it.

Q11
Real-time Display of Millions of Database Rows
System Design

Design a system which will need to display all rows in a table in real-time, where the database contains millions of rows.

Q12
Integer Overflow Bug Identification
Other

Given code: public int add (int a,int b){ int c = a + b; return c; } Asked to identify possible bugs (integer overflow) and write code to prevent it and throw an error.

Q13
Generic Max Method
Other

Write a generic max method which will take a class and returns the max value specified by the client.

Q14
Restaurant Staff Utilization System Design
System Design

Design a system for a restaurant to maximize staff utilization (customers, waiters, chefs) for taking orders. The goal is to maximize staff utilization.

Goldman Sachs - Coderpad round
goldman sachs logo
Goldman Sachs
Software EngineerUSAOngoing
June 6, 202567 reads

Summary

I recently completed a coderpad round for a Software Engineer role at Goldman Sachs, which included behavioral questions, a data processing problem, and an algorithm design challenge involving price intervals.

Full Experience

I recently had a coderpad round for a Software Engineer position at Goldman Sachs. The interview was conducted via Coderpad and took place in June 2025. It covered a range of topics, starting with behavioral questions, then moving to a data processing task, and finally, a more complex algorithm problem involving time intervals and prices.

Interview Questions (4)

Q1
Handling Team Disagreement
Behavioral

Tell me about a time when you've disagreed with your teammates but still moved forward with them. How did you deal with it? What did you learn from that experience?

Q2
Dealing with Unrecognized Contributions
Behavioral

What would you do when you've not received the credit you deserve despite having significant contributions to a project?

Q3
Highest Average Score from List of Tuples
Data Structures & AlgorithmsMedium

Given a list of tuples of scores, for example: [('john',85),('chrish',25),('elon',44),('john',67)], identify and return the highest average score among all candidates, along with the name of the candidate who achieved it.

Q4
Lowest Price Intervals for an Item
Data Structures & AlgorithmsHard

A popular online retailer allows vendors to specify different prices in advance for the same item throughout the day. Design an algorithm that helps identify the lowest price for the item at any point of the day. Assume all vendors are selling the same product, and there is only one product being sold. Given a list of vendor information as tuples (startTime, endTime, price), return a sorted list of distinct possible time intervals, each with the least price of the product during that interval. The interval is inclusive of start and end time. All three values (startTime, endTime, price) are integers.

Sample Input: [{1, 5, 20}, {3, 8, 15}, {7, 10, 8}]
Expected Output: [{1, 3, 20}, {3, 7, 15}, {7, 10, 8}]

CoderPad round with goldman Sachs
goldman sachs logo
Goldman Sachs
June 4, 20254 reads

Summary

I had a CoderPad round with Goldman Sachs, where I was asked two questions: one on activity selection and another on finding the shortest path between stations. I was able to solve both questions with optimized solutions.

Full Experience

Hi folks,

I had my coderpad round with Goldman sachs two days back, I was asked two questions:-

  1. Find the maximum number of non-overlapping activities, given their start and end times
  2. Given a source and destination, print all the stations in the shortest path between them.

I was able to solve both the questions with optimized solutions.

Interview Questions (2)

Q1
Maximum Non-Overlapping Activities
Data Structures & AlgorithmsMedium

Find the maximum number of non-overlapping activities, given their start and end times

Q2
Shortest Path Stations
Data Structures & AlgorithmsMedium

Given a source and destination, print all the stations in the shortest path between them.

Goldman Coderpad Interview experience
goldman sachs logo
Goldman Sachs
June 2, 20251 reads

Summary

I had a Coderpad interview at Goldman Sachs involving two coding problems. I struggled with the first problem and encountered technical difficulties during the second, which prevented me from completing it.

Full Experience

I was asked two questions during my Goldman Coderpad interview. For Q1, I discussed it a lot but was unable to come up with a solution. For Q2, I moved to it when only 10 minutes were left. A power cut occurred at my end, and when I re-joined, the interviewer asked me to return to Q1.

Interview Questions (2)

Q1
Hermione's Cheat Sheet Encoding
Data Structures & Algorithms

Hermione is preparing a cheat-sheet for her final exam in Potions class. To create a potion, one must combine ingredients in a specific order, any of which may be repeated.

As an example, consider the following potion which uses 4 distinct ingredients (A,B,C,D) in 11 steps: A, B, A, B, C, A, B, A, B, C, D

Hermione realizes she can save tremendous space on her cheat-sheet by introducing a special instruction, '*', which means "repeat from the beginning".

Using these optimizations, Hermione is able to encode the potion above using only 6 characters: A,B,* ,C,*,D

Your job is to write a function that takes as input an un-encoded potion and returns the minimum number of characters required to encode the potion on Hermione's Cheat Sheet.

Q2
Rock Collector Optimal Path
Data Structures & Algorithms

You are an avid rock collector who lives in southern California. Some rare and desirable rocks just became available in New York, so you are planning a cross-country road trip. There are several other rare rocks that you could pick up along the way. You have been given a grid filled with numbers, representing the number of rare rocks available in various cities across the country. Your objective is to find the optimal path from So_Cal to New_York that would allow you to accumulate the most rocks along the way.
Note: You can only travel either north (up) or east (right).

Goldman Sachs Interview Experience Salt Lake City, US
goldman sachs logo
Goldman Sachs
Salt Lake City, US
June 1, 20253 reads

Summary

I experienced a Coderpad interview, followed by a Superday consisting of three rounds (Data Structures and Algorithms, Resume Depth, System Design). Despite solving several problems and attempting others, I ultimately received a rejection email after three weeks.

Full Experience

Goldman Sachs Coderpad Interview -> I was asked two questions

  1. Given a 2D grid, each cell has a item which has value >=0, we are standing at bottom left cell of the grid and need to reach top right cell. We can travel in right and up direction. E.g.

0 0 5 0 1 0 2 0 1
Ans : 8

  1. A popular online retailer allows vendors to specify different prices in advance for the same item throughout the day. We now need to design an algorithm that helps identify the lowest price for the item at any point of the day.

Assumptions:

For the algorithm, assume all vendors are selling the same product and there is only one product being sold. Given a list that has vendor information - ( startTime, endTime, price ) of the deal, return a sorted list with different possible intervals and the least price of the product during the interval.

The interval is inclusive of start and end time.

All the 3 values passed by the vendor are integers.

sampleInput = { new Interval( 1, 5, 20 ), new Interval( 3, 8, 15 ), new Interval( 7, 10, 8 ) }; expectedOutput = { new Interval( 1, 3, 20 ), new Interval( 3, 7, 15 ), new Interval(7,10,8)};

I solved first question starting with brute force recursive approach and was able to pass all the test cases. Then I was telling optimized solution by memoization and bottom up tabulation but interviewer said brute force is fine and moved to 2nd Question. For 2nd question I was not able to solved it completely interviewer was friendly and gave me hints after hints I was able to write code completely but was not able to run it as time was over. Interviewer was pushing me to write production level code eg. appropriate variable names, function names for eg. I used i, j for row , column for 1st question he asked me to change it to row, column.

After 3 days I got email for Superday. My superday had 3 rounds of 45 mins each.

  1. Data Structures and Algorithms -> 2 Interviewers joined the call. Started with introduction. Then asked role specific questios like 1) How will you setup mongoDB cluster? 2) How will you configure your application for MongoDB using Springboot. DSA question asked was as follows :-
  1. List indicating a book. Each element in the list represents one page of the book. The page is space delimited.
  2. List Glossary word list

Output: Create a glossary for each word in the glossary list which indicates page numbers where the word occurs.

I was able to solve this question. Then as time was still left so they asked question what if you have huge data and limited CPU RAM how will your sort the data? -> I told merge sort and discussing on the same.

  1. Resume Depth - Interviewer grilled on resume. I struggled to answer few questions like I worked on TOCTOU issue and for resolving this issue I used atomicOperation. Then interviewer went to underlying details of atomic operations how it works and how will you implement atomic operation function and then taking this question to hashMap about how will handle concurrnecy in hashMap? I was not able to answer this question thoroughly.

  2. Design and Architecture round - > I was asked Design Rate Limiter. I was able to design but at the end while discussing about scalability I failed to answer one question which what will you if your redis cache is out of memory? I knew concept of data sharding but got blank not able to answer it properly.

I got rejection email after 3 weeks.

Interview Questions (8)

Q1
Maximize Path Sum in 2D Grid (Right/Up Movement)
Data Structures & Algorithms

Given a 2D grid, each cell has an item which has value >=0. We are standing at the bottom left cell of the grid and need to reach the top right cell. We can travel only in the right and up direction. E.g.

0 0 5 0 1 0 2 0 1
Ans : 8

Q2
Find Lowest Price Intervals for an Item
Data Structures & Algorithms

A popular online retailer allows vendors to specify different prices in advance for the same item throughout the day. We need to design an algorithm that helps identify the lowest price for the item at any point of the day.

Assumptions:

For the algorithm, assume all vendors are selling the same product and there is only one product being sold. Given a list that has vendor information - (startTime, endTime, price) of the deal, return a sorted list with different possible intervals and the least price of the product during the interval.

The interval is inclusive of start and end time.

All the 3 values passed by the vendor are integers.

sampleInput = { new Interval( 1, 5, 20 ), new Interval( 3, 8, 15 ), new Interval( 7, 10, 8 ) }; expectedOutput = { new Interval( 1, 3, 20 ), new Interval( 3, 7, 15 ), new Interval(7,10,8)};

Q3
MongoDB Cluster Setup and Springboot Configuration
Other
  1. How will you setup mongoDB cluster? 2) How will you configure your application for MongoDB using Springboot.
Q4
Generate Book Glossary with Page Numbers
Data Structures & Algorithms

Given:

  1. List indicating a book. Each element in the list represents one page of the book. The page is space delimited.
  2. List Glossary word list

Output: Create a glossary for each word in the glossary list which indicates page numbers where the word occurs.

Q5
Sort Huge Data with Limited CPU RAM (External Sort)
Data Structures & Algorithms

What if you have huge data and limited CPU RAM, how will you sort the data?

Q6
Explain and Implement Atomic Operations (TOCTOU Context)
Other

I worked on TOCTOU issue and for resolving this issue I used atomicOperation. Then interviewer went to underlying details of atomic operations, how it works, and how will you implement an atomic operation function.

Q7
Handle Concurrency in HashMap
Other

How will you handle concurrency in a HashMap?

Q8
Design a Rate Limiter
System Design

Design Rate Limiter.

Goldman Sachs - US | Analyst | Interview Experience
goldman sachs logo
Goldman Sachs
AnalystUS
May 30, 20253 reads

Summary

I interviewed for an Analyst role at Goldman Sachs in the US and successfully received an offer after completing Coderpad, Super Day (Software Engineering Principles, DSA), and Hiring Manager rounds.

Full Experience

Coderpad round: 60mins

Question-1 Find kth largest element. Gave heap solution. Satisfied with the approach. asked for TC and SC.

Question-2:

Given a 2D grid, each cell has a item which has value >=0, we are standing at bottom left cell of the grid and need to reach top right cell.So we need to reach from r-1,0 to 0,c-1 with maxValue. used DP. asked TC and SC.

Super Day:

Round-1: Software Engineering Principles (45 mins): Resume grilling mostly on my work-ex. Last 10 mins asked for Parking Lot LLD. Due to time crunch, wasn't able to frame my approach properly but gave the design.

Round-2: DSA

Question-1: Design data structure that stores an object that has following: Unique-Id-String Version- Integer From - TimeStamp To - TimeStamp

When a new version is inserted, last version To date should be updated to latest version from date and then latest veersion should be inserted.

Took about 30 mins to solve this as the question given was very vague and I had to ask all clarifying questions to give correct data structure.

Due to time crunch question-2 only approach was asked.

Question-2:

Given 3 category of people (lets say a,b,c) and no. of people of each category. Form max number of teams of 3 people such that no team contains all people from same category.

Ex: a = 2, b=1, c=3 Team-1: c c a Team-2: a b c so answer = 2; Gave greedy approach.

Round-3: Final Hiring Manager/Team round: Resume grilling

Hiring Manager Round (30 mins):

Asked few questions from resume

Few HR questions:

  1. Give a project where you are pruod of youself.
  2. You had more than one high priority tasks, how do you handle this situation.
  3. Why GS?
  4. Why are leaving your current company?

Verdict: Got the offer

Interview Questions (9)

Q1
Find Kth Largest Element
Data Structures & Algorithms

Find kth largest element.

Q2
Max Value Path in 2D Grid
Data Structures & Algorithms

Given a 2D grid, each cell has a item which has value >=0, we are standing at bottom left cell of the grid and need to reach top right cell.So we need to reach from r-1,0 to 0,c-1 with maxValue.

Q3
Design Parking Lot
System Design

Design a Parking Lot (Low-Level Design).

Q4
Design Versioned Object Data Structure
Data Structures & Algorithms

Design data structure that stores an object that has following: Unique-Id-String, Version- Integer, From - TimeStamp, To - TimeStamp. When a new version is inserted, last version To date should be updated to latest version from date and then latest veersion should be inserted.

Q5
Max Teams of 3 from 3 Categories
Data Structures & Algorithms

Given 3 category of people (lets say a,b,c) and no. of people of each category. Form max number of teams of 3 people such that no team contains all people from same category. Ex: a = 2, b=1, c=3 Team-1: c c a Team-2: a b c so answer = 2;

Q6
Describe a Project You Are Proud Of
Behavioral

Give a project where you are pruod of youself.

Q7
Handling Multiple High Priority Tasks
Behavioral

You had more than one high priority tasks, how do you handle this situation.

Q8
Why Goldman Sachs?
Behavioral

Why GS?

Q9
Reasons for Leaving Current Company
Behavioral

Why are leaving your current company?

Goldman Sachs Java Associate Interview Experience (Core Java Focus)
goldman sachs logo
Goldman Sachs
Java AssociateBangalore4.5 years
May 27, 20253 reads

Summary

I recently interviewed for the Java Associate role at Goldman Sachs in Bangalore. I was asked a series of core Java-focused questions, covering concepts like immutability, collections, functional interfaces, and database fundamentals. I am sharing these questions for others to prepare.

Full Experience

Hey LeetCoders! 👋

I recently interviewed for the Java Associate role at Goldman Sachs, and I wanted to share the list of Java-focused core questions that were asked during my interview. These questions test both conceptual clarity and hands-on experience with Java.

YOE : 4.5 yrs
Current Role : SDE 2
Location : Bangalore

Here’s a list of the questions that were asked:

  1. What is immutable in Java?
  2. How does PriorityQueue work in Java?
  3. Define an immutable class.
  4. How is String immutable in Java?
  5. Define a singleton class.
  6. What is a functional interface?
  7. What are the different types of functional interfaces?
  8. What is a stream in Java?
  9. What is the difference between final, finally, and finalize in Java?
  10. What is the use of finalize() method?
  11. What is the purpose of a singleton class?
  12. What is the internal working of HashMap and HashSet?
  13. How does HashSet store unique values?
  14. What is the difference between DELETE and TRUNCATE in SQL?
  15. What are ACID properties in the context of databases?
  16. How can we define a method inside an interface?
  17. Which keyword is used to define a method in an interface (Java 8 onwards)?

🔍 Your Turn!
If you know the answers or have been asked similar questions in interviews, drop your responses in the comments! Let’s help each other grow. 🙌

💬 Also, feel free to add your own Goldman Sachs interview questions in the thread!

Happy coding! 💻
#Java #InterviewExperience #GoldmanSachs #JavaInterview #LeetCode


Let me know if you’d like to add an intro about your background or tailor this for LinkedIn as well.

Interview Questions (17)

Q1
What is immutable in Java?
Data Structures & Algorithms

What is immutable in Java?

Q2
How does PriorityQueue work in Java?
Data Structures & Algorithms

How does PriorityQueue work in Java?

Q3
Define an immutable class.
Data Structures & Algorithms

Define an immutable class.

Q4
How is String immutable in Java?
Data Structures & Algorithms

How is String immutable in Java?

Q5
Define a singleton class.
Data Structures & Algorithms

Define a singleton class.

Q6
What is a functional interface?
Data Structures & Algorithms

What is a functional interface?

Q7
What are the different types of functional interfaces?
Data Structures & Algorithms

What are the different types of functional interfaces?

Q8
What is a stream in Java?
Data Structures & Algorithms

What is a stream in Java?

Q9
Difference between final, finally, and finalize in Java.
Data Structures & Algorithms

What is the difference between final, finally, and finalize in Java?

Q10
What is the use of finalize() method?
Data Structures & Algorithms

What is the use of finalize() method?

Q11
What is the purpose of a singleton class?
Data Structures & Algorithms

What is the purpose of a singleton class?

Q12
Internal working of HashMap and HashSet.
Data Structures & Algorithms

What is the internal working of HashMap and HashSet?

Q13
How does HashSet store unique values?
Data Structures & Algorithms

How does HashSet store unique values?

Q14
Difference between DELETE and TRUNCATE in SQL.
Data Structures & Algorithms

What is the difference between DELETE and TRUNCATE in SQL?

Q15
What are ACID properties in databases?
Data Structures & Algorithms

What are ACID properties in the context of databases?

Q16
How can we define a method inside an interface?
Data Structures & Algorithms

How can we define a method inside an interface?

Q17
Keyword for defining methods in an interface (Java 8 onwards).
Data Structures & Algorithms

Which keyword is used to define a method in an interface (Java 8 onwards)?

Goldman Sachs | Associate Software Engineer | Accepted | April 2025
goldman sachs logo
Goldman Sachs
Associate Software Engineer2.8 years
May 17, 20252 reads

Summary

I interviewed for an Associate Software Engineer position at Goldman Sachs in March 2025 and ultimately received an offer. The process included a screening round, a Super Day with multiple technical and design rounds, and final hiring manager and behavioral rounds.

Full Experience

I interviewed for Goldman Sachs for Associate level in March, 2025.

Education - Circuital branch, top IIT.

Experience - 2.8 years experience Past Company - SDE2 at Product Based Company (26.4 base + 2.6 Bonus) LPA. Had ESOPs.

Process -

Got a message from recruiter on linkedIn. Applied without referral.

Screening round - DSA - Two easy questions. Solved both. One was on hashmap little logic building, another on reversing linked list. They made me run both code on coder pad with few test cases.

Had next four rounds on the same day - Super Day. Initially they scheduled 3 rounds, post the result they scheduled the 4th one in evening.

Round1: 2 DSA problems, both around trees. One medium other one LC Hard(Both were on BST, had some discussions around 1st question on optimizing return , the other one involved finding LCA and some further solving). Round2: 1 LLD and questions around HLD - This round wasn't that great for me (fumbled a bit in few HLD questions). LLD - LRU cache. The interviewer tried to dig deep in whatever I said, so I chose to not answer questions I was not sure of. HLD was mostly related to how we optimize writes in DB, around replication, archival, scaling and indexing of DB. Round3: Mostly HLD case study regarding how you would approach a production issue. Had questions aroung my current experience, projects and their HLD and some related questions around possibilites of failure of production.

Had positive feedback from the rounds and was called for a final round with the hiring manager

Round4 - Hiring manager round - Was supposed to be a non technical round of 30 mins. Hiring manager still asked some design questions (mostly easy) along with a couple HR type ques. Answered all correctly.

Round5 - Behavioral round

Verdict - Got the offer. 36 LPA base + ~10 LPA bonus + 1.6L relocation + ESOP equivalency bonus (of current company for current FY)

Interview Questions (3)

Q1
Reverse a Linked List
Data Structures & AlgorithmsEasy

One of the screening round Data Structures and Algorithms (DSA) questions involved reversing a linked list.

Q2
Lowest Common Ancestor in a BST
Data Structures & AlgorithmsHard

In Round 1, one of the two Data Structures and Algorithms (DSA) problems, described as LeetCode Hard, involved finding the Lowest Common Ancestor (LCA) in a Binary Search Tree (BST) and required further problem-solving.

Q3
Design LRU Cache
System Design

Round 2 included a Low-Level Design (LLD) problem which was to design an LRU cache.

Goldman Sachs Analyst interview experience (0.7 years exp)
goldman sachs logo
Goldman Sachs
Analyst0.7 yearsRejected
May 14, 202526 reads

Summary

I interviewed for an Analyst position at Goldman Sachs with 0.7 years of experience, going through multiple rounds including coding, Java principles, and system design. Despite solving most coding problems, I was ultimately rejected due to my performance in the Java/OOP and System Design rounds.

Full Experience

My interview journey for the Analyst role at Goldman Sachs, with 0.7 years of experience, began with a referral from an Associate Software Engineer.

Round 1: HackerRank Online Assessment (90 minutes)

This round consisted of two coding questions. One was based on Dynamic Programming, and the other was an implementation problem that I don't exactly recall. Both were of medium difficulty, and I successfully solved both questions.

Round 2: CoderPad Live Coding (60 minutes)

In this live coding session using CoderPad, I was given a problem: to print all stations in the shortest path between a source and a destination. A follow-up asked what if every edge between stations had a unit weight. I successfully solved both the main problem and the follow-up. Soon after, I received a call from HR for the next set of rounds.

Super Day (3 Rounds Back-to-Back, Each ~1 Hour Apart)

Round 3: Data Structures and Algorithms (60 minutes)

I faced two interviewers, each posing one coding question. I used a Min Heap for the question 'Find the Kth most frequent element in an array' and applied a Sliding Window technique for 'Find the length of the longest subarray with at most K distinct characters'. I successfully solved both questions and passed all test cases.

Round 4: Java and Software Engineering Principles

This round, with two interviewers, focused heavily on Java and OOP. Questions covered wrapper classes, int vs Integer, the static keyword and static methods (requiring code), differences between ArrayList and LinkedList, Singleton class implementation, and Linked List creation with insertion and deletion (code required). There were several additional Java and OOP-related questions. I struggled a bit in this round due to my limited proficiency in Java.

Round 5: System Design

Two interviewers, one at a VP level, conducted this round. We first discussed my personal project—how I designed and implemented it, the challenges I faced, and how I tackled them. Then, I was asked to design a Quora-like application, including schema design, API structure, and writing SQL queries based on the schema. As this was my first-ever system design interview, I found it challenging. I made several back-and-forth changes during schema design and missed some best practices.

Final Verdict

I was ultimately rejected. The feedback indicated a negative review for the System Design round and an uncertain mark for the Java/OOP round. Overall, it was a valuable learning experience, and all interviewers were friendly and professional; it never felt like an interrogation.

Interview Questions (10)

Q1
Shortest Path Between Two Nodes (Unit Weight)
Data Structures & AlgorithmsMedium

Given a source and destination, print all the stations in the shortest path between them.
Follow-up: What if every edge between stations has unit weight (1)?

Q2
Find Kth Most Frequent Element in Array
Data Structures & AlgorithmsMedium

Find the Kth most frequent element in an array.

Q3
Longest Subarray with At Most K Distinct Characters
Data Structures & AlgorithmsMedium

Find the length of the longest subarray with at most K distinct characters.

Q4
Java Wrapper Classes
Other

Discuss wrapper classes in Java.

Q5
int vs Integer in Java
Other

Explain the difference between int and Integer in Java.

Q6
Static Keyword and Methods in Java
Other

Explain the static keyword and static methods in Java. Be prepared to write code.

Q7
Difference between ArrayList and LinkedList
Other

Explain the difference between ArrayList and LinkedList in Java.

Q8
Singleton Class Implementation
Other

Implement a Singleton class in Java.

Q9
Linked List Creation with Operations
Data Structures & Algorithms

Write code for the creation of a Linked List with insertion and deletion operations.

Q10
Design a Quora-like Application
System DesignHard

Design a Quora-like application, focusing on:

  • Schema design
  • API structure
  • Writing SQL queries based on the schema

Preparation Tips

I focused my preparation on Data Structures and Algorithms, which helped me clear the coding rounds. However, my limited proficiency in core Java concepts and System Design proved to be a weakness, leading to struggles in those specific rounds.

Interview Experience at Goldman Sachs | Associate
goldman sachs logo
Goldman Sachs
Associate
May 12, 20253 reads

Summary

I applied through a job portal, received a Hackerrank test, and then had multiple interview rounds (Coderpad, DSA, Software Engineering Practices, Software Design and Architecture) at Goldman Sachs for an Associate role, ultimately resulting in a rejection.

Full Experience

I applied through job portal after recruiter contacted me. Soon after, I recieved a Hackerrank test link.

Round 1: Hackerrank test There were 2 Leetcode medium difficulty questions.

Round 2: Coderpad round

  1. Interviewer gave 2 questions to solve in Coderpad platform. Language was Java, although upon request I was allowed to code in C++.
  2. After solving he asked me if the code was production ready, and discussed the potential issues.

Next three rounds were held a week later, as part of the Superday. There's going to be 2 interviewers in the panel here onwards.

Round 3: DSA round

  1. I was given two problems to solve.
  2. Asked me about one of my projects in detail.
  3. Advantages of using Springboot while design APIs.
  4. Dependency injection. What is Singleton Bean. Design a class which acts like a Singleton bean.

I stuttered a bit while explaining Dependency injection, other than that everything went well.

Round 4: Software Engineering Practices

  1. You're given an integer array. Write a program that shuffles the array in random fashion.
  2. Thread and concurrency
  3. Design Reddit

I couldn't solve the DSA problem. Also I mentioned I had no experience in working with threads so she didn't porceed with the question. Also struggled with the design problem but interviewer helped me through it. Asked me to write appropriate SQL queries along the way. I feel I messed up really bad in this round.

Round 5: Software Design and Architecture

  1. Design Bus ticket management system.
    • Part 1: Different busses with routes and bus stops are mentioned. Design an optimal approach that will give us the number of options a passenger will have to chose a bus for one point to another.
    • Part 2: Available tickets are also added to the problem. As bus moves from one stop to another, available tickets keep changing. How to design such a scenario.
  2. Design Google docs(in the form of an array), with features like snapshot. Should be space optimized to the fullest. I gave her 2 semi optimal approaches, but we couldn't discuss further as time was up.

This round was also good imo, I could answer almost all the queries. Could be better if there was more time.

Verdict: Rejected I did not recieve any mail or call from recruiter post this. In application portal it shows 'Application Turndown', so I guess this is it.

Interview Questions (11)

Q1
Merge Intervals
Data Structures & AlgorithmsMedium

Given an array of intervals where intervals[i] = [starti, endi], merge all overlapping intervals, and return an array of the non-overlapping intervals that cover all the intervals in the input.

Q2
Climbing Stairs
Data Structures & AlgorithmsEasy

You are climbing a staircase. It takes n steps to reach the top. Each time you can either climb 1 or 2 steps. In how many distinct ways can you climb to the top?

Q3
Best Time to Buy and Sell Stock
Data Structures & AlgorithmsEasy

You are given an array prices where prices[i] is the price of a given stock on the ith day. You want to maximize your profit by choosing a single day to buy one stock and choosing a different day in the future to sell that stock. Return the maximum profit you can achieve from this transaction. If you cannot achieve any profit, return 0.

Q4
Vehicle Parking Space Availability
Data Structures & Algorithms

You're given a number of Cars, Trucks and Activa's. Each takes a parking space of 2, 3 and 1 respectively. You're also given an integer array having empty slots. Return whether its possible to park every vehicle in those slots.

Q5
Advantages of Springboot for API Design
Other

Discuss the advantages of using Springboot while designing APIs.

Q6
Dependency Injection and Singleton Bean Design
Other

Explain Dependency Injection. What is a Singleton Bean? Design a class which acts like a Singleton bean.

Q7
Shuffle Array Randomly
Data Structures & Algorithms

You're given an integer array. Write a program that shuffles the array in random fashion.

Q8
Thread and Concurrency Concepts
Other

Discuss Thread and concurrency concepts.

Q9
Design Reddit
System DesignHard

Design the Reddit social media platform.

Q10
Design Bus Ticket Management System
System DesignHard

Part 1: Different busses with routes and bus stops are mentioned. Design an optimal approach that will give us the number of options a passenger will have to chose a bus for one point to another. Part 2: Available tickets are also added to the problem. As bus moves from one stop to another, available tickets keep changing. How to design such a scenario.

Q11
Design Google Docs with Snapshot (Space Optimized)
System DesignHard

Design Google docs (in the form of an array), with features like snapshot. Should be space optimized to the fullest.

Goldman Sachs Coderpad - Wealth Management - Gen AI Developer
goldman sachs logo
Goldman Sachs
Gen AI Developer
May 9, 20251 reads

Summary

I had a coderpad interview for Goldman Sachs's Gen AI Developer role, which included a coding question and discussions on GenAI Applications and RAG.

Full Experience

I had an coderpad interview for Goldman Sachs's Gen AI Developer role.
The inetrviewer was pretty chill and friendly.
He asked me 1 coding question
1. Variation of High Five (Leet Code Easy)
2. He asked me various questions on GENAI Applications, RAG

Interview Questions (1)

Q1
Variation of High Five
Data Structures & AlgorithmsEasy

A variation of the LeetCode 'High Five' problem was presented.

Goldman Sachs | Analyst GBM | Interview Experience
goldman sachs logo
Goldman Sachs
Analyst1.67 years
May 8, 20251 reads

Summary

I interviewed for the Analyst role at Goldman Sachs (Global Banking and Markets division) and successfully cleared all rounds. I received an offer after 5 days but rejected it as I had already joined another company.

Full Experience

About me: College: Tier 2 Education: BTech( IT ) Years of Experience: 1 year 8 months Previous company: MNC Bank Prev Comp: 18 LPA

Role: Analyst Comapany: Goldman Sachs Division: Global Banking and Markets Status: Cleared & Offer Rejected

Round 1: Online Assessment 2 medium-easy to medium level leetcode style questions. all test cases passed

Round 2: Coderpad (DSA) Introduction and 2 leetcode style questions (medium) solved both with optimized solutions (don't remember questions)

Superday

Round 3: DSA 3 leetcode style questions (medium/easy) a. Given an array of heights of buildings and a river on extreme right, return the index number of the buildings which will have a riverview. (gave optimized solution) follow up: given the height and width of the apartment buildings, now return index of buildings which will have riverview.(gave optimal solution with some help from interviewer) b. don't remeber question, solved optimally. c. given an array where every element occurs twice, return the element which occurs only once but O(1) S.C and O(n) T.C. (solved optimally)

Round 4: Design round Asked questions around project a little. a. LRU Cache implementation. (struggled a bit but solved optimally at the end)

Round 5: DSA + Design Round 1 hour interview based on my resume, specifically around the recent projects

Round 6: Hiring Manager 30 mins round with an off-shore VP. situational questions. a. You're the owner of an apartment which has 2 lifts. Tenants have been complaining about the inefficiency of lifts and how they have to wait so long for the lift. How will you go about this situation.

Verdict: Passed

The whole interview process took around 15-20 days. Extended an offer after 5 days of last interview. Had joined other company by then.

Interview Questions (4)

Q1
Buildings with Riverview
Data Structures & AlgorithmsMedium

Given an array of heights of buildings and a river on extreme right, return the index number of the buildings which will have a riverview.

Q2
Find Unique Element in Array
Data Structures & AlgorithmsEasy

Given an array where every element occurs twice, return the element which occurs only once but O(1) S.C and O(n) T.C.

Q3
LRU Cache Implementation
System DesignMedium

Implement an LRU Cache.

Q4
Lift Efficiency Improvement
Behavioral

You're the owner of an apartment which has 2 lifts. Tenants have been complaining about the inefficiency of lifts and how they have to wait so long for the lift. How will you go about this situation.

Interview Experience at Goldman Sachs | Analyst | Bengaluru (India)
goldman sachs logo
Goldman Sachs
AnalystBengaluru, India
May 6, 20253 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.

📌 My Interview Experience at Goldman Sachs – Analyst Position (April 2025)
goldman sachs logo
Goldman Sachs
Analyst
May 5, 20252 reads

Summary

I was selected for the Analyst role at Goldman Sachs after an extremely positive interview experience. My process involved multiple technical rounds focusing on Data Structures & Algorithms, Low-Level Design, and a final Hiring Manager discussion, all of which I cleared successfully.

Full Experience

Verdict: Selected ✅

Hi everyone!
I’m thrilled to share that I’ve been selected for the Analyst role at Goldman Sachs. I wanted to document my entire experience here in the hope it helps someone else preparing for the same.


🧠 Round 1 – CoderPad (April 4)

This was a DSA-based live coding round. The level was easy to medium.

Questions:

  1. Trapping Rain Water
  2. Decode Ways

I was able to complete both problems in 30 minutes. The interviewer asked a small follow-up (don’t remember exactly, but it was easy).

After that, we discussed my projects and work at my current firm.

⏩ Got the call same day that I was selected for Super Day on April 8.


🧠 Round 2 – Super Day DSA Round (2 Interviewers)

Both interviewers were super chill and encouraging!

Q1: Tree-Based Problem

I was given a binary tree and asked to print the diagonal traversal of it.

Example:

        1
      /   \
     2     3
    / \   / \
   4   5 7   6

Expected Output:
1 2 4  
3 5 7  
6

Q2: Stack & Queue Implementation

Deep discussion on:

  • Implementing stack using queue
  • Queue using stack
  • Handling operations with only one stack or one queue

Many follow-ups but I was able to answer all.


🧠 Round 3 – Resume + LLD + DP

Again two interviewers.

Resume Discussion

Since I had mentioned Kafka and automation scripts, we had a detailed discussion on that.

Q1: LLD – Task Scheduler

Design a task scheduler where tasks can only start after their dependencies are completed.
Follow-up: Add priority-based execution.

Q2: DP Problem

Very similar to Predict The Winner
Follow-up: Print the steps taken by the winner.


🧠 Round 4 – DSA + Logical Reasoning

Q1: Burst Balloons

Q2: Logical Array Problem

Given a sorted array:

Original:    [1, 3, 5, 7, 10, 12, 14, 16]  
Transformed: [1, 7, 5, 3, 10, 16, 14, 12]  
             (Even indices unchanged; odd indices swapped randomly)

Questions:

  • Is 5 present? If yes, at what index?
  • Is 16 present? If yes, at what index?
  • Is 11 present?

With hints from the interviewer, I was able to crack it.
Honestly, couldn’t solve this without hints, but the interviewers were really helpful.


🧠 Round 5 – HM Round

The Hiring Manager was extremely friendly.

We discussed:

  • Why I’m looking to switch
  • Why Goldman Sachs
  • Some situational and behavioral questions
  • Discussed CTC, location preference, etc.

💬 Final Thoughts

This was an extremely positive experience for me.
Each interviewer was well-prepared, respectful, and genuinely curious.
One bad interviewer can ruin an interview process – but I had none here.
Felt like a two-way conversation, not an interrogation.


🎉 Verdict: SELECTED

I'm beyond grateful for this community – you all have helped me so much during preparation.

Interview Questions (8)

Q1
Trapping Rain Water
Data Structures & Algorithms
Q2
Decode Ways
Data Structures & Algorithms
Q3
Binary Tree Diagonal Traversal
Data Structures & Algorithms

I was given a binary tree and asked to print the diagonal traversal of it.

Example:

        1
      /   \
     2     3
    / \   / \
   4   5 7   6

Expected Output:
1 2 4  
3 5 7  
6
Q4
Implement Stack using Queue and Queue using Stack
Data Structures & Algorithms

Deep discussion on:

  • Implementing stack using queue
  • Queue using stack
  • Handling operations with only one stack or one queue

Many follow-ups but I was able to answer all.

Q5
Design Task Scheduler with Dependencies and Priority
System Design

Design a task scheduler where tasks can only start after their dependencies are completed.
Follow-up: Add priority-based execution.

Q6
Predict The Winner with Steps
Data Structures & Algorithms

Very similar to Predict The Winner
Follow-up: Print the steps taken by the winner.

Q7
Burst Balloons
Data Structures & Algorithms
Q8
Search in Transformed Sorted Array
Data Structures & Algorithms

Given a sorted array:

Original:    [1, 3, 5, 7, 10, 12, 14, 16]  
Transformed: [1, 7, 5, 3, 10, 16, 14, 12]  
             (Even indices unchanged; odd indices swapped randomly)

Questions:

  • Is 5 present? If yes, at what index?
  • Is 16 present? If yes, at what index?
  • Is 11 present?

With hints from the interviewer, I was able to crack it.
Honestly, couldn’t solve this without hints, but the interviewers were really helpful.

Goldman Sachs Associate Interview Experience
goldman sachs logo
Goldman Sachs
Associate4.5 years
May 5, 20252 reads

Summary

I interviewed for an Associate role at Goldman Sachs, which included an Online Assessment, a Coderpad round, a Superday (comprising DSA, Software Engineering Practices, and Software Design & Architecture rounds), and a final Hiring Managerial round. I successfully cleared all technical rounds and was informed of my advancement before the HM round.

Full Experience

Work Experience : 4.5 years College : Tier 1

HR called me and she told me to apply on their portal, so First round was OA round, in which two questions were asked, one of them was easy and another one was medium level ( i dont exactly remember the questions)

All Test cases for both the questions passed and i was called for coderpad round.

Coderpad Round

Two questions were asked , one person joined, in this round you need to write the code and pass all the test cases, and if time remained you can work on optimization

Que 1 -> Trapping rain water problem and asked to optimize it, space optimization basically, i already provided O(n) time complexity solution, they wanted me to give O(1) space complexity which i eventually provided

Que 2 -> Find length of circular loop in an array where you will be given a starting index and you need to jump to the index which it points to, while traversing if you find loop, you need to return the length of loop example : arr-> [1,2,3,0,2,1] and startingIndex -> 0, answer will be -> 4

Superday

There were total 3 round on superday, 1 hour each

DSA Round

So this was the first round on that day, two people joined, total two questions were asked, and we need to write the code and pass the test cases

Que 1 -> You are given a hashmap where key is a child and value is parent, with this map we can create a forest of trees, we need to find the root of the tree which has highest number of nodes so basically interviewer wanted me to provide Disjoint Set based solution, we need to implement UFD, i identified the pattern quickly and interviewer seemed impressed

Que 2 -> Longest Substring Without Repeating Characters

Software Engineering Practices Round

  1. Low level design of Parking Lot system
  2. Deep dive into one of the projects i mentioned in my resume, what database, api endpoint structure, api performance optimization
  3. Caching related question, since i used caching in my projects, so asked how did you use caching and how it optimized API performance
  4. what is Shallow copy and deep copy of objects in java and also some question on multi threading

Most of the time was given to Parking lot LLD

Software Design and Architecture

So this round was basically HLD round, two person joined, gave intro, one of them started this round with threading concepts in java, we had around 10 minute discussion on threads After that i was asked about Rate Limiting , its usage , algorithms which are used, why not use it at client side, and what are the ways to use it at the client side

After that i was asked to write code for one of the algo, sliding window algorithm

After that i was asked on whatsapp message delivery mechanism, how whatsapp ensures that once a person goes offline , messages are sequentially delivered to the person once it comes online again, what tech stack can be used for this, we had around 10-15 min discussion on this

Since i mentioned about redis stream, so one of them asked why not kafka, and also which one is good for low latency , kafka vs redis discussion in the end

This round was more of discussion, and went quite well for me

So i was informed after half an hour that i cleared all the rounds , and there will be a last round which is Hiring Managerial round

HM round

We introduced each other, he told me about the team and what kind of projects they work on, also i was asked couple of behavioral questions , situation based questions basically, i also asked couple of question and round ended in half an hour

Interview Questions (10)

Q1
Trapping Rain Water with O(1) Space
Data Structures & AlgorithmsHard

Implement the Trapping Rain Water problem and optimize it for O(1) space complexity.

Q2
Find Length of Circular Loop in Array
Data Structures & AlgorithmsMedium

Given an array arr and a startingIndex, where arr[i] indicates the next index to jump to. If a circular loop is found during traversal from startingIndex, return the length of the loop. Example: arr -> [1,2,3,0,2,1] and startingIndex -> 0, answer will be -> 4.

Q3
Find Root of Tree with Most Nodes in a Forest (Disjoint Set)
Data Structures & AlgorithmsHard

Given a hashmap where keys represent children and values represent their parents, forming a forest of trees. Find the root of the tree which has the highest number of nodes. The interviewer expected a Disjoint Set (Union-Find Data Structure - UFD) based solution.

Q4
Longest Substring Without Repeating Characters
Data Structures & AlgorithmsMedium

Find the length of the longest substring without repeating characters.

Q5
Low Level Design (LLD) of Parking Lot System
System DesignMedium

Design a Low-Level Design (LLD) for a Parking Lot system.

Q6
Caching Strategies and Performance Optimization
System DesignMedium

Discuss caching related questions, specifically how caching was used in projects and how it optimized API performance.

Q7
Shallow vs. Deep Copy and Multithreading in Java
OtherMedium

Explain the concepts of shallow copy and deep copy of objects in Java. Also, discuss questions related to multithreading.

Q8
Rate Limiting Concepts and Algorithms
System DesignHard

Discuss Rate Limiting: its usage, various algorithms used (e.g., sliding window algorithm), reasons why it should not be implemented at the client side, and alternative ways to use it at the client side. I was also asked to write code for one of the algorithms, specifically a sliding window algorithm.

Q9
WhatsApp Message Delivery Mechanism Design
System DesignHard

Design the WhatsApp message delivery mechanism, focusing on how sequential delivery is ensured when a user comes online after being offline. Discuss potential tech stacks and considerations like Kafka vs Redis Streams for low latency.

Q10
Behavioral and Situational Questions
BehavioralEasy

Answered behavioral and situation-based questions during the Hiring Managerial round.

Goldman Sachs Coding Round Experience
goldman sachs logo
Goldman Sachs
backend role
May 2, 20253 reads

Summary

I recently interviewed at Goldman Sachs for a backend role. The round lasted 75 minutes and included 2 behavioral questions and 2 coding tasks, all live on CoderPad.

Full Experience

I recently interviewed at Goldman Sachs for a backend role, and wanted to share my experience to help others preparing. The round lasted 75 minutes and included 2 behavioral questions and 2 coding tasks (all live on CoderPad).

Interview Questions (4)

Q1
Confidential Email Protocol
Behavioral

What would you do if you received a confidential email that wasn’t meant for you?

Q2
Coworker Taking Credit
Behavioral

What would you do if a coworker took credit for work you did?

Q3
Encoding with Asterisk Operator
Data Structures & Algorithms

Given a string representing an ingredient sequence, return the minimum number of characters required to build it using individual characters or a special * operator. * means "duplicate everything built so far".

Q4
Debug Function: Distance Between Words
Data Structures & Algorithms

Given a long block of text and two input words, the function was supposed to return the number of characters (including spaces) between the two closest occurrences of the words.

Goldman Sachs | Associate | Offer
goldman sachs logo
Goldman Sachs
Associate
May 2, 202512 reads

Summary

I cleared the interview process for an Associate role at Goldman Sachs, which included an online assessment, a DSA round, and a Superday with several data structures, algorithms, and puzzle-based questions.

Full Experience

-> Online Assessement: 1 hard + 1 medium DSA.

-> DSA ROUND: 2 Easy + medium Leetcode question.

Superday:

Round 1

  1. Merge 3 Sorted Lists in One Go

    Problem: Merge three sorted lists into one sorted list efficiently.

    Related LeetCode:

    Merge k Sorted Lists (Leetcode #23)

    Related GFG:

    Merge K sorted linked lists

  2. Queue Class with Basic Methods Provided

    You were given a basic Queue class and asked to extend it in two ways:

    a: Find Queue with Minimum Size

    Task: Among multiple queues, identify the one with the smallest size using a minimal approach.

    b: Find Queue with Minimum Sum of Elements

    Task: Among multiple queues, find the one with the minimum sum of elements efficiently.

    Related GFG Conceptual Reference:

    Implement Queue using Python

    (Custom implementation questions—no exact LeetCode link; more of a design + logic problem.)

Round 2

  1. Find the First Missing Positive Number in an Array

    Problem: Return the smallest missing positive integer from an unsorted integer array.

    Related LeetCode:

    First Missing Positive (Leetcode #41)

    Related GFG:

    Find the smallest positive missing number

  2. Puzzle: Horse Race Problem

    This is typically a variation of the 25 horses / 5 tracks / find top 3 fastest with minimal races puzzle.

    Common format:

    You have 25 horses and only 5 tracks. You can race up to 5 horses at a time.

    No stopwatch, only relative order of each race is known.

    Find the minimum number of races required to identify the top 3 fastest horses.

    Related Puzzle Reference:

    25 Horses Puzzle (GFG)

    25 Horses Puzzle Explanation

Interview Questions (4)

Q1
Merge 3 Sorted Lists
Data Structures & Algorithms

Merge three sorted lists into one sorted list efficiently.

Q2
Extend Queue Class: Find Min Size and Min Sum
Data Structures & Algorithms

You were given a basic Queue class and asked to extend it in two ways: a: Find Queue with Minimum Size - Task: Among multiple queues, identify the one with the smallest size using a minimal approach. b: Find Queue with Minimum Sum of Elements - Task: Among multiple queues, find the one with the minimum sum of elements efficiently. (Custom implementation questions—no exact LeetCode link; more of a design + logic problem.)

Q3
First Missing Positive Number in Array
Data Structures & Algorithms

Return the smallest missing positive integer from an unsorted integer array.

Q4
Horse Race Puzzle
Other

This is typically a variation of the 25 horses / 5 tracks / find top 3 fastest with minimal races puzzle. Common format: You have 25 horses and only 5 tracks. You can race up to 5 horses at a time. No stopwatch, only relative order of each race is known. Find the minimum number of races required to identify the top 3 fastest horses.

Goldman Sachs | Analyst Role | CoderPad Round
goldman sachs logo
Goldman Sachs
Analyst Role
May 1, 20254 reads

Summary

I applied for the Analyst role at Goldman Sachs through a referral and attended a CoderPad round, where I was asked to solve two variations of LeetCode problems and discuss their complexity.

Full Experience

Goldman Sachs CoderPad Round Experience

I applied through a referral and received an email to attend the CoderPad round within 2 weeks of applying.

Questions

  1. Variation of https://leetcode.com/problems/high-five/description/
  2. Variation of https://leetcode.com/problems/fraction-to-recurring-decimal/description/

I was asked to analyze the time and space complexity at the end of each question. I was also asked to create my own test cases and suggest improvements in my code if the input constraints were changed.

Interview Questions (2)

Q1
High Five (Variation)
Data Structures & Algorithms

A variation of the High Five problem. The original problem involves calculating the average of the top five scores for each student. During the interview, I was expected to analyze time and space complexity, create my own test cases, and suggest improvements in my code if the input constraints were changed.

Q2
Fraction to Recurring Decimal (Variation)
Data Structures & Algorithms

A variation of the Fraction to Recurring Decimal problem. The original problem involves converting a given fraction to its decimal representation, handling repeating decimals. During the interview, I was expected to analyze time and space complexity, create my own test cases, and suggest improvements in my code if the input constraints were changed.

Goldman Sachs | Coderpad & Virtual Onsite | Bangalore
goldman sachs logo
Goldman Sachs
Associate (Full-stack)Bangalore1.3 years
April 26, 20253 reads

Summary

I interviewed for an Associate (Full-stack) role at Goldman Sachs in Bangalore. The interview process included a Coderpad round with two specific coding questions.

Full Experience

Position: Associate (Full-stack)
YoE : 1.3
Applied through referral.

Duration - 1hr 15 min

Expected coding language was Java. But i switched to c++ i would suggest prepare DSA with java only.

CoderPad Round 1:

Initial Introduction.Explained the process.
Interviewer was very nice and helpful with the hints.

Interview Questions (2)

Q1
IP Address Frequency and Sort
Data Structures & Algorithms

FIle contains list of Ip Address. Get the IP address/s with highest frequency. If multiple Ip address available with higest freq, return sorted comma separeted.

Q2
Trapping Snow Water
Data Structures & Algorithms

Trapping rain water (Instead of water it was snow between the hills)

GS Interview
goldman sachs logo
Goldman Sachs
April 18, 20253 reads

Summary

I experienced a Goldman Sachs interview process, which included a coding round with two problems and a Superday with two rounds focusing on data structures, algorithms, and system design, ultimately resulting in a rejection.

Full Experience

Coding Round:
2 problems 1 easy 1 hard 1 hour most frequents from GS list.
- Introduction
- 1st: Easy, asked to add more testcases.
- 2nd: Hard, First brute force later asked to improve compexity.

Superday:
Moved to Superday after 1 week.
2 rounds, 1 hour each, 15 mins break in between
- 1st Round
one of the interviewers joined late. meanwhile first interviewer asked question. It was easy level 2 sum with slight variation.
Second interviewer joined asked medium level decode string, in depth discussion regarding the approach.

- 2nd Round
2 questions
Again one of the interviewers joined in late,in depth discussion about implementation of hashmap.question 2 was regarding algorithm for snake game.

Nobody joined for 3rd round. received rejection mail.

Interview Questions (2)

Q1
Decode String
Data Structures & AlgorithmsMedium

The interviewer asked a medium-level problem regarding decoding a string, and we had an in-depth discussion about the approach.

Q2
Snake Game Algorithm
Data Structures & Algorithms

The second question was regarding the algorithm for implementing a Snake Game.

Goldman Sachs | Interview Experience | Associate | Selected | Feb '25
goldman sachs logo
Goldman Sachs
AssociateBangalore4.5 years
April 14, 20253 reads

Summary

I successfully interviewed for an Associate role at Goldman Sachs in February 2025, navigating through online assessments, multiple technical rounds (DSA, LLD, HLD), managerial discussions, and an HR round, ultimately receiving a job offer.

Full Experience

Background

  • College: Tier 1
  • Experience: 4.5 yrs
  • Current Company: SAP Labs

1. Online Assessment (Hackerrank)

  1. https://leetcode.com/problems/group-anagrams/description/
  2. https://leetcode.com/problems/count-number-of-teams/description/
I was able to complete it in about half an hour.

2. CoderPad

After a quick intro of me, the interviewer jumped right into the problem. And as soon as he entered the Q, there was a power cut at my place and I lost the internet connection. I quickly switched to my phone's hotspot and reconnected. I had not seen the Q that he had presented me with, but he changed that Q and I was then given the below problems to solve.

  1. https://leetcode.com/problems/first-unique-character-in-a-string/description/

Gave the optimised approach directly, as I had already lost some time due to the power cut. Then he asked me to code it. There were some Qs around the approach as I was using C++ and perhaps the interviewer had more experience in Java. But I clarified all the doubts he had regarding the data structures I used.

  1. https://leetcode.com/problems/trapping-rain-water/description/

It was a variation with snow getting filled between the hills. You can find the Q at multiple places on the internet.

I gave the brute force approach first, then optimised it using max height arrays and coded the solution. Once the solution worked correctly, I slided in the fact that the problem can be solved using two pointers in a more optimised way. Seemed like the interviewer was not expecting it and since there was still 10-12 mins left, he asked me to code that approach as well. Which I was able to complete just in time.
After almost 2 months of waiting and thinking that the position might have already been filled by some other candidate, I out of the blue received the call from the recruiter for the next rounds and the super day was scheduled 2 days later.

3. Super Day

All the rounds had 2 interviewers where each interviewer came up with 1 Q each. All rounds were of 1 hour each which started with my introduction and ended with whether I had any Qs for them.

Round 1 - Technical (DSA)

  1. https://leetcode.com/problems/maximum-population-year/description/
It took me a couple of minutes to think and come up with the optimised approach. Then I was able to code it pretty quickly.
  1. Create a "Set" Data Structure with min. memory consumption.

    This was an interesting Q and revolved around math operations like mod, left shift, right shift, etc. The idea was to not use complete bytes to store the value in the array but to divide the bytes into bits and use each bit as a storage unit.

Round 2 - Technical (DSA + LLD)

  1. https://leetcode.com/problems/partition-equal-subset-sum/description/
  1. LLD - Design a food delivery application

The round went pretty smooth, I was able to solve both the problems.

Round 3 - Technical (DSA + LLD)

  1. You have written "Design Principles" in your resume. Could you tell us about what design principles you have used in your projects?

    I had not revised design principles in months!! And there were cross questions on everything I was saying. It didn't go well.

  2. Then he asked me to design the classes and functions (LLD) for a timesheet entry application. A tool that employees use in an organisation to put in their daily working hours.

    (The Q was detailed with multiple features he was interested in, but I don't remember all the details.) I even struggled in this Q. With just 10 mins remaining and I not anywhere near the complete solution, they decided to skip it and move to the next Q.

  3. Given the rth row and cth column of the pascal's triangle. Return the value at that position of the triangle.

    The interviewer wanted me to come up with the recursive solution. He specifically mentioned that there is a formula for this but he doesn't want me to use that. I solved the problem in just under 3 mins (with code).

Received a call from the recruiter that the result of the last round was not good. It was a mix. Therefore, they would like to retake the round.

Round 4 (Round 3 again) - Technical (DSA + HLD)

I was presented with a long 8-10 lines of problem statement along with multiple enums, classes, methods and test-cases already written. I was supposed to complete the one empty method present in the program.

After a 15-20 mins discussion around the problem statement and clarifying all my doubts, the problem came down to something similar as https://leetcode.com/problems/optimal-account-balancing/description/ ( or Minimising the no. of transaction in splitwise). It was a variation in terms of transactions of buying and selling of assets.

I immediately told them the approach using 2 priority queues and explained how it would work. They asked me to code it. Since a lot of the time had passed in clarifying the problem statement and I was on the right track with my approach, they stopped me half way through the code stating that they were satisfied and would like to move to the 2nd part of the interview.

Then they asked me some Qs about scaling the same application (HLD). Some of the Qs were -

  • What kind of database would you use?
  • Database schema if SQL is used.
  • API design
  • How will you scale it?
  • How will you keep it running all the time (availability)?
  • What deployment strategy would you use?

The round went really well. Probably the best one so far.

Round 5 - Managerial

It started with my Introduction. Then we delved deep into the projects I worked on in my current organisation. I took my time and explained everything in detail. Answered all the counter questions in detail as well.

Then there were some other standard Qs like what the development lifecycle looks like in my current project. How do I debug an issue raised by a customer on the production system and how is the process different from what I do when I encounter bugs while testing my own development?

At last there were situation based Qs around ethics.

The Day finally ended and I was pretty happy with my performance.


4. HR Round

It was a standard HR Round where I was asked about my family background, why am I looking for a switch and why I want to move to Bangalore (my current location is Gurgaon)? What was my current compensation and what was I looking for?


Final Verdict - Accepted!!

Interview Questions (15)

Q1
Group Anagrams
Data Structures & AlgorithmsMedium

Given an array of strings strs, group the anagrams together. You can return the answer in any order.

Q2
Count Number of Teams
Data Structures & AlgorithmsMedium

There are n soldiers standing in a line. Each soldier is assigned a unique rating value. You have to form a team of 3 soldiers amongst them such that their ratings are in strictly increasing or strictly decreasing order.

Q3
First Unique Character in a String
Data Structures & AlgorithmsEasy

Given a string s, find the first non-repeating character in it and return its index. If it does not exist, return -1.

Q4
Trapping Rain Water Variation (with snow)
Data Structures & AlgorithmsHard

It was a variation of the Trapping Rain Water problem, with snow getting filled between hills. The core idea is to calculate how much 'snow' (or water) can be trapped between elevation points. This problem is similar to LeetCode's Trapping Rain Water.

Q5
Maximum Population Year
Data Structures & AlgorithmsEasy

You are given a 2D integer array logs where logs[i] = [birth_i, death_i] indicates the birth and death years of the ith person. The population of some year x is the number of people alive during that year. The ith person is alive in year x if birth_i <= x < death_i. Return the earliest year with the maximum population.

Q6
Create a Set Data Structure with minimum memory consumption
Data Structures & Algorithms

The task was to create a 'Set' data structure emphasizing minimal memory consumption. The discussion revolved around mathematical operations like modulo, left shift, and right shift. The core idea was to avoid using complete bytes for storage in an array, instead dividing bytes into bits and utilizing each bit as a storage unit.

Q7
Partition Equal Subset Sum
Data Structures & AlgorithmsMedium

Given a non-empty array nums containing only positive integers, find if the array can be partitioned into two subsets such that the sum of elements in both subsets is equal.

Q8
Design a food delivery application
System Design

Low-Level Design (LLD) for a food delivery application.

Q9
Design Principles in Projects
Behavioral

Questions based on design principles mentioned in my resume, asking for specific examples of design principles used in past projects.

Q10
Design a timesheet entry application (LLD)
System Design

Low-Level Design (LLD) for a timesheet entry application. This tool allows employees in an organization to record their daily working hours. The problem statement was detailed with multiple features of interest, though I don't recall all specifics.

Q11
Pascal's Triangle Value at (r, c)
Data Structures & Algorithms

Given the rth row and cth column of Pascal's triangle, return the value at that specific position. The interviewer specifically requested a recursive solution and explicitly stated not to use a direct formula.

Q12
Optimal Account Balancing Variation (Asset Transactions)
Data Structures & AlgorithmsHard

A complex problem statement with existing enums, classes, methods, and test cases, requiring the completion of one empty method. The problem was a variation of optimal account balancing (like Minimizing the number of transactions in Splitwise), focused on transactions involving buying and selling assets.

Q13
Scaling the Asset Transaction Application (HLD)
System Design

High-Level Design (HLD) questions regarding scaling the previously discussed asset transaction application. Specific questions included: What kind of database would you use? Database schema if SQL is used. API design. How will you scale it? How will you keep it running all the time (availability)? What deployment strategy would you use?

Q14
Managerial and Behavioral Questions
Behavioral

The round began with my introduction, followed by an in-depth discussion of projects from my current organization. Standard questions were asked regarding the development lifecycle in my current project, debugging processes for customer-raised production issues versus self-found bugs, and situation-based questions on ethics.

Q15
HR Round Questions
Behavioral

A standard HR round covering family background, reasons for switching jobs, motivation to move to Bangalore (from Gurgaon), current compensation, and salary expectations.

Goldman sachs SuperDay USA | ASSOC | YOE 4
goldman sachs logo
Goldman Sachs
ASSOCUSA4 years
April 13, 20254 reads

Summary

I interviewed at Goldman Sachs for an Associate position in USA and successfully got selected for the Team Matching Round after 3 rounds covering resume deep dive, SDLC, Low-Level Design (Parking Lot), and Data Structures & Algorithms (Find Median of Two Sorted Arrays, Kth Missing Positive Number).

Full Experience

Format: 3 rounds, 45 minutes each.

Resume Deep Dive + SDLC

Be prepared to explain every line on your resume in depth — including old internship projects or work experience from 2-3 years ago.

Questions on Software Development Life Cycle (SDLC) stages, best practices, and your experience with them.

Low-Level Design (LLD)

Problem: Design a Parking Lot system.

Focus areas:

Designing classes for parking spots, vehicles, parking lot management, etc.

Efficient algorithm to assign parking spots based on vehicle type and spot availability.

Data Structures & Algorithms (DSA)

Problems asked:

Find Median of Two Sorted Arrays

Kth Missing Positive Number

Outcome: Got selected for Team Matching Round

Interview Questions (4)

Q1
Resume Deep Dive & SDLC Discussion
Other

Be prepared to explain every line on my resume in depth — including old internship projects or work experience from 2-3 years ago. Questions on Software Development Life Cycle (SDLC) stages, best practices, and my experience with them.

Q2
Design a Parking Lot System
System Design

Design a Parking Lot system.

Focus areas:

Designing classes for parking spots, vehicles, parking lot management, etc.

Efficient algorithm to assign parking spots based on vehicle type and spot availability.

Q3
Find Median of Two Sorted Arrays
Data Structures & Algorithms

Find Median of Two Sorted Arrays

Q4
Kth Missing Positive Number
Data Structures & Algorithms

Kth Missing Positive Number

Goldman Sachs Coderpad test
goldman sachs logo
Goldman Sachs
April 11, 20252 reads

Summary

I experienced a coderpad test at Goldman Sachs which included a specific problem about a walking robot. Despite solving one problem, I faced network issues and miscommunication with the interviewer, leading to a frustrating experience.

Full Experience

I have given the coder pad test yesterday.

Q1. Walking robot starts at (0,0) coordinates and where the input string contains 'UDLR' to determine path like up down left and right and we have to return final coordinate it is at.

Started the question by asking me the edge cases for this problem.Solved but inefficient


Q2. Some kind of debugging (Easy)

The interviewer thought it was one 1 hour and when i solved the first one in 45 mins he tried to waste my time for 5 mins and told me there is only 10 mins i cannot give you another problem. Then i reminded him but later i had bad network issues. Somehow the interviewer felt i am doing some malpractice. It was really a bad day.


I have read some experiences here before attending the interview and it helped me a lot. So I just giving it back by writing here.

All the best. Atleast this could help someone.

Interview Questions (1)

Q1
Walking Robot Final Coordinate
Data Structures & Algorithms

A robot starts at (0,0) coordinates. An input string contains 'UDLR' characters, where 'U' means up, 'D' means down, 'L' means left, and 'R' means right. Determine the robot's final coordinate after processing the input string. The interviewer started by asking about edge cases for this problem.

Preparation Tips

I have read some experiences here before attending the interview and it helped me a lot. So I just giving it back by writing here.

Goldman Sachs | Analyst | Rejected
goldman sachs logo
Goldman Sachs
Analyst
April 7, 20252 reads

Summary

I interviewed for an Analyst position at Goldman Sachs, undergoing an Online Assessment, a CoderPad round, and a Superday with multiple rounds. Despite clearing the initial rounds, I was rejected after the Superday due to challenges with some DSA problems, a project extension scenario, and an LRU Cache question.

Full Experience

Goldman Sachs Interview Experience

Online Assessment (OA): The OA was conducted on HackerRank. The questions were quite standard and easily available on LeetCode.

CoderPad Round:

  1. IP Address Frequency: Given a list of log lines (each starting with an IP address), find the IP address that occurs the most number of times.
  2. Trapping Rainwater Problem
  3. Find Minimum in a Sorted Rotated Array

I was able to clear the CoderPad round easily. The next day, I received a call from the HR for the Superday round.

Superday - Round 1: Two DSA questions were asked:

  1. Gas Station Problem – I struggled with this one and ended up spending around 45 minutes on it.
  2. House Robber Problem – I quickly explained the approach and solution in about 5 minutes. Due to time constraints, the interviewer didn't ask me to code it.

Round 2: This round had two interviewers who deep-dived into my resume.

They asked several questions based on my experience and picked one of my projects to extend it into a problem-solving scenario. I couldn’t come up with a solution for it.

LRU Cache – I attempted it using a combination of LinkedList and HashMap, but the interviewers were expecting an approach using LinkedHashMap. I wasn’t very familiar with that, and as a result, got stuck and couldn’t solve it.

Got rejection mail today.

Interview Questions (7)

Q1
IP Address Frequency
Data Structures & Algorithms

Given a list of log lines (each starting with an IP address), find the IP address that occurs the most number of times.

Q2
Trapping Rainwater Problem
Data Structures & Algorithms

Trapping Rainwater Problem

Q3
Find Minimum in a Sorted Rotated Array
Data Structures & Algorithms

Find Minimum in a Sorted Rotated Array

Q4
Gas Station Problem
Data Structures & Algorithms

Gas Station Problem

Q5
House Robber Problem
Data Structures & Algorithms

House Robber Problem

Q6
Project Extension Problem Solving
Other

Interviewers picked one of my projects to extend it into a problem-solving scenario.

Q7
LRU Cache
Data Structures & Algorithms

LRU Cache

Goldman Sachs Technical Round-1 after OA
goldman sachs logo
Goldman Sachs
April 7, 20252 reads

Summary

I had a technical round at Goldman Sachs where I was asked two coding questions, specifically Letter Combinations of a Phone Number and Group Anagrams.

Interview Questions (2)

Q1
Letter Combinations of a Phone Number
Data Structures & Algorithms

The problem presented was Letter Combinations of a Phone Number. Refer to the provided LeetCode link for the full problem description.

Q2
Group Anagrams
Data Structures & Algorithms

The problem presented was Group Anagrams. Refer to the provided LeetCode link for the full problem description.

Goldman Sachs HackerRank OA - Interview Experience
goldman sachs logo
Goldman Sachs
April 5, 20252 reads

Summary

I received a HackerRank test from Goldman Sachs and successfully solved both problems, passing all test cases. I am now seeking insights on the chances of advancing to the next rounds.

Full Experience

Please let me know in the comments if you have similar experience and chances of getting into next rounds.

I haved received hackerrank test link from goldman sachs.Solved both problems and all possible test cases are passed.

Interview Questions (2)

Q1
Book Cricket Game (Coin Change Variation)
Data Structures & Algorithms

Given an input array of possible run scores (e.g., [2,4,6]) and a target total score n, determine how many possible ways there are to make up that total score using the runs in the input array. This is a variation of the coin change problem.

Q2
Burst Array (Remove Consecutive Repetitive Chars)
Data Structures & Algorithms

Given an input array (e.g., ['a','b','c','c','c','b','b','d','d','d','f','g']) and a burstlength (e.g., 3), remove consecutive repetitive characters if their length is greater than or equal to the burstlength. The final output array should not contain any consecutive repetitive characters of burstlength or more.

Goldman Sachs | April 25 | Associate Software Engineer Role
goldman sachs logo
Goldman Sachs
Associate Software Engineer
March 26, 202528 reads

Summary

I recently interviewed for the Associate Software Engineer role at Goldman Sachs. The interview process spanned multiple technical rounds covering data structures, system design, core Java concepts, and advanced topics like multithreading and database internals.

Full Experience

I recently interviewed for the Associate Software Engineer role at Goldman Sachs. The interview process consisted of four distinct rounds.

In Round 1, I was asked questions similar to the 'Number of Islands' problem, along with some functional testing questions.

Round 2 focused on core Java concepts, particularly multithreading, the Spring framework, and other advanced Java topics.

Round 3 involved a Low-Level Design (LLD) problem to design an 'Employee Access Card' system, followed by several questions based on my resume.

Round 4 was a deep dive into various technical topics, ranging from Java internals to database concepts and distributed systems. This round covered a wide array of topics as detailed in the questions below.

Interview Questions (26)

Q1
Number of Islands
Data Structures & AlgorithmsMedium

Discussed questions similar to the LeetCode problem 'Number of Islands'.

Q2
Employee Access Card Low-Level Design
System DesignHard

Design a Low-Level Design (LLD) for an Employee Access Card system.

Q3
G1 and G3 Garbage Collectors
Other

Discussed concepts related to G1 and G3 Garbage Collectors.

Q4
Attributes of G1 Garbage Collector
Other

What are the key attributes or characteristics of the G1 Garbage Collector?

Q5
Code Caching and JIT Compiler
Other

Explain code caching and the Just-In-Time (JIT) compiler.

Q6
Disadvantages of Microservices Architecture
System Design

What are the disadvantages or challenges of using a Microservices architecture?

Q7
Internal Working of Database Indexing
System Design

Explain how database indexing works internally.

Q8
Use Cases for NoSQL vs. SQL Databases
System Design

In which scenarios would you choose to use a NoSQL database over a SQL database, and vice versa?

Q9
Impact of Multiple Joins on Query Performance
System Design

How do multiple joins in a SQL query impact performance?

Q10
How Indexing Works During Query Execution
System Design

Explain how an index is utilized when a database query is executed.

Q11
Indexing for Constant Query Time
System Design

How does indexing help in achieving constant query time?

Q12
Document Storage in MongoDB vs. RDBMS Tables
System Design

Why are documents typically kept in MongoDB instead of multiple tables, unlike in a Relational Database Management System (RDBMS)?

Q13
Reasons for Database Normalization
System Design

Why do we normalize databases?

Q14
Disadvantages of Database Normalization
System Design

What are the disadvantages of database normalization?

Q15
Database Level Scaling Strategies
System Design

How can you scale a database at the database level?

Q16
Database Scaling Techniques: Clustering, Replication, Sharding
System Design

Discuss database scaling techniques such as clustering, master-slave replication, master-master replication, and sharding.

Q17
Handling Foreign Key Relationships with Sharding
System Design

How are relationships between two tables having foreign keys handled in the context of database sharding?

Q18
Impact of Indexing on Write Queries
System Design

How does indexing impact the performance of write queries?

Q19
Introduction to Kafka
System Design

What is Apache Kafka?

Q20
Kafka vs. Asynchronous Threads
System Design

Why would one choose Kafka over asynchronous threads for certain use cases?

Q21
Java CompletableFuture
Other

Explain Java's CompletableFuture.

Q22
What is a Semaphore
Other

Explain what a Semaphore is in concurrent programming.

Q23
JWT Authentication and Session Management
System Design

Explain JWT Authentication. How is JWT persisted? How do you handle logout scenarios if someone copies and reuses a token for API calls?

Q24
JWT Token Validation Process
System Design

Who is responsible for validating a JWT token, and what is the validation process?

Q25
Client Token Authentication for 1 Day
System Design

Discuss how to implement client token authentication that lasts for one day.

Q26
Thread.wait(), Thread.notify(), Thread.notifyAll()
Other

Explain the usage and differences between Thread.wait(), Thread.notify(), and Thread.notifyAll() methods in Java.

Goldman Sachs | CoderPad Round | Bangalore/Hyd Location
goldman sachs logo
Goldman Sachs
Bangalore/Hyderabad
March 12, 202568 reads

Summary

I had a CoderPad round with Goldman Sachs where I was given two DSA questions to solve within a predefined function, handling edge cases and writing basic test cases.

Full Experience

My CoderPad round for Goldman Sachs was scheduled for March 12th. The interview was conducted on Zoom, and the Data Structures and Algorithms questions were presented on the GS CoderPad platform. I was given two coding problems and instructed to write optimal solutions within a predefined function. Additionally, I had to consider edge cases and provide basic test cases to validate my solutions for both problems.

Interview Questions (2)

Q1
Longest Continuous Characters
Data Structures & Algorithms

Given a string like "aabbbbccd", find the starting index and length of the longest continuous characters in the string.
Example: "aabbbbccd"
Expected Output: 2, 4

Q2
Max Value Path in 2D Grid
Data Structures & Algorithms

Given a 2D grid, each cell has an item which has value >=0. We are standing at the bottom-left cell of the grid and need to reach the top-right cell. So we need to reach from r-1, 0 to 0, c-1 with the maximum possible value.
Example:

0 0 5
0 1 0
2 0 1

Expected Output: 8

Goldman Sachs | Analyst | 1.5 YOE | Hyd/Blr | Feb 2025
goldman sachs logo
Goldman Sachs
analysthyderabad/bangalore1.5 yearsOffer
March 1, 202528 reads

Summary

I interviewed for an Analyst position at Goldman Sachs, navigating through several technical and behavioral rounds, including online assessments, coding challenges, system design, and a hiring manager discussion, ultimately receiving an offer.

Full Experience

I have 1.5 years of experience as a backend Java developer at an Indian fintech company and applied for this role through a referral.

Round 1 - Online Assessment

I don't recall the exact questions, but there was one easy and one medium-level problem which I successfully solved. Shortly after, the recruiter contacted me to gather information about my current CTC and notice period, indicating my profile was being forwarded. A few days later, I received an email to schedule a Coderpad round.

Round 2 - Coderpad

I was presented with two coding problems: String Compression and Trapping Rain Water. For the first problem, I explained my approach and immediately started implementing it. For the second, I discussed both the extra space and constant space approaches before implementing the latter. I executed my code against several test cases, including additional ones provided by the interviewer, which required me to handle some corner cases for the first problem. The very next day, the recruiter called to schedule a Superday.

Superday

My Superday consisted of three 1-hour interviews, each with a 30-minute break.

Round 3 - Data Structures

Two interviewers were present. Each asked one question: Group Anagrams and Count Good Nodes in Binary Tree. For the first problem, the expectation was to provide an optimized working solution that passed test cases. For the second, we performed a dry run with some test cases. The first interviewer also interspersed questions about APIs and databases, such as how to fetch 1GB of data using REST APIs.

Round 4 - Software Engineering Practices

This round involved questions on Java Interfaces and the Spring framework. I also spent about 45 minutes on a Low-Level Design (LLD) for a Payment Gateway Service.

Round 5 - Software Design and Architecture

I was asked to design an LRU Cache and convert a number like 1234 into words (e.g., 'one thousand two hundred and thirty-four').

Round 6 - Technical Round

This round covered Java concepts like the difference between String == and equals(), String immutability, and how to make a class immutable. There was also a SQL query problem which I solved using GROUP BY and HAVING clauses. Finally, I had to design the backend of an employee details form, explaining Spring Boot features (controller, service, repository classes) and the APIs.

Round 7 - Hiring Manager

This was a quick 20-25 minute call where the HM asked about my reasons for leaving my current company after 1.5 years and my interest in Goldman Sachs. He described the team and tech stack. The call concluded positively, with him expressing his desire to have me join the team as soon as possible. The HR verbally confirmed my selection, and I am currently awaiting the official offer letter.

Interview Questions (14)

Q1
String Compression
Data Structures & AlgorithmsMedium

Given an array of characters chars, compress it using the following algorithm: Begin with an empty string s. For each group of repeating characters in chars, append the character followed by the count of its repetitions to s. If the count is 1, don't append it. After compressing, chars should be modified in-place to contain the first k characters of s, where k is the new length. Return k.

Q2
Trapping Rain Water
Data Structures & AlgorithmsHard

Given n non-negative integers representing an elevation map where the width of each bar is 1, compute how much water it can trap after raining.

Q3
Group Anagrams
Data Structures & AlgorithmsMedium

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.

Q4
Count Good Nodes in Binary Tree
Data Structures & AlgorithmsMedium

Given a binary tree root, a node X in the tree is 'good' if in the path from the root to X (inclusive), there are no nodes with a value greater than X. Return the number of 'good' nodes in the binary tree.

Q5
Fetch Large Data via REST APIs
System Design

Explain how to efficiently fetch a large dataset (e.g., 1GB) using REST APIs, considering potential issues like memory, network latency, and response times.

Q6
Design a Payment Gateway Service (LLD)
System Design

Provide a Low-Level Design (LLD) for a Payment Gateway Service, detailing components, APIs, database schema, and interactions.

Q7
Design LRU Cache
Data Structures & AlgorithmsHard

Design and implement a Least Recently Used (LRU) cache. The cache should support get and put operations with O(1) time complexity.

Q8
Convert Number to Words
Data Structures & AlgorithmsMedium

Implement a function that converts a given integer (e.g., 1234) into its English word representation (e.g., 'one thousand two hundred and thirty-four').

Q9
String == vs. equals() in Java
OtherEasy

Explain the difference between == operator and the equals() method when comparing String objects in Java, including their use cases and underlying mechanisms.

Q10
Explain String Immutability in Java
OtherEasy

Explain what String immutability means in Java, why Strings are designed to be immutable, and its implications.

Q11
How to Make a Class Immutable in Java
OtherMedium

Detail the steps and best practices required to create an immutable class in Java, including final fields, no setter methods, deep copies, etc.

Q12
Design Employee Details Form Backend (Spring Boot)
System DesignMedium

Design the backend for an employee details form using Spring Boot. This involves implementing controller, service, and repository classes, and explaining the REST APIs for CRUD operations.

Q13
Why Leaving Current Company?
Behavioral

Explain your reasons for seeking a new opportunity and leaving your current company after 1.5 years.

Q14
Why Goldman Sachs?
Behavioral

Discuss your motivations and interest in joining Goldman Sachs specifically.

Goldman Sachs | Associate | Interview Experience | India
goldman sachs logo
Goldman Sachs
AssociateBangalore4.5 yearsRejected
February 5, 202523 reads

Summary

I interviewed for an Associate role at Goldman Sachs in Bangalore. After successfully clearing multiple rounds focusing on Data Structures & Algorithms and System Design, I unfortunately did not pass the final system design round where I was asked to design a billing system.

Full Experience

The recruitment process started after a recruiter reached out to me on LinkedIn. My first step was a HackerRank test, which consisted of two LeetCode Medium problems. I passed this initial screening.

The next round was conducted on Coderpad via Zoom. I faced two questions: one involved a grid-based Dynamic Programming problem, and the second was related to Pascal's Triangle. I successfully cleared this round.

The third round was another Data Structures & Algorithms focused interview. The first question asked me to Find Subarrays whose sum is 0, which I solved perfectly and wrote working code for. The second question was Meeting Rooms II. I provided the correct approach, but my code missed a few edge cases. The interviewers were happy with my approach and helpful throughout.

The fourth round delved into Software Design Principles. I was asked to perform a High-Level Design (HLD) of one of my past applications. The interview was intense, with back-to-back questions, leaving no time to draw the architecture while responding. Despite the pressure, I passed this round.

The fifth and final round involved designing a High-Level Architecture for their application's Billing System. Unfortunately, I struggled with this problem. The interviewers seemed a bit uninterested and ended the interview 15 minutes early when they saw me struggling. Although I understand I might not have been fully prepared, I felt the lack of assistance contributed to the outcome. Overall, the HR was very understanding, especially regarding my pre-planned vacations.

Interview Questions (5)

Q1
Pascal's Triangle
Data Structures & Algorithms

A question related to generating or manipulating Pascal's Triangle.

Q2
Find Subarrays whose sum is 0
Data Structures & Algorithms

Given an array of integers, find all contiguous subarrays whose sum is equal to zero.

Q3
Meeting Rooms II
Data Structures & Algorithms

Given an array of meeting time intervals intervals, where intervals[i] = [start_i, end_i], return the minimum number of conference rooms required.

Q4
High-Level Design of My Application
System Design

I was asked to perform a High-Level Design (HLD) of an application I had previously worked on. The interview involved rapid-fire questions about the architecture, requiring quick responses without much time for drawing.

Q5
High-Level Design of a Billing System
System Design

I was asked to design the High-Level Architecture for their application's Billing System.

Preparation Tips

My preparation primarily involved extensive practice on LeetCode, where I solved almost 650 questions, including approximately 350 medium and 50 hard problems. Based on my interview experience, I realize a significant area for improvement is in System Design, particularly High-Level Design.

Goldman Sachs | Associate | Bangalore | Dec 2024
goldman sachs logo
Goldman Sachs
associatebangalore2.5 yearsOffer
January 3, 202526 reads

Summary

I interviewed for an Associate role at Goldman Sachs in Bangalore and received an offer after a multi-round process, which included coding, core Java, system design, and managerial discussions.

Full Experience

I was approached by a recruiter on LinkedIn for an Associate position at Goldman Sachs in Bangalore. After applying through the shared job link, I went through a rigorous multi-round interview process.

Round 1: HackerRank Test
This was a 90-minute online assessment with two DSA questions (one Easy, one Medium on LeetCode equivalent scale). I successfully coded solutions for both problems.

Round 2: CoderPad Virtual Interview
A different recruiter scheduled a 1-hour virtual interview. The interviewer presented two DSA questions, both at a LeetCode Medium level. I solved both of them. One of the questions was Find First and Last Position of Element in Sorted Array. The other was not on LeetCode, but I managed to solve it using a heap-based approach.

The very next day, I received a call from the recruiter informing me that I had been selected for the 'Super Day', which comprised three interviews scheduled for a single day.

Round 3: DSA Round
This was a 1-hour interview focused solely on Data Structures and Algorithms. I successfully solved both questions. One was Container With Most Water, and the other was a variation of a 'Take, No Take' Dynamic Programming problem.

Round 4: DSA + Java Core Questions + Kafka
This round covered a broader range of technical topics. We discussed Java core concepts, concurrency, and messaging queues, alongside a DSA question. Topics included the differences and tradeoffs between Hashtable, HashMap, and ConcurrentHashMap; optimistic vs. pessimistic concurrency control (with a recommendation to watch a specific YouTube video); Kafka internals, its advantages, and disadvantages compared to RabbitMQ; and finally, finding the longest increasing or decreasing subarray.

Round 5: OOPs + Java Internals + LLD + HLD + CN
This interview, originally scheduled for 1 hour, extended to 1 hour and 30 minutes due to the depth of discussion. It began with various OOPs-based questions. We then delved into the entire process of deploying code to the cloud, covering Java compilation, Maven's role, JAR vs. WAR, JVM/JDK/JRE/JIT, and CI/CD pipelines. A significant part involved implementing a rate limiter algorithm to prevent users from requesting an OTP more than 3 times in 5 minutes. We also discussed HTTP vs. HTTPS and TCP vs. UDP. The round concluded with a High-Level Design question on how to implement the rate limiter algorithm within a larger system involving CDNs, API Gateways, and Load Balancers.

Round 6: Techno-Managerial Round
This final round started with my introduction, followed by a detailed discussion about my current company, projects, architecture, and my specific contributions. Most questions were tailored around the skills and experiences highlighted in my resume.

Verdict: Selected
I received the offer letter after three weeks and have happily accepted it. I also shared my compensation details and Flipkart interview experience in separate posts.

Interview Questions (10)

Q1
Find First and Last Position of Element in Sorted Array
Data Structures & AlgorithmsMedium

Given an array of integers nums sorted in non-decreasing order, find the starting and ending position of a given target value. If target is not found in the array, return [-1, -1].

Q2
Container With Most Water
Data Structures & AlgorithmsMedium

You are given an integer array height of length n. There are n vertical lines drawn such that the two endpoints of the i-th line are (i, 0) and (i, height[i]). Find two lines that together with the x-axis form a container, such that the container contains the most water. Return the maximum amount of water a container can store. Notice that you may not slant the container.

Q3
HASHTABLE vs HASHMAP vs CONCURRENT HASHMAP Comparison
Other

Discuss the tradeoffs, advantages, and use cases of Hashtable, HashMap, and ConcurrentHashMap in Java.

Q4
Optimistic vs Pessimistic Concurrency Control
Other

Explain the concepts of optimistic and pessimistic concurrency control, including their use cases, advantages, and disadvantages.

Q5
Kafka Internals and Comparison with RabbitMQ
System Design

Discuss the internal architecture and working principles of Apache Kafka, and compare its advantages and disadvantages against RabbitMQ.

Q6
Longest Increasing or Decreasing Subarray
Data Structures & AlgorithmsEasy

Find the length of the longest subarray that is either strictly increasing or strictly decreasing.

Q7
Java Code Deployment Process & Internals
System Design

Explain the end-to-end process of deploying Java code to the cloud, covering compilation, Maven's role, JAR vs. WAR, JVM/JDK/JRE/JIT concepts, and CI/CD pipeline steps.

Q8
Rate Limiter Design for OTP Requests
System Design

Design an algorithm or system to implement a rate limiter such that a user cannot request an OTP for password reset more than 3 times within a 5-minute window.

Q9
HTTP vs HTTPS and TCP vs UDP Comparison
Other

Discuss the differences, advantages, and disadvantages of HTTP vs HTTPS and TCP vs UDP protocols.

Q10
High-Level Design for Rate Limiter with CDN, Gateway, Load Balancers
System Design

Design a high-level system incorporating CDN, API Gateway, and Load Balancers to implement and scale the rate limiter algorithm discussed previously.

Goldman Sachs Interview Experience | Analyst | India
goldman sachs logo
Goldman Sachs
analystindia1.5 yearsOngoing
December 28, 202434 reads

Summary

I recently interviewed at Goldman Sachs for an Analyst role in India, securing the opportunity after randomly applying. The process included an Online Assessment, a Coderpad screening, and a Super Day comprising multiple technical and system design rounds. I am currently awaiting the final verdict.

Full Experience

My Goldman Sachs Interview Experience

I applied to Goldman Sachs multiple times through referrals on their portal, but I never received a callback. This time, I decided to randomly apply and was fortunate enough to get an interview opportunity. I have 1.5 years of experience working in a product-based startup and possess decent Competitive Programming (CP) ratings.

Online Assessment

I received a link for the Online Assessment (OA) which consisted of two coding questions:

I successfully solved both problems, and the very next day, the HR contacted me to inform me that I would proceed to the next stage. However, the HR then ghosted me for about 10-15 days before the next steps.

Screening Round (Coderpad)

I aced this round in just 25 minutes, solving both questions the interviewer provided. These problems were commonly found in other Goldman Sachs interview experiences and involved topics like arrays and DFS/DSU.

Super Day

The Super Day consisted of multiple rounds, each with two interviewers. Every interview began with a warm exchange of greetings, and all the interviewers were very attentive and gave off good vibes.

1. First Interview (DSA Round)

The interviewers reviewed my resume and started asking JavaScript questions since it was prominently mentioned. They asked about promises and other JS concepts, but I struggled to recall many details as I hadn't used JS for 4-5 months. They allowed me to use JS throughout the round and were understanding about minor syntax mistakes.

  • The first DSA question was a simple hashmap plus set problem. I coded it easily but had some trouble with JS syntax. Despite that, I passed all test cases in one go.
  • The second DSA question was Minimum Window Substring. Again, while writing in JS, I made a small mistake using 'of' instead of 'in' for a forEach loop, which prevented the code from running initially. I debugged it and successfully passed all test cases.

2. Second Round (Software Engineering Practices)

This round primarily focused on my projects. I was then asked to give a very high-level design of a food delivery application from the user's perspective. I also had to design the database schema for it in detail.

  • There was one DSA question which was a very easy map plus queue problem.

3. Hiring Manager (HM) Round

For this round, I was specifically asked to code in Java only. When I inquired if I could use C++, they mentioned I had already used C++ and JS in previous rounds, so doing one in Java would ensure language wasn't a barrier. They also agreed to help me with syntax if I got stuck.

  • The DSA question involved a queue and a sliding window concept. I couldn't recall the exact question but managed to write very clean code in a short amount of time.
  • I was given a puzzle whose answer turned out to be the sum of squares up to 'n'.
  • Additionally, there were a few behavioral questions.

Verdict

I am currently waiting to find out the verdict as most people are on holidays. I will update once I receive the outcome.

Interview Questions (5)

Q1
Construct Smallest Number From DI String
Data Structures & AlgorithmsMedium

Given a pattern string consisting of characters 'I' (increasing) and 'D' (decreasing), construct the lexicographically smallest number using digits 1-9 such that it matches the given pattern.

Q2
Minimum Window Substring
Data Structures & AlgorithmsHard

Given two strings s and t, find the minimum window substring of s such that every character in t (including duplicates) is included in the window. If there is no such window, return an empty string.

Q3
Design a Food Delivery App (High-Level)
System Design

I was asked to provide a very high-level design for a food delivery application, focusing on the user's perspective.

Q4
Design Database Schema for Food Delivery App
System Design

Following the high-level design for a food delivery app, I had to detail its database schema.

Q5
Puzzle: Sum of Squares Till N
Other

I was presented with a puzzle, the solution to which involved finding the sum of squares up to a number 'n'.

Goldman Sachs | Associate | Hyderabad | Dec 2024 - Reject
goldman sachs logo
Goldman Sachs
AssociateRemote2.4 yearsRejected
December 23, 202419 reads

Summary

My interview journey for an Associate role at Goldman Sachs encompassed a HackerRank assessment, a technical phone screen, and a Super Day with one intense technical round. Although I successfully tackled most coding challenges, my inability to fully implement a complex string compression problem during the Super Day ultimately led to my rejection.

Full Experience

In November 2024, I was invited by a recruiter to appear for a HackerRank test for an Associate Level position at Goldman Sachs. This initial screening included two coding questions, which I found to be of easy-medium difficulty, similar to typical LeetCode problems. While I don't recall the specific problems, I successfully completed the test. After a waiting period, HR confirmed I had cleared it and scheduled my first interview round.

My first technical phone screen, lasting an hour, was conducted on CoderPad. It focused heavily on Data Structures and Algorithms. I was given two main problems: 'Find cycle in a circular array' and 'Find the median of two sorted arrays'. For both, I started with a brute-force solution and then proceeded to optimize my approach. The interviewer seemed to appreciate the clarity of my explanations and the logical steps I took. Additionally, there were some conceptual questions on core Java and one related to Spring Boot. I successfully cleared this round, and HR informed me that I would advance to the 'Super Day' interviews.

The Super Day consisted of two scheduled rounds. The first round, another hour-long Data Structures and Algorithms session, presented me with 'Koko Eating Bananas,' which I solved and tested successfully within the given time. The second problem was a more complex 'String Compression Problem.' The task was to replace the largest repeated substring at every point with an asterisk (*) to achieve the minimal-length compressed string. For example, 'abcabcd' should become 'abc*d', and 'aabbaabb' should become 'a*bb*'. I spent time explaining my thought process and dry-running my approach with several examples. However, the interviewer consistently challenged me with edge cases and scenarios, and unfortunately, I couldn't fully implement the code within the allocated time.

The second round of the Super Day, which was scheduled, did not proceed as the interviewer failed to join. Later, I received an update from HR stating that I had been rejected, specifically that I didn't clear the final round.

Reflecting on the experience, the process was quite rigorous, demanding strong problem-solving skills, clear communication of thought, and thorough handling of edge cases. The emphasis on explaining my logic before diving into code was very clear throughout. Although I performed well on most problems, my inability to fully implement the second problem during the Super Day's first round was likely the primary reason for the rejection. The overall process felt professional and well-organized, but the lack of specific feedback on the reasons for rejection left me with some unanswered questions.

Interview Questions (3)

Q1
Find Median of Two Sorted Arrays
Data Structures & Algorithms

Given two sorted arrays, find the median of the two sorted arrays.

Q2
Koko Eating Bananas
Data Structures & Algorithms

The problem asks to find the minimum eating speed 'k' such that Koko can eat all bananas within 'h' hours.

Q3
String Compression with Asterisk
Data Structures & Algorithms

Given a string, replace the largest repeated substring at every point with an asterisk (). The goal is to obtain a minimal-length string after compression.

Example 1:
Input: s = "abcabcd"
Output: "abc
d" (Reason: Replace the second instance of "abc" with .)

Example 2:
Input: s = "aabbaabb"
Output: "a
bb*" (Reason: Replace repeated "a" at index 1 and "aabb" at the second instance.)

Goldman Sachs | Assoiciate |
goldman sachs logo
Goldman Sachs
associatebengaluru2.33 yearsRejected
December 16, 202432 reads

Summary

I interviewed for an Associate role at Goldman Sachs in Bengaluru, undergoing a rigorous 2-month process that included coding, technical, and design rounds. Despite clearing most rounds, I was ultimately rejected after the final system design round due to my inability to recall exact production-level code implementations for Kafka and MongoDB.

Full Experience

Round 1: Hackerrank Test (Cleared)

This round consisted of two easy-level problems that I completed within 30 minutes. Unfortunately, I don't recall the exact questions, but they were straightforward.

Round 2: Coderpair Round (Cleared)

In this round, I was asked two coding questions:

  1. A grid problem: Given an N*M grid containing coins, the task was to find the optimal path to collect the most coins, with movement restricted to North and East.
  2. Max average score: I had to process a list of students with their scores in various subjects, where scores were strings and could be negative. The goal was to find the student with the maximum average score.

They expected working code that passed various test cases, which I managed to provide.

Super Day (Elimination Rounds on Same Day)

Round 3: Data Structures (Cleared)

This round focused on Data Structures, and I was specifically asked to code in Java, which was slightly challenging as I usually code in C++. I was given two problems:

  1. Maximum Sum Circular Subarray: I successfully solved this LeetCode problem.
  2. Student with max average score: This was the same question from Round 2, which I again solved.

I also faced questions about ConcurrentHashMap, likely because I used a HashMap in my solution.

Round 4: Software Engineering Practices (Cleared)

This round deep-dived into my past experience and related technical aspects. The discussion flowed based on what I mentioned, covering:

  • Schedulers: Questions on their working mechanisms.
  • Database Choice: My rationale for choosing NoSQL over MySQL.
  • Elasticsearch: Various questions regarding its functionality.
  • Spring Boot: Core concepts and best practices.
  • JVM Architecture: My understanding of JVM internals.

I was also tasked with coding a Singleton Class that is thread-safe, requiring proper use of locking mechanisms and the volatile keyword. I successfully implemented this and answered follow-up questions on multithreading.

Additionally, they inquired about retry mechanisms, specifically expecting knowledge of exponential backoff strategies. I also discussed how to ensure data consistency between MongoDB and Elasticsearch, suggesting checksums and elaborating on their implementation and verification. Several Kafka-related questions were also posed, testing my understanding of message processing and stream handling.

Round 5: Software Design and Architecture (Rejected)

This was the final round, lasting about 45 minutes. I discussed the high-level and low-level design of my recent work. They then asked me to write specific code for MongoDB calls like findBy(), expecting exact production-level code. I struggled to recall the precise implementation and could only provide pseudo-code, which seemed to displease them.

Next, questions on inter-process communication came up, where my OS concepts knowledge was lacking. When I mentioned Kafka for asynchronous communication, they asked for its implementation code in a real project. Again, I could only provide pseudo-code, which was not well-received.

Further questions included: "How many threads can run at one time in an instance?" (which led to a deep dive into what a core is), garbage collection algorithms (requiring a deep dive into all core concepts), and how to obtain a heap dump.

Ultimately, I was rejected in this round. I believe my inability to recall and write exact production-level Kafka and MongoDB code played a significant role in my rejection, despite feeling I had performed well otherwise. This was my first interview experience blog, and I hope it can be helpful to others.

Interview Questions (12)

Q1
Optimal Path to Collect Most Coins in Grid
Data Structures & AlgorithmsMedium

Given a grid of size N*M containing coins, find the optimal path to collect the most coins. The only allowed movements are North and East.

Q2
Student with Max Average Score
Data Structures & AlgorithmsMedium

Given a list of students with their scores in different subjects, find the student with the maximum average score. The scores are provided as strings and can include negative values.

Q3
Maximum Sum Circular Subarray
Data Structures & AlgorithmsMedium

Given a circular integer array nums, return the maximum possible sum of a non-empty subarray of nums.

Q4
NoSQL vs. MySQL Choice
System Design

Discussion on the choice of NoSQL over MySQL for a specific project.

Q5
Thread-Safe Singleton Class Implementation
Data Structures & AlgorithmsMedium

Implement a Singleton class that functions correctly in a multithreaded environment, ensuring proper use of locking mechanisms and the volatile keyword for thread safety.

Q6
Retry Mechanisms with Exponential Backoff
System Design

Explain retry mechanisms, specifically knowledge of exponential backoff strategies.

Q7
Data Consistency between MongoDB and Elasticsearch
System Design

How to ensure data consistency between MongoDB and Elasticsearch if data is stored in both systems. Discussion on using checksums and their implementation/verification.

Q8
MongoDB Data Fetching Implementation
OtherMedium

Write detailed production-level code for MongoDB data fetching, including specific calls like findBy().

Q9
Kafka Implementation Code in a Real Project
OtherMedium

Implement Kafka code as it would be used in a real project for asynchronous communication.

Q10
Number of Threads and Core Concepts
System Design

Discussion on how many threads can run concurrently on an instance, based on the number of cores, and a deep dive into what a core is.

Q11
Deep Dive into Garbage Collection Algorithms
System Design

A detailed discussion and deep dive into various garbage collection algorithms and their core concepts.

Q12
Heap Dump Generation
Other

How to obtain a heap dump for debugging purposes.

Goldman sachs || Associate || Rejected
goldman sachs logo
Goldman Sachs
associate3 yearsRejected
November 30, 202438 reads

Summary

I recently interviewed for an Associate role at Goldman Sachs, undergoing four rounds focused on coding, data structures, and software engineering. Despite my efforts in solving most problems, including some LeetCode questions and a System Design LLD, I was unfortunately rejected after the third round.

Full Experience

I have over three years of experience at a product-based finance MNC. Recently, a recruiter reached out to me for an Associate role at Goldman Sachs, and I went through a total of four rounds.

OA Round

The Online Assessment was conducted on Hackerrank and featured two easy to medium-level questions. I managed to solve both well within the two-hour time limit.

First Round (Coderpad)

This was a one-hour round, starting with introductions. I was then asked two coding questions, typically one medium-hard and one medium DSA question.

  1. The first question was Target Sum. I initially presented a brute-force exponential solution and then optimized it using top-down DP to achieve O(n*sum) complexity. However, the interviewer was expecting a more optimized solution which I couldn't find in time, so I coded the O(n*sum) version.
  2. The second question was a variation of Remove One Element to Make the Array Strictly Increasing, where instead of removing one element, we could delete one subarray. We only had time to discuss the approach, not to code it.

Superday Interviews

I attended the Superday rounds while running a fever because I only had one month left in my notice period, and I had heard that GS typically takes about a month to release an offer letter. I felt my concentration was a bit lacking due to the fever. I'm unsure if it was a bad decision or part of a larger plan, but it's a good reminder to be mindful when scheduling your Superday.

Second Round (Data Structures)

This was another one-hour round with a panel of two interviewers. After introductions, they asked two coding questions:

  1. Given a map<child, parent> representing graph edges, I had to find the root of the tree with the maximum number of nodes. I proposed a solution with O(E) time and O(min(V,E)) space, but the interviewer hinted at further optimization. Due to time constraints, I coded my O(E) solution, but I mistakenly returned the maximum number of nodes instead of the root itself, which she pointed out at the end of the interview.
  2. The second question was Sliding Window Maximum, which was a known problem to me. I started with a brute-force O(n*k) solution and then optimized it to an O(n) approach using a sliding window. I struggled a bit with running and debugging, but the second interviewer was friendly and gave me a couple of extra minutes, allowing me to successfully run the code.

Third Round (Software Engineering Practice)

This was also a one-hour round with two interviewers, starting with introductions from both sides. They asked the following questions:

  1. Given an array, I needed to return true if there exists a triple of indices (i, j, k) such that i < j < k and nums[i] < nums[k] < nums[j], otherwise return false. I began with a brute-force O(n^3) solution, then optimized it to O(n^2). The interviewer expected further optimization, which I couldn't provide. I coded the O(n^2) solution, and although it failed initially due to a negligible check, which I pointed out, he seemed satisfied.
  2. The second interviewer, who was very experienced, asked me to perform a Low-Level Design (LLD) for SnakeLadder. I wrote a few classes and also implemented the game logic for playing. He was almost satisfied but mentioned it wouldn't work in a distributed environment and was expecting the logic to be implemented in an event-driven manner, which I couldn't grasp at the time. I regret not asking for more clarification on his exact expectations.

There were two more rounds scheduled: 'Software Design and Architecture' and 'Hiring Manager Round', but I was rejected after the 'Software Engineering Practice' round, which I didn't expect.

Later, I thought about how the SnakeLadder LLD could be done in an event-driven, distributed environment. One solution that came to mind was using a choreography design pattern where events are published to Kafka topics. A service (e.g., diceService, boardService, or gameService) would pick up an event, process it, and publish the next event to another Kafka topic that the subsequent service is listening to. This could be achieved using libraries like KStream, or even a single Kafka topic by segregating different events based on Kafka headers. I couldn't think of distributing this small piece of code during the interview.

I did not receive any feedback despite trying to get it via email and calls to HR.

I hope this experience helps others in their preparations. All the best, champs!

Interview Questions (6)

Q1
Target Sum
Data Structures & AlgorithmsMedium

You are given an integer array nums and an integer target. You want to build an expression out of nums by adding one of the symbols '+' or '-' before each integer in nums and then concatenate all the integers. Return the number of different expressions that you can build, which evaluates to target.

Q2
Remove One Subarray to Make Array Strictly Increasing
Data Structures & AlgorithmsMedium

A variation of the LeetCode problem 'Remove One Element to Make the Array Strictly Increasing'. In this variation, instead of removing a single element, the task is to determine if the array can be made strictly increasing by deleting exactly one subarray.

Q3
Find Root of Largest Tree in Forest
Data Structures & AlgorithmsMedium

Given a map<child, parent> representing graph edges (implicitly forming a forest of trees), find the root of the tree that has the maximum number of nodes.

Q4
Sliding Window Maximum
Data Structures & AlgorithmsHard

You are given an array of integers nums, and there is a sliding window of size k which is moving from the very left of the array to the very right. You can only see the k numbers in the window. Each time the sliding window moves right by one position. Return the maximum sliding window.

Q5
Find Triple with Specific Order
Data Structures & AlgorithmsMedium

Given an array, return true if there exists a triple of indices (i, j, k) such that i < j < k and nums[i] < nums[k] < nums[j]; otherwise, return false.

Q6
SnakeLadder LLD (Distributed)
System DesignHard

Design a Low-Level Design (LLD) for the SnakeLadder game. The interviewer was specifically looking for an event-driven design that would work effectively in a distributed environment.

Goldmann Sachs | Associate | Bengaluru | September 2024 [Offer]
goldman sachs logo
Goldman Sachs
associatebengaluru3 yearsOffer
October 22, 202422 reads

Summary

I successfully navigated a six-round interview process for an Associate position at Goldman Sachs in Bengaluru, culminating in a job offer. The process included rigorous DSA rounds, system design, a database challenge, and behavioral questions.

Full Experience

My Goldman Sachs Interview Experience

I recently interviewed for an Associate position at Goldman Sachs in Bengaluru. With 3 years of experience in a product-based company, I went through six challenging rounds.

Round 1 (DSA Coderpad Round)

The first coding round was quite intense. The interviewer was very kind and supportive, which helped me stay focused. I was given a medium-to-hard level question, which took me approximately an hour to solve. Although my approach was correct, the interviewer indicated that the complexity of my solution could be improved. Typically, they ask two questions in this round, but I only tackled one.

Round 2 (DSA Coderpad Round)

This round also focused on Data Structures and Algorithms. The interviewer presented three questions, which I found to be in the easy-to-medium difficulty range on LeetCode. I completed these within the allocated time.

Round 3 (DSA Coderpad Round)

Another DSA round involved two LeetCode questions:

Round 4 (DSA Coderpad Round & DB Question)

This round combined a LeetCode question with a database problem:

  • Number of Operations to Make Network Connected
  • For the database question, I was given a table with columns for country, game, and medal. The task was to rank all countries based on their total medal tally, similar to how rankings are determined in actual sports competitions.

Round 5 (System Design and Low-Level Design)

This was a comprehensive round focusing on design principles. I was asked detailed questions about my previous company projects. The main problem involved designing a robust search engine capable of searching for anything using any given keyword. The interviewer thoroughly explored all aspects of my projects and also inquired about the DevOps practices involved in my work.

Round 6 (Hiring Manager Round)

The final round with the Hiring Manager covered a broader range of topics:

  • Questions on basic Java and database concepts.
  • I was asked to describe the biggest technical challenge I've faced in my career and how I resolved it.
  • Standard behavioral questions to assess my soft skills and fit within the team.
  • Some decision-making problems and riddles were also posed.

Throughout all the technical interviews, there were always two interviewers present, except for the Hiring Manager round. I was happy to receive an offer for the Associate position!

Interview Questions (6)

Q1
Trapping Rain Water
Data Structures & AlgorithmsHard

Given n non-negative integers representing an elevation map where the width of each bar is 1, compute how much water it can trap after raining.

Q2
Longest Increasing Path in a Matrix
Data Structures & AlgorithmsHard

Given an m x n integers matrix, return the length of the longest increasing path in the matrix.

Q3
Number of Operations to Make Network Connected
Data Structures & AlgorithmsMedium

There are n computers connected by n-1 wires that form a tree. You can remove a wire and add it to connect any two computers. Return the minimum number of operations to make all computers connected.

Q4
Rank Countries by Medal Tally
Other

Given a table with columns: country, game, and medal, rank all countries based on their total medal tally, similar to how rankings are determined in actual sports games.

Q5
Design a Search Engine
System Design

Design a robust search engine capable of searching for anything using any given keyword. The discussion included deep dives into my past projects and DevOps aspects.

Q6
Biggest Technical Challenge
Behavioral

Describe the biggest technical challenge you have faced while working and how you overcame it.

Goldman sachs || Analyst || Rejected
goldman sachs logo
Goldman Sachs
analyst2.5 yearsRejected
August 24, 202429 reads

Summary

I applied for an Analyst role at Goldman Sachs and completed four rounds of interviews including an OA, a Coderpad round, and two Superday interviews focusing on data structures and software engineering practices. Unfortunately, I was rejected, likely due to a couple of cross-questions in the final round.

Full Experience

I recently applied for an Analyst role at Goldman Sachs through their career portal. I have over 2.5 years of experience at a product-based finance MNC.

OA Round: Hackerrank

This round consisted of two easy to medium level questions on the Hackerrank platform. I was given 2 hours but managed to solve both questions efficiently within 30 minutes.

First Round: Coderpad

This was a one-hour round. It began with an introduction, and then I was asked two coding questions. One was a variation of Pascal's Triangle II, where given a row and column, I needed to return the corresponding number. The second was an "Average Sum" problem: given a list of pairs with name and score, I had to return the average score for each student. This was an easy question, and I noticed it's quite repetitive, as I'd seen it in other interview experiences. Although I had an hour, I coded the most optimized solutions for both questions very quickly, and the interview ended in 30 minutes.

Superday Interviews

Second Round: Data Structures

This was also a one-hour round with a panel of two interviewers. We started with introductions and a deep dive into my current projects. Since my current organization is also fintech, they showed a lot of interest. They then gave me a few coding questions:

For the first two questions, I started with a brute-force approach and then coded the most optimized solutions. For the third question, we ran out of time, so I only discussed the approach, but they seemed convinced.

Third Round: Software Engineering Practice

This was my final one-hour round. It started with introductions and another deep discussion on my projects, again due to my fintech background. I was drawing my current project architecture and explaining it, but they were asking very key questions. Although I answered most cross-questions, I wasn't able to fully convince them on a couple of points.

In the end, they asked one coding question related to aggregation on two levels. I was asked to write clean code in a text file and I successfully coded it, and the interviewer was convinced.

After a few days, I saw on the portal that I was rejected. I tried reaching out via email and phone for feedback, but received no response. I believe my inability to fully convince them on a couple of cross-questions during the last round might have been the reason for my rejection. I feel interviewers should be more flexible in understanding others' projects rather than imposing their own rigid thoughts.

Interview Questions (6)

Q1
Pascal's Triangle II - Specific Element
Data Structures & Algorithms

Given a row index and a column index (0-indexed) for Pascal's Triangle, return the corresponding number at that position. This is a variation of the LeetCode problem.

Q2
Average Score of Students
Data Structures & AlgorithmsEasy

Given a list of pairs, where each pair contains a student's name and their score, return the average score for each unique student.

Q3
Best Time to Buy and Sell Stock
Data Structures & Algorithms

You are given an array prices where prices[i] is the price of a given stock on the i-th day. You want to maximize your profit by choosing a single day to buy one stock and choosing a different day in the future to sell that stock. Return the maximum profit you can achieve. If you cannot achieve any profit, return 0.

Q4
Best Time to Buy and Sell Stock II
Data Structures & Algorithms

You are given an integer array prices where prices[i] is the price of a given stock on the i-th day. On each day, you may decide to buy and/or sell the stock. You can only hold at most one share of the stock at any time. However, you can buy it then immediately sell it on the same day. Find the maximum profit you can achieve.

Q5
Reorganize String
Data Structures & Algorithms

Given a string S, check if the letters can be rearranged so that two characters that are adjacent to each other are not the same. If possible, output any possible result. If not possible, return the empty string.

Q6
Aggregate Client Stock Quantities
Data Structures & Algorithms

Given a list of tuples (clientId, stockId, Quantity), return a map or list of aggregated tuples (clientId, stockId, totalQuantity), where quantities for the same client and stock are summed up.

Example Input:
["simran","hdfc",30,
"xyz","idfc",10,
"xyz","hdfc",20,
"simran","tesla",10,
"simran","hdfc",20,
"xyz","tesla",10]


Example Output:
["simran","hdfc",50],
["simran","tesla",10],
["xyz","idfc",10],
["xyz","hdfc",20],
["xyz","tesla",10]

Preparation Tips

My preparation included practicing common LeetCode patterns and reviewing past interview experiences to identify repetitive questions. I focused on being able to derive optimized solutions from brute-force approaches during the coding rounds.

Goldman Sachs | Associate | Bengaluru | Aug 2024 [Reject]
goldman sachs logo
Goldman Sachs
associatebengaluru3 yearsRejected
August 17, 202422 reads

Summary

I interviewed for an Associate role at Goldman Sachs, which included an Online Assessment, a Coderpad round, and two Superday rounds focusing on Data Structures and Software Engineering Practices. Despite performing well in some areas, I was ultimately rejected after the Superday.

Full Experience

I recently interviewed for an Associate position at Goldman Sachs. My background includes 3 years of experience at a well-known product company.

My interview process started with an Online Assessment (OA) that lasted 2 hours. It included two coding problems:

Following the OA, I had Round 1 (Coderpad) for 1 hour. This round also focused on coding:

Next were the Superday interviews.

Round 2 (Data Structures) was a 1-hour session. I was asked:

  • Maximum Profit in Job Scheduling, which I later realized was a LeetCode hard problem. I could only manage to come up with a brute-force solution during the interview.
  • A custom linked list reordering problem: given 1→ 2→3→ 4->5→6→7→ 8, the output should be 1->8->2->7->6->3->5->4. I was able to devise an optimized approach but ran out of time to fully code the solution.

Round 3 (Software Engineering Practices), also 1 hour, involved a detailed discussion about my work projects and a series of rapid-fire scenario questions. The specific questions included:

  • Questions on how to increase API response time.
  • Why I chose SQL over NoSQL for a specific project.
  • What ACID compliance means.
  • How to handle cascading failures between microservices.
  • My approach to database server failure and recovery.
  • Another linked list coding problem: given a->b->c->a1->b1->c1->…an->bn->cn, the output should be b->c->a->b1->c1->a1->…bn->cn->an. I coded a solution but couldn't identify a bug in it during the interview.
I felt my confidence dropped during the project discussions, which affected my performance on the subsequent coding question. I ultimately received a rejection after this stage. I sensed that the interviewers in the last round were not entirely convinced by my answers regarding project design and system design scenarios.

Interview Questions (12)

Q1
Better Compression of String
Data Structures & Algorithms

The problem asks to compress a given string. Refer to the provided LeetCode link for the full problem statement.

Q2
Cutting Metal Surplus
Data Structures & Algorithms

This problem involves optimizing the cutting of metal surplus. Refer to the provided Gist link for the full problem statement.

Q3
House Robber
Data Structures & Algorithms

The classic House Robber problem. Refer to the provided LeetCode link for the full problem statement.

Q4
Robot Bounded In Circle (Modified Easy Version)
Data Structures & AlgorithmsEasy

The standard LeetCode problem "Robot Bounded In Circle" but with slight modifications to make it an easier version.

Q5
Maximum Profit in Job Scheduling
Data Structures & AlgorithmsHard

The problem of maximizing profit from a list of jobs with start times, end times, and profits. I only managed to come up with a brute force approach during the interview.

Q6
Reorder Linked List (Alternating Ends)
Data Structures & Algorithms

Given a singly linked list like 1→ 2→3→ 4->5→6→7→ 8, the output should be reordered to 1->8->2->7->6->3->5->4. The goal is to alternate elements from the beginning and end of the list, moving inwards.

Q7
Ways to Increase API Response Time
System Design

What are all the ways you can increase the response time of an API?

Q8
SQL vs NoSQL Choice
System Design

Explain why you chose SQL over NoSQL for your project.

Q9
What is ACID Compliance?
System Design

What does it mean by ACID compliance?

Q10
Microservice Failure Handling
System Design

A microservice makes an API call to another microservice which in turn makes a call to another service where the call has failed. How will you handle or stop this kind of failures from happening?

Q11
Database Server Failure and Recovery
System Design

What will you do when one of the DB server fails? How will it recover?

Q12
Reorder Linked List (Cyclic Shift of Triplet)
Data Structures & Algorithms

Given a linked list like a->b->c->a1->b1->c1->…an->bn->cn, the output should be b->c->a->b1->c1->a1->…bn->cn->an. This means cyclically shifting each triplet a->b->c to b->c->a.

Preparation Tips

Based on my experience, I'd suggest focusing on these aspects:

  • Be fast on coding, as interviews are strictly 60 minutes.
  • Thoroughly understand the system design aspects of your projects. Be prepared to discuss scaling and failure scenarios extensively.
  • Practice popular Goldman Sachs-tagged LeetCode questions, as they appeared in my initial rounds.
Goldman Sachs | Associate | Bangalore | [Result (Reject)]
goldman sachs logo
Goldman Sachs
AssociateBangaloreRejected
May 19, 202430 reads

Summary

I interviewed for an Associate position at Goldman Sachs in Bangalore, which included a CoderPad assessment and a SuperDay consisting of two technical rounds. Despite performing well on several technical and behavioral questions, I was ultimately rejected.

Full Experience

I had my interview experience for an Associate role at Goldman Sachs in Bangalore. The process began with a CoderPad round, followed by a SuperDay, which involved two distinct technical rounds.

CoderPad Round

This round focused on coding challenges. I was given two problems to solve:

  1. Find a cycle in an array: I had to implement a function that, given an integer array where elements point to indices, would find and return the length of any cycle. If no cycle was found, the function should return -1. Examples like countLengthOfCycle([1, 0], 1) == 2 and countLengthOfCycle([1, 2, 0], 0) == 3 were provided.
  2. Highest average score: The second problem involved processing an array of score pairs, such as scores[][] = [{“jerry”,”65”},{“bob”,”91”}, {“jerry”,”23”}, {“Eric”,”83”}], and finding the highest average score among all unique individuals. The scores could also be negative.

SuperDay - Round 1

This round was a mix of conceptual questions and a coding challenge:

  1. I was asked to explain what a LinkedList is and when one would choose a LinkedList over an ArrayList.
  2. I received a problem to rearrange a given linked list like 1->2->3->4->5 to produce a new list where every alternate element (odd-indexed if 0-indexed) is moved to the end. The desired output was 1->3->5->2->4.
  3. A classic problem on grouping anagrams was presented. Given an input list of strings like ["dog", "god", "cat","act","abc","tac"], the expected output was grouped anagrams: {{"dog","god"}, {"cat","act","tac"},{"abc"}}.

SuperDay - Round 2

The final round delved into my project experience and more complex data structure/algorithm questions:

  1. The interviewer asked about the latest project or feature I had developed in my current organization and its impact.
  2. I was challenged with a problem to return the product of all values at each index excluding that index’s value, given an array of integers (both positive and negative). The interviewer emphasized covering various test cases.
  3. I was asked about which data structure I would use to store each user’s data in a network where many users access a resource.
  4. The last question involved a binary tree consisting only of 0s and 1s. I had to find a subtree where the number of 0s and 1s are equal and return true, else false.

Ultimately, after these rounds, I received a rejection and did not proceed to any further stages.

Interview Questions (9)

Q1
Find Cycle in Array
Data Structures & Algorithms

You are given an integer array of size N. Every element of the array is greater than or equal to 0. Starting from arr[startIndex], follow each element to the index it points to. Continue to do this until you find a cycle. Return the length of the cycle. If no cycle is found return -1.

Examples: countLengthOfCycle([1, 0], 1) == 2 , countLengthOfCycle([1, 2, 0], 0) == 3

Q2
Highest Average Score
Data Structures & Algorithms

Given an array scores[][] = [{“jerry”,”65”},{“bob”,”91”}, {“jerry”,”23”}, {“Eric”,”83”}] Find the highest average score. Numbers can be negative as well.

Q3
LinkedList vs. ArrayList
Data Structures & AlgorithmsEasy

What is LinkedList? When do you choose LinkedList over ArrayList?

Q4
Rearrange LinkedList Alternating Elements
Data Structures & Algorithms

Given a linkedlist 1->2->3->4->5, return a new linkedlist with every alternate element, odd indexed element if starting as 0-indexed, being added at the last. New linkedList will look like: 1->3->5->2->4

Q5
Group Anagrams
Data Structures & Algorithms

Group anagrams from list of strings eg: I/P: ["dog", "god", "cat","act","abc","tac"] O/P: {{"dog","god"}, {"cat","act","tac"},{"abc"}}

Q6
Latest Project/Feature Discussion
Behavioral

Latest project/feature developed in current org and it's impact.

Q7
Product of Array Except Self
Data Structures & Algorithms

Given an array of integers, positive negative both. Return the product of all values at each index excluding that index's value. Emphasized on the test cases.

Q8
Data Structure for Network User Data
System Design

In a network, there are lot's of users coming to access a resource, which data structure will you use to store each user's data.

Q9
Binary Tree Subtree with Equal Zeros and Ones
Data Structures & Algorithms

Given a binary tree consisting of only 0's and 1's. Find a subtree in which number of 0s and 1s are equal and return true, else return false.

Goldman Sachs | SDE - 2 | Offer | Accepted
goldman sachs logo
Goldman Sachs
sde 2Offer
March 15, 202426 reads

Summary

I successfully interviewed for an Associate SDE role at Goldman Sachs, navigating multiple DSA, system design, and behavioral rounds, ultimately receiving and accepting an offer after approximately seven weeks.

Full Experience

I applied for the Associate SDE role at Goldman Sachs via LinkedIn without a referral and surprisingly received a call from a recruiter the very next day. After discussing my current role and responsibilities, I was sent a HackerRank online assessment link, which I took two days later. (A tip for others: always try to apply through a referral!)

HackerRank Online Assessment

This assessment involved two LeetCode medium-level DSA questions, which I completed in 40 minutes out of the allotted 90. Although I don't remember the exact problems, one was array and sum related, and the other involved strings, hashing, and timestamps.

Three days later, I received a call to proceed, and my first interview was scheduled two days after that.

Round 1: DSA

This 1-hour round required solving two DSA questions with optimized code. I managed to solve both, and with 20 minutes remaining, the interviewer gave me a third question, which I also coded successfully.

The questions were:

  1. Two Sum II - Input Array Is Sorted
  2. Palindromic Substrings
  3. Meeting Rooms II

I received another call from the recruiter the following day, informing me about a "Super Day" consisting of four elimination-based rounds on the same day.

Super Day: Round 1 (DSA)

This 1-hour round presented two questions.

  1. Copy List with Random Pointer: I initially provided an O(n) time and space solution. The interviewer then challenged me to optimize the space to O(1), which I successfully achieved, thanks to remembering a tutorial from Striver.
  2. A question similar to 132 Pattern: I explained my solution for this problem, and the interviewer seemed satisfied. He then posed a follow-up to count the number of such pairs, for which I presented an O(n^2) solution. This was more of a discussion, and I wasn't asked to code it.

Super Day: Round 2 (DSA)

Another 1-hour round with two questions.

  1. Fraction to Recurring Decimal: The interviewer added a constraint that the division operator should not be used and hinted at using binary search to find the quotient of a/b.
  2. A custom problem: Given a long string (document) and a prefix, output the indices where the prefix occurs within a specific word. For example, for doc = "A BCD AB CDE DEF AGH" and prefix = "A", the output should be {0, 6, 17}. Initially, I considered a simple O(m*n) traversal, but I was hasty and jumped to a Trie solution. The interviewer gently steered me back to the simpler traversal and then followed up by asking why I considered Trie, its advantages (e.g., for multiple queries on an immutable document), and disadvantages (memory). I then outlined a Trie-based approach involving storing word-index pairs and building a Trie with lists of indices at appropriate nodes. I wasn't asked to code the initial simple traversal but was asked to code the Trie solution after our discussion.

Super Day: Round 3 (Design)

This round was purely discussion-based.

  1. First Non-Repeating Character in a Stream: The core problem was to find the first non-repeating character, with follow-ups on implementing it in single machine/multiple threads and multiple machines/multiple threads environments. I explained my approach for each scenario, including using frequency maps, splitting workloads, parallel processing, and concepts like load balancing and fault tolerance. The interviewer seemed satisfied.
  2. Design LRU cache: I also had to design an LRU cache with a follow-up. Unfortunately, I don't remember the follow-up, and I felt I messed up that part.

Super Day: Round 4 (Hiring Manager)

This round was short, lasting only 15 minutes. I discussed one of my projects and provided instances of my leadership abilities.

Two weeks later, the recruiter contacted me for one final round.

Final Round (Design + Hiring Manager)

This 30-minute round involved explaining one of my projects, followed by a design question based on that project.

Approximately seven weeks after the final round, I had a compensation call with the recruiter and received the offer, which I accepted.

Additional Info: Every round happened on CoderPad. Two interviewers were present in each round, except for Round 1 (DSA) and Super Day Round 4 (Hiring Manager).

Interview Questions (9)

Q1
Two Sum II - Input Array Is Sorted
Data Structures & AlgorithmsMedium
Q2
Palindromic Substrings
Data Structures & AlgorithmsMedium
Q3
Meeting Rooms II
Data Structures & AlgorithmsMedium
Q4
Copy List with Random Pointer
Data Structures & AlgorithmsMedium
Q5
132 Pattern (and count follow-up)
Data Structures & AlgorithmsMedium

Given an array of n integers nums, a 132 pattern is a subsequence of three integers nums[i], nums[j] and nums[k] such that i < j < k and nums[i] < nums[k] < nums[j]. The interviewer asked me to explain the solution for finding such a pattern, and a follow-up to count the total number of such pairs.

Q6
Fraction to Recurring Decimal (without division operator)
Data Structures & AlgorithmsMedium

Given two integers representing the numerator and denominator of a fraction, return the fraction in string format. If the fractional part is repeating, enclose the repeating part in parentheses. An additional constraint was added: the division operator should not be used. The interviewer hinted to use binary search to find the quotient of a/b.

Q7
Find Prefix Occurrences in Document
Data Structures & Algorithms

You are given a long string doc and a prefix. The task is to output the starting indices at which the prefix occurs in a specific word within the doc. For example, if doc = "A BCD AB CDE DEF AGH" and prefix = "A", the output should be {0, 6, 17}. I initially thought of a trie but was guided towards a simpler O(m * n) traversal. The interviewer then followed up on the advantages and disadvantages of using a trie, especially for multiple queries on an immutable document. I then discussed and was asked to code a trie-based approach.

Q8
First Non-Repeating Character in a Stream (Distributed)
System DesignMedium

The core problem is to find the first non-repeating character in a string. The discussion focused on implementing this efficiently in different environments: single machine with a single thread, single machine with multiple threads, and multiple machines with multiple threads. For the single-threaded case, I described using a frequency map (map<char, pair<int, int>>) to store counts and last occurring indices, then iterating the map to find the character with frequency 1 and minimum index. For multiple threads/machines, I proposed splitting the string, processing parts in parallel, merging individual maps into a master map, and using a load balancer/fault tolerance mechanism.

Q9
Design LRU Cache
System DesignMedium

Design a Least Recently Used (LRU) cache. There was a follow-up question which I couldn't recall, and I believe I struggled with it.

Preparation Tips

To crack the interviews, I recommend the following:

  • Practice NeetCode 150 diligently, take notes, and revise them regularly. This forms the foundation.
  • Participate in LeetCode contests and upsolve problems.
  • For design rounds, have a thorough understanding of your resume projects. Avoid bluffing.
  • During each round, think out loud, explaining your thought process clearly. It's also acceptable to ask for hints from the interviewer if needed.

For System Design, I took mentorship through Preplaced, which I found very helpful for doubt resolution. The topics covered are similar to those found in resources like donnemartin/system-design-primer and ashishps1/awesome-system-design-resources.

Goldman Sachs Associate Position
goldman sachs logo
Goldman Sachs
Associate JAVA DeveloperBangalore, India3 yearsRejected
February 23, 202417 reads

Summary

I interviewed for an Associate Java Developer position at Goldman Sachs in Bangalore. Despite successfully clearing multiple rigorous technical rounds, my experience concluded negatively after an unprofessional final interview and subsequent ghosting by the recruiter.

Full Experience

I recently interviewed for an Associate JAVA Developer position with the Controllers Hiring Team at Goldman Sachs in Bangalore, India. I have over 3 years of experience in product-based companies.

The process started with an Online Assessment (OA) where I successfully solved 2 easy Hackerrank questions and cleared this round.

Next was DSA Round I, where I was given 60 minutes to solve 2 medium-level questions. The first question involved finding a cycle and its length in an array based on element pointers. The second was a variation of the LeetCode "Minimum Path Sum" problem, requiring me to find the maximum path sum instead. I cleared this round.

Following this, I had DSA Round II, also with 2 medium questions in 60 minutes. The first was a design problem to implement a simplified Splitwise system, handling inputs like [['a', 'b', 200], ['b', 'c', 300]] and querying who owes whom. The second was a variation of the "Number of Islands" problem on LeetCode. I successfully cleared this round as well.

DSA Round III consisted of one medium and one hard question, along with some software engineering practices questions, again in 60 minutes. For the hard question, it was the LeetCode "First Missing Positive" problem, which I solved using cycle sort. The other was a variation of "Best Time to Buy and Sell Stock" where I needed to show trades and minimize the number of trades to reduce fees. I cleared this round.

Finally, I proceeded to DSA + Design Round IV, which included one medium DSA and one design question. This round was unfortunately the worst interview experience I have ever had. The interviewer was extremely non-friendly, throwing unnecessary insults and making snarky remarks about my degree when I struggled with some database-specific questions. He frequently switched off his video and eventually cut the call while I was still speaking. Despite giving my best, I honestly didn't deserve such treatment. The DSA question asked me to return the sum of lengths of all valid substrings, where a valid substring only contains characters from a given validChars list. I found this to be a pretty easy question and solved it in O(N) time and O(1) space. After this round, I was ghosted by the recruiter, and I'm still eagerly waiting for any feedback.

Interview Questions (6)

Q1
Maximum Path Sum in Grid (Variation)
Data Structures & AlgorithmsMedium

A variation of Minimum Path Sum, but modified to find the maximum path sum.

Q2
Design Splitwise
System DesignMedium

Design a simplified Splitwise system. The system receives inputs like [['a', 'b', 200], ['b', 'c', 300]], where ['a', 'b', 200] means 'a paid b 200', implying 'b owes a 200'. The system should then be able to answer queries about who owes whom and the net amounts.

Q3
Number of Islands Variation
Data Structures & AlgorithmsMedium

A variation of the Number of Islands problem.

Q4
First Missing Positive
Data Structures & AlgorithmsHard

The problem is First Missing Positive. I solved it using cycle sort.

Q5
Best Time to Buy and Sell Stock with Transaction Fee (Variation)
Data Structures & AlgorithmsHard

A variation of the Best Time to Buy and Sell Stock problem. The goal is to show the trades made and perform the minimum number of trades to minimize the transaction fee.

Q6
Sum of Lengths of Valid Substrings
Data Structures & AlgorithmsEasy

Given a string s (e.g., 'abcde') and a list of validChars (e.g., ['a', 'b', 'c']), return the sum of lengths of all valid substrings of s. A valid substring is defined as any substring of s that contains only characters present in validChars.

Journey Through Goldman Sachs Interview Rounds: Challenges, Solutions, and Waiting for Feedback
goldman sachs logo
Goldman Sachs
BangaloreOngoing
February 6, 202418 reads

Summary

I underwent a rigorous multi-round interview process at goldman sachs in Bangalore, covering DSA, System Design, DevOps, and behavioral questions. Despite performing well across all rounds and solving specific problems like the House Robber and repeating decimal expansion, I am currently awaiting feedback, leaving the outcome uncertain.

Full Experience

My journey at goldman sachs commenced with an Online Assessment in December, where I successfully tackled two Data Structures & Algorithms questions within an hour, passing all test cases. Following this, my application was shortlisted, and a month later, I received a call from HR at goldman sachs in Bangalore, who scheduled my first-round interview for January 3rd, 2024. This initial round was primarily focused on DSA.

During the first interview, I faced two panelists. The first question was similar to the House Robber problem, which I initially approached recursively before optimizing it with memoization, dynamic programming, and space-optimized DP. The second problem involved finding the repeating decimal expansion of rational numbers, for which I provided an efficient solution.

My performance in this round led to an invitation for another five rounds of interviews on January 12th. Each round was intense, lasting from 3 PM to 8 PM, with short breaks in between. The initial technical rounds delved into various DSA topics, including graph theory, bit manipulation, stack-based problems, and tree traversals, where I applied strategies like DFS, BFS, and binary search.

The fourth round was dedicated to System Design fundamentals, where I discussed crucial concepts such as SQL vs. NoSQL trade-offs, CAP theorem, and proposed solutions for fault tolerance, ACID compliance, scalability, and performance relevant to goldman sachs' services. Following this, I was asked about DevOps, Kubernetes, and Kafka, demonstrating my understanding of these technologies.

The final round was a Behavioral (HR) interview, where I shared insights into my past projects, achievements, and how I embody various leadership principles. I believe I articulated my experiences and achievements thoroughly.

Despite what I perceived as strong performance across all rounds, I am currently awaiting an update from the hiring team. Multiple follow-up attempts with HR have not yet yielded any feedback, leaving me in a state of uncertainty.

Interview Questions (4)

Q1
House Robber Problem
Data Structures & AlgorithmsMedium

Given a list of non-negative integers representing the amount of money of each house, determine the maximum amount of money you can rob tonight without alerting the police. If two adjacent houses are robbed, the security system will be triggered.

Q2
Repeating Decimal Expansion of Rational Numbers
Data Structures & AlgorithmsMedium

Given two integers representing the numerator and denominator of a fraction, return the fraction in string format. If the fractional part is repeating, enclose the repeating part in parentheses. Examples: 1/33 = 0.03(03), 8639/70000 = 0.1234(142857).

Q3
System Design Fundamentals
System Design

Discussed topics including SQL vs. NoSQL trade-offs, CAP theorem considerations, and proposed solutions for fault tolerance, ACID compliance, scalability, and performance, specifically tailored for Goldman Sachs' services.

Q4
Behavioral and Leadership Principles Interview
Behavioral

Assessed past projects, achievements, and leadership principles during an HR interview.

Goldman Sachs | Interview Experience
goldman sachs logo
Goldman Sachs
Offer
November 25, 202320 reads

Summary

I recently completed an interview process with Goldman Sachs, which lasted about 2.5 months and included multiple rounds covering online assessments, DSA, resume discussion, system design, and a hiring manager interview. I successfully cleared all the technical rounds, solving all DSA questions, and ultimately received an offer.

Full Experience

I recently went through an extensive interview process at Goldman Sachs, which spanned almost 2.5 months. It began with Round 0, an Online Assessment, where I tackled 2 medium-level questions within an hour.

Round 1 was a Data Structures and Algorithms (DSA) round conducted on CoderPad, where I was presented with 1 medium and 1 hard question, lasting an hour.

Similarly, Round 2 was another DSA round on CoderPad, involving 1 medium and 1 hard question, also an hour long.

Round 3 was a hybrid round; the first 30 minutes focused on a discussion about my projects from my resume, followed by a 30-minute DSA session where I was asked 1 hard question related to binary search.

Round 4 was the System Design round. I was tasked with designing an online ordering system where an order could progress through multiple stages. The key requirements were that customers could cancel orders only at initial stages, but not later, and they needed visibility into all stages of their order. I also had to detail a Low-Level Design (LLD) for implementing these various stages and the cancellation feature. I proposed a High-Level Design (HLD) utilizing queues and an LLD employing the Chain of Responsibility pattern.

Finally, Round 5 was with the Hiring Manager, where the discussion revolved primarily around my projects.

I managed to solve all the Data Structures and Algorithms questions across the rounds, which ultimately led to a positive outcome.

Interview Questions (1)

Q1
Online Ordering System Design with Stage-based Cancellation
System Design

Design an online ordering system where an online request (order) can go through multiple stages. A customer should be able to cancel the order at initial stages but not at later stages. Additionally, the customer should be able to see all the stages the order is currently going through. I was also asked for a Low-Level Design (LLD) on how to implement the various stages a product would traverse and how to implement the cancel feature at a given stage.

Goldman Sachs On Campus | Internship Interview Experience | Selected
goldman sachs logo
Goldman Sachs
InternshipOn CampusOffer
March 2, 202319 reads

Summary

I was selected for the Goldman Sachs internship after a multi-round on-campus interview process. The interviews focused heavily on problem-solving, data structures, and OOPs concepts.

Full Experience

My interview journey for the Goldman Sachs internship began with an on-campus coding test, which was followed by a series of interview rounds. The coding test comprised five sections: Coding, CS MCQ, Problem Solving MCQ, Advanced Problem solving, and Subjective. I had to be careful with MCQs due to negative marking, but the coding questions were manageable.

Interview Round 1:
In the first interview, I was given a single algorithmic problem. I was asked to find the number of paths from the top-left to the bottom-right cell in an m*n matrix such that the sum of elements along the path equals a given number k. I successfully coded my solution and demonstrated its functionality.

Interview Round 2:
The second round focused on another problem-solving question involving binary trees. I needed to determine if the value of a node was equal to the sum of all nodes in its subtree rooted at it. After coding my initial solution, I was prompted to further optimize it. This round also included general OOPs and HR questions.

Interview Round 3:
The final round began with a deep dive into my resume and projects. I explained one of my projects, which led to a discussion about its data storage structure and potential optimization strategies. Following this, I was given a relatively straightforward tree problem: to output all nodes visible from the right side of a binary tree. The last question was a modified binary search problem, but I cannot recall the specifics of the modification.

Overall, the on-campus process was very smooth, and the interviewers were exceptionally friendly and helpful. I gathered that Goldman Sachs places significant emphasis on problem-solving abilities. While direct core CS questions weren't asked, concepts related to relational and non-relational databases, as well as OOPs, were touched upon indirectly.

Interview Questions (4)

Q1
Paths in Matrix with Target Sum K
Data Structures & Algorithms

Given an m*n matrix and a number k, find the number of paths from the top-left cell to the bottom-right cell such that the sum of all elements in the path equals k. I was also asked to code my solution and run it.

Q2
Node Value Equals Subtree Sum
Data Structures & Algorithms

Given a binary tree, check if the value of a node equals the sum of all nodes in the subtree rooted at it. I was asked to code my solution and improve it further.

Q3
Project Data Storage Optimization
System Design

After explaining one of my projects, I was asked about the structure of its data storage and how it could be optimized further.

Q4
Binary Tree Right Side View
Data Structures & Algorithms

Given a binary tree, output all the elements/nodes visible from the right view of the tree.

Goldman Sachs | Associate | Bangalore | [Offer]
goldman sachs logo
Goldman Sachs
Associate Software Engineerbangalore4 yearsOffer
October 9, 202229 reads

Summary

I successfully interviewed for an Associate Software Engineer position at Goldman Sachs in Bangalore, navigating through five rigorous rounds of technical and coding challenges, ultimately receiving an offer.

Full Experience

I recently interviewed for the Associate Software Engineer position at Goldman Sachs in Bangalore, India, bringing 4 years of experience to the table. My interview process consisted of five challenging rounds, with rounds 2, 3, and 4 occurring on the same day, followed by round 5 a week later.

First Round (Coderpad - 1 hour)

This round focused on data structures and algorithms. I was given two problems:

  • An easy problem involving counting the number of islands in a 2D matrix.
  • A medium-level problem which was a modified version of the Russian Doll Envelopes, where the goal was to stack cuboids to achieve maximum height.

Second Round (Coderpad - 1 hour)

This round included another coding problem and some theoretical questions:

  • A medium LeetCode problem: "Remove All Adjacent Duplicates in String II".
  • Basic Java and Object-Oriented Programming (OOPs) concepts, specifically around abstraction.

Third Round (Coderpad - 1 hour)

The third round was also a mix of coding and discussion:

  • The classic "Rod Cutting problem".
  • Several questions centered around my current projects mentioned in my resume.

Fourth Round (Coderpad - 45 minutes)

This was a quick but intense round with multiple problems:

  • An easy problem to determine the square root of a number N without using any built-in functions, with an expectation of an O(log n) solution.
  • An easy problem to detect and remove a cycle in a linked list. The interviewer grilled me specifically on why the fast pointer moves twice as fast as the slow pointer, and why other ratios aren't typically used.
  • Another easy problem: to mirror a binary tree in-place.
  • Further Java questions, this time focusing on multiple inheritance.

Fifth Round (Hiring Manager/Coderpad - 1.5 hours)

The final round was a combination of coding and deeper project discussions:

  • A medium LeetCode problem: "Partition Equal Subset Sum".
  • A medium problem where, given an array of building heights from East to West, I had to return the indices of buildings from where one could see the sunset.
  • A deep dive into the projects listed on my resume.

I felt confident after almost solving all the problems within the time limits and was expecting an offer, which I eventually received.

Interview Questions (9)

Q1
Number of Islands
Data Structures & AlgorithmsEasy

Given a 2D binary grid, which represents a map of '1's (land) and '0's (water), count the number of islands. An island is surrounded by water and is formed by connecting adjacent lands horizontally or or vertically.

Q2
Modified Russian Doll Envelopes
Data Structures & AlgorithmsMedium

Given a set of cuboids (instead of envelopes), stack them such that each cuboid is strictly larger than the one below it in all dimensions, and maximize the total height of the stack.

Q3
Remove All Adjacent Duplicates in String II
Data Structures & AlgorithmsMedium

Given a string s and an integer k, a k-duplicate removal consists of choosing k adjacent and identical letters and removing them. Repeat this procedure until no more k-duplicate removals can be made. Return the final string after all such removals.

Q4
Rod Cutting Problem
Data Structures & Algorithms

Given a rod of length n and an array of prices prices where prices[i] is the price of a piece of length i+1, determine the maximum value obtainable by cutting up the rod and selling the pieces.

Q5
Integer Square Root
Data Structures & AlgorithmsEasy

Implement int sqrt(int x). Compute and return the square root of x. Since the return type is an integer, the decimal digits are truncated, and only the integer part of the result is returned. The solution should aim for O(log n) time complexity.

Q6
Detect and Remove Cycle in Linked List
Data Structures & AlgorithmsEasy

Given the head of a singly linked list, return the node where the cycle begins. If there is no cycle, return null. Also, remove the detected cycle. The interviewer specifically asked to explain why the fast pointer moves twice as fast as the slow pointer, and why other ratios are not typically used.

Q7
Mirror a Binary Tree (In-Place)
Data Structures & AlgorithmsEasy

Given the root of a binary tree, invert the tree, and return its root. The inversion should be performed in-place.

Q8
Partition Equal Subset Sum
Data Structures & AlgorithmsMedium

Given a non-empty array nums containing only positive integers, find if the array can be partitioned into two subsets such that the sum of elements in both subsets is equal.

Q9
Buildings With Sunset View
Data Structures & AlgorithmsMedium

Given an array heights of building heights from East to West (left to right), return a list of the indices of the buildings that can see the sunset. A building can see the sunset if all the buildings to its West (right) are strictly shorter than it.

Goldman Sachs | Internship | Offer 2023
goldman sachs logo
Goldman Sachs
summer analyst internOffer
July 21, 202219 reads

Summary

I successfully navigated the interview process for a Summer Analyst internship at Goldman Sachs in 2023, ultimately receiving an offer. The process included a challenging coding round followed by three technical interviews focusing on data structures, algorithms, object-oriented programming, and database management systems.

Full Experience

Coding Round

As a pre-final year student, I participated in Goldman Sachs' on-campus recruitment drive for Summer Analyst interns in 2023, which was open to all branches without a CGPA criterion. The first round was a 1 hour 50 minute coding assessment comprising four sections:

  1. Two medium-level coding questions.
  2. MCQs covering math and aptitude.
  3. Coding-related MCQs.
  4. Two essay-type questions.

Around 40 students, including myself, were shortlisted for interviews.

Interview 1

This interview was conducted via Zoom with a shared code pair link. After my introduction, the interviewer asked me to solve the Next Smaller Palindrome problem. Following that, we discussed the differences between file systems and DBMS.

Interview 2

In the second interview, I began by giving a brief description of my projects and the tech stacks I had utilized. Then, I was presented with a coding challenge: the Missing Number problem. The interviewer then gave me a second question, First Missing Positive, specifically asking for a solution in linear time and constant space.

Interview 3

The third interview was also highly technical. It started with a discussion about my projects. I was then asked to list all the data structures I knew, followed by questions on different ways to represent a graph and the advantages of using an adjacency list. I was then given a question on BST, specifically the Minimum Absolute Difference in BST problem from LeetCode. Additionally, I was asked to implement a Sudoku validation function, with the constraint that checking a particular index should be done in a single iteration rather than using multiple nested loops. The interview concluded with some questions on OOP and DBMS, including basic SQL queries.

Interview Questions (5)

Q1
Next Smaller Palindrome
Data Structures & Algorithms

Given a numerical input, find the next smallest palindromic number. For example, if the input is 1234, the output should be 1221.

Q2
Missing Number
Data Structures & AlgorithmsEasy

Given an array nums containing n distinct numbers taken from 0, 1, 2, ..., n, find the single number that is missing from the array.

Q3
First Missing Positive
Data Structures & AlgorithmsHard

Given an unsorted integer array nums, find the smallest missing positive integer. The solution was specifically requested to be implemented in linear time and constant extra space.

Q4
Minimum Absolute Difference in BST
Data Structures & AlgorithmsEasy

Given the root of a Binary Search Tree (BST), return the minimum absolute difference between the values of any two different nodes in the tree.

Q5
Validate Sudoku (Single Iteration)
Data Structures & AlgorithmsMedium

Implement a function to validate a Sudoku board. The critical constraint was to ensure that the check for any particular index (row, column, and 3x3 sub-box) could be performed in just one iteration, avoiding the use of multiple nested for loops for validation.

Goldman Sachs | VP | Bengaluru | May 2022 [Reject]
goldman sachs logo
Goldman Sachs
VPBengaluru9 yearsRejected
June 8, 202234 reads

Summary

I interviewed for a VP role at Goldman Sachs in Bengaluru with 9 years of experience. The process involved multiple rounds covering DSA, problem-solving, and system design, ultimately resulting in a rejection despite feeling positive about many of the rounds.

Full Experience

I recently interviewed for a VP role at Goldman Sachs in Bengaluru with 9 years of experience, currently working in another IB. The process spanned from February to June 2022, ultimately ending in a rejection after multiple follow-ups.

I was very interested in the tech organization I applied for and felt I would be a good fit, which was somewhat validated throughout the process as I spoke with various interviewers.

Round 1 - Exploratory Call

This was a generic discussion with a Senior VP from the technology area about my work experience, roles, and responsibilities. He also provided an overview of their tech area and the position.

Round 2 - DSA Coderpad

This was a coding screen round. The interviewer was very professional; she aimed for two questions within an hour. I successfully coded both questions, and all test cases passed. This interviewer was excellent in terms of discussions, approach, and test cases.

  • The first question was a sliding window problem with strings, which I can't recall exactly, but it was a LeetCode medium.
  • The second question was about finding the median of two sorted arrays.

After clearing this round, the recruiter informed me about three technical rounds followed by a Hiring Manager round, with each being an elimination round. I found it unusual that they couldn't specify whether rounds would be DSA, LLD, or HLD, which differed from my experience with other big tech companies.

Round 3 - Problem Solving

Unsure what to prepare for, I continued with my general DSA and System Design studies. This round had two interviewers.

  • The first interviewer asked about scheduling jobs to optimize maximum completion based on time and priority. Despite asking for follow-up questions and examples, communication was difficult, and I didn't receive clear examples. I proceeded with a solution based on my understanding, though I suspect it wasn't exactly what she was looking for. The scope of the question also changed mid-interview, which complicated things further.
  • The second interviewer, a sensible Senior VP from my exploratory call, asked about designing a recommendation system for the top 'x' movies based on prior ratings. I successfully came up with a solution, and we had a good discussion with follow-up questions, which he seemed pleased with. I again inquired about the nature of future rounds, but he deferred to the recruiter.

Round 4 - Design

Again, I went into this round without specific expectations. This round was taken by an analyst and an associate. It started late due to miscommunication, wasting about 10 minutes.

  • The analyst asked me an LLD question about designing a stock exchange. I was able to answer and discussed various scenarios, including concurrency-specific follow-ups.
  • During this, I got disconnected for 2 minutes due to a power outage, wasting more time.
  • The associate then asked me to design the stories feature for social media apps. I clarified requirements and began discussing high-level system interactions and basic APIs. He interrupted me, focusing on system communication, so I explored options like HTTP calls, WebSockets, Push, and long-polling. He seemed dissatisfied and frequently interrupted me, possibly looking for a specific buzzword I wasn't using. When I moved to data storage, he again interrupted to revisit communication. The discussion felt argumentative, but I remained calm, answered his questions, and suggested alternatives.

Later, I learned from my sourcer (who was more candid than the recruiter) that the feedback for my previous round was positive for LLD, API design, and DB, but negative for system design. This struck me as odd since I designed the entire system. I was also told to expect heavy grilling in the next round.

Round 5 - Grill

This round had two interviewers. The first, from the same tech org, asked me to design a Rate Limiter. I guided him through the system, API, and data structure design. He asked a few follow-up questions and seemed largely onboard with my approach.

The second interviewer chose to continue with the same Rate Limiter problem, leading to a deep dive. I meticulously explained sample examples multiple times, patiently addressing all his queries. We discussed concurrency, storage options (temporary vs. permanent), complexity of calls, improvements, thresholds, and edge cases. He intensely grilled me, but I didn't mind as he seemed reasonable, and I thoroughly enjoyed the discussion.

After this, I expected a Hiring Manager round, as my interviews and conversations felt positive, and I was genuinely invested in the role and org. However, the recruiter provided no updates. After three weeks of follow-ups with both the sourcer and recruiter, I finally received a rejection, stating I wasn't suitable for the profile.

My conclusion is that interviewing well isn't always enough, especially if interviewers are immature or overly competitive. Also, the lack of clarity regarding round types (DSA/System Design) was a significant drawback compared to other companies.

Interview Questions (6)

Q1
Median of Two Sorted Arrays
Data Structures & AlgorithmsHard

Find the median of two sorted arrays.

Q2
Job Scheduling with Priority and Max Completion Optimization
Data Structures & Algorithms

Design a system or algorithm for scheduling jobs to optimize maximum completion based on the time taken by each job and its priority. I struggled with understanding the exact problem statement due to a lack of clear examples from the interviewer.

Q3
Movie Recommendation System
System Design

Design a recommendation system that suggests the top 'x' movies based on previously rated movies.

Q4
Low-Level Design of a Stock Exchange
System Design

Design a low-level system for a stock exchange, including handling concurrency specific follow-ups.

Q5
Design Social Media Stories Feature
System Design

Design the 'stories' feature for social media applications. I was asked to clarify system requirements (functional and non-functional) and discuss high-level system interactions, APIs, data storage, and inter-system communication (HTTP, Websocket, Push vs. long poll).

Q6
Rate Limiter Design
System Design

Design a rate limiter system. This included discussions on overall system design, API design, data structure design, concurrency scenarios, storage options (temporary vs. permanent), complexity of calls, improvements, thresholds, and edge cases. I explained with multiple sample examples.

Preparation Tips

I did not receive clear guidance on what to prepare for each round. Therefore, I continued with my general Data Structures and Algorithms (DSA) and System Design studies without focusing too heavily on Goldman Sachs' specific requirements.

Goldman Sachs | Analyst | Bangalore | [Offer]
goldman sachs logo
Goldman Sachs
AnalystBangalore2 yearsOffer
December 19, 202124 reads

Summary

I successfully interviewed for an Analyst position at Goldman Sachs in Bangalore and received an offer. The interview process consisted of several coding and problem-solving rounds heavily focused on Data Structures & Algorithms, concluding with a combined coding and hiring manager discussion.

Full Experience

My interview journey at Goldman Sachs for the Analyst role in Bangalore began with a Coding Round. I was presented with two questions that tested my problem-solving skills, likely involving array manipulations and algorithmic thinking.

Following this, I moved to a CoderPad Round focused on DSA. Here, I had to implement a function to encode strings, for instance, transforming 'aaab' into 'a3b1', and then tackle the classic problem of finding the median of two sorted arrays, requiring an optimized approach.

The first Problem Solving Round challenged me with grouping anagrams from a list of strings and again, the 'Array Burst Problem', which I recognized as similar to the 'Remove All Adjacent Duplicates in String II' problem on LeetCode.

The second Problem Solving Round continued with DSA, where I was asked to solve the 'Subset Sum problem', specifically the 'Partition Equal Subset Sum' problem, and determine the length of the 'longest valid parentheses' in a string.

My final round was a combined Coding & Hiring Manager discussion. This round included a unique sorting problem: given an array of strings and a character, I needed to sort the array such that strings containing that character came first, followed by others, with an example like sorting 'Hello', 'Apple', 'World', 'Football' by 'U' to get 'World', 'Apple', 'Football', 'Hello'. I also faced a problem involving finding the nearest hotel to each customer on a grid, along with extensive follow-up questions on its implementation, various use cases, and how to scale the solution for a large customer base. Additionally, I was asked several behavioral questions during this segment.

All onsite rounds were conducted virtually via Zoom.

Interview Questions (8)

Q1
Encode String
Data Structures & Algorithms

Implement a function to encode a string where consecutive identical characters are replaced by the character followed by its count. For example, 'aaab' should become 'a3b1'.

Q2
Median of Two Sorted Arrays
Data Structures & Algorithms

Given two sorted arrays, find their median. The solution should be optimized, typically aiming for an O(log(min(m,n))) time complexity.

Q3
Group Anagrams
Data Structures & Algorithms

Given an array of strings, group anagrams together.

Q4
Array Burst Problem (Remove All Adjacent Duplicates in String II)
Data Structures & Algorithms

The problem is to remove all k adjacent duplicate characters from a string. When k adjacent duplicates are found, they are removed, and the remaining string is processed further. This is precisely 'Remove All Adjacent Duplicates in String II' as found on LeetCode.

Q5
Subset Sum Problem (Partition Equal Subset Sum)
Data Structures & Algorithms

Given a non-empty array containing only positive integers, find if the array can be partitioned into two subsets such that the sum of elements in both subsets is equal. This is the 'Partition Equal Subset Sum' problem.

Q6
Longest Valid Parentheses
Data Structures & Algorithms

Given a string containing just the characters '(' and ')', find the length of the longest valid (well-formed) parentheses substring.

Q7
Custom String Sort by Character
Data Structures & Algorithms

Given an array of strings and a specific character, sort the array such that strings containing the character come first, and within those, strings are sorted lexicographically. Strings not containing the character follow, also sorted lexicographically. The example shows sorting by character 'U' resulting in ['World','Apple','Football','Hello'] from ['Hello','Apple','World', 'Football'].

Q8
Nearest Hotel to Customer in Grid
System Design

Given a grid-based input representing Hotels, Customers, and Blockers, find the nearest hotel for each customer. This problem also involved follow-up discussions on implementation details, various use cases, and how to handle scaling for a large number of customers.

Preparation Tips

To prepare for this interview, I primarily focused on strengthening my foundation in Data Structures and Algorithms. I practiced a wide range of problems, particularly those involving arrays, strings, dynamic programming, and graph-like traversals, similar to problems found on platforms like LeetCode. For the system design aspects and behavioral questions, I reviewed common architectural patterns and prepared answers using the STAR method to effectively articulate my experiences.

Goldman Sachs | Software Engineer/Analyst | Hyderabad | 2021 | Offer Accepted
goldman sachs logo
Goldman Sachs
Software Engineer/AnalystHyderabadOffer
December 17, 202123 reads

Summary

I successfully completed a comprehensive interview process for a Software Engineer/Analyst role at Goldman Sachs in Hyderabad, which involved multiple technical coding rounds, system design, and a hiring manager discussion, culminating in an accepted offer.

Full Experience

The recruitment process began when a recruiter contacted me via LinkedIn, and within two days, I received the Online Assessment link. The entire process, from the OA to receiving the offer letter, spanned approximately 2.5 months.

Round 1 (Online Assessment - HackerRank – 90 mins)

This round consisted of two medium-level problems, both of which I solved with all test cases passed:

Round 2 (Telephonic CoderPad Round - 1 hr)

During this round, the interviewer called me and shared two questions on CoderPad. After discussing my approach, I was asked to write the working code to pass all test cases:

  • Maximum sum of nodes in Binary tree such that no two are adjacent
  • Minimum Path Sum

I provided working code for both questions after explaining my approach, and all test cases passed.

Round 3 (Technical Interview Zoom F2F – 1 - 1 hr)

This was a Zoom face-to-face round with two panelists. I was asked three questions:

For the first question, I was asked to write pseudocode, while for the second and third, I had to provide working code on CoderPad. I successfully solved all three questions.

Round 4 (Technical Interview Zoom F2F – 2 - 1 hr)

In this round, I was asked two coding questions:

  • Trapping Rain Water (with Space complexity - O(1) and Time-O(n))
  • Minimum sum that cannot be created with a given set of coins.

I wrote working code for both problems.

Round 5 (Technical Interview Zoom F2F – 3 - 1 hr)

Again, two coding questions were asked in this round:

For the first question, I explained the approach with pseudocode, and for the second, I wrote the working solution.

Round 6 (Technical Interview Zoom F2F – 4 - 1 hr)

This round also involved two questions:

I explained the approach for the first question with pseudocode and provided working code for the second.

After completing these technical rounds, I received a call from HR confirming that I had cleared all of them and would proceed to a hiring manager round.

Round 7 (Hiring Manager + Bar Raiser - 1 hr)

The Hiring Manager started by discussing my past projects in depth. Following this, I was asked to design a web application supporting multiple languages and detail its entire flow. Many questions were also asked about React, Node, and JavaScript.

The next day, HR called to inform me that my round went well and the Hiring Manager was eager to have me on their team. Two days later, I received a call from HR for salary negotiation, and ten days after that, I received the official offer letter with compensation that exceeded my expectations.

Verdict: Offer Accepted

Interview Questions (14)

Q1
Number of GP Subsequences of Size 3
Data Structures & Algorithms

Given an array of integers, find the number of subsequences of length 3 that form a Geometric Progression (GP). A subsequence is formed by deleting zero or more elements from the original array. For example, if the array is [1, 2, 4, 8], [1, 2, 4] and [2, 4, 8] are GP subsequences.

Q2
Count Number of Teams
Data Structures & AlgorithmsMedium

There are n soldiers standing in a line. Each soldier is assigned a unique rating value. You have to form a team of 3 soldiers amongst them such that their ratings are either strictly increasing or strictly decreasing (i.e., (rating[i] < rating[j] < rating[k]) or (rating[i] > rating[j] > rating[k])) with indices (i < j < k).

Q3
Maximum Sum of Non-Adjacent Nodes in Binary Tree
Data Structures & Algorithms

Given the root of a binary tree, return the maximum sum of values of nodes such that no two nodes are adjacent. Two nodes are adjacent if one is the parent of the other.

Q4
Minimum Path Sum
Data Structures & AlgorithmsMedium

Given a m x n grid filled with non-negative numbers, find a path from top left to bottom right, which minimizes the sum of all numbers along its path. You can only move either down or right at any point in time.

Q5
LRU Cache
Data Structures & AlgorithmsMedium

Design a data structure that follows the constraints of a Least Recently Used (LRU) cache. Implement the LRUCache class: LRUCache(int capacity) initializes the LRU cache with the given positive capacity. int get(int key) returns the value of the key if the key exists, otherwise returns -1. void put(int key, int value) updates the value of the key if the key exists. Otherwise, add the key-value pair to the cache. If the number of keys exceeds the capacity from this operation, evict the least recently used key.

Q6
Sliding Window Maximum
Data Structures & AlgorithmsHard

You are given an array of integers nums, there is a sliding window of size k which is moving from the very left of the array to the very right. You can only see the k numbers in the window. Each time the sliding window moves right by one position. Return the max sliding window.

Q7
Decode String
Data Structures & AlgorithmsMedium

Given an encoded string, return its decoded string. The encoding rule is: k[encoded_string], where encoded_string inside the square brackets is being repeated k times. k is guaranteed to be a positive integer.

Q8
Trapping Rain Water (O(1) Space, O(n) Time)
Data Structures & AlgorithmsHard

Given n non-negative integers representing an elevation map where the width of each bar is 1, compute how much water it can trap after raining. I was specifically asked to solve this with O(1) space complexity and O(n) time complexity.

Q9
Minimum Sum Not Creatable by Coins
Data Structures & Algorithms

Given a list of positive integers representing coin denominations, find the smallest positive integer amount that cannot be formed by summing any subset of the given coins.

Q10
Boolean Parenthesization Problem
Data Structures & Algorithms

Given a boolean expression string consisting of 'T' (True), 'F' (False), 'AND' (&), 'OR' (|), and 'XOR' (^) operators, count the number of ways to parenthesize the expression such that it evaluates to True. For example, 'T|F&T' can be parenthesized as ((T|F)&T) -> (T&T) -> T, or (T|(F&T)) -> (T|F) -> T.

Q11
Best Time to Buy and Sell Stock
Data Structures & AlgorithmsEasy

You are given an array prices where prices[i] is the price of a given stock on the ith day. You want to maximize your profit by choosing a single day to buy one stock and choosing a different day in the future to sell that stock. Return the maximum profit you can achieve from this transaction. If you cannot achieve any profit, return 0.

Q12
N-Queens Problem
Data Structures & AlgorithmsHard

The n-queens puzzle is the problem of placing n non-attacking queens on an n×n chessboard. Given an integer n, return all distinct solutions to the n-queens puzzle.

Q13
Merge Intervals
Data Structures & AlgorithmsMedium

Given an array of intervals where intervals[i] = [starti, endi], merge all overlapping intervals, and return an array of the non-overlapping intervals that cover all the intervals in the input.

Q14
Design a Multi-language Web Application
System Design

I was asked to design a web application that supports multiple languages, including detailing the entire application flow.

Goldman Sachs | Analyst | Bangalore | September 2021 | Reject
goldman sachs logo
Goldman Sachs
Analystbangalore2 yearsRejected
September 28, 202125 reads

Summary

I interviewed for an Analyst position at Goldman Sachs in Bangalore with 2 years of prior IT experience. Despite clearing the online assessment and two coder pad rounds, I was unfortunately rejected after the first technical round of the Super day.

Full Experience

I was initially contacted by a recruiter on LinkedIn regarding an Analyst position at Goldman Sachs in Bangalore. With 2 years of previous IT experience in an investment bank, I proceeded with their hiring process. The first step was an online assessment, followed by two separate coder pad rounds, each an hour long and conducted face-to-face with an analyst. After successfully navigating these, I was scheduled for a Super day, which was planned to consist of three rounds: two technical interviews and one with a hiring manager. Regrettably, my journey ended there as I was rejected after completing only the first technical round of the Super day.

Interview Questions (9)

Q1
Climbing Steps with Specific Jumps
Data Structures & Algorithms

Find the number of ways to climb steps if you can only take 2, 4, or 6 steps at a time. This is a variation of the classic climbing stairs problem.

Q2
Remove Continuous Duplicate Characters
Data Structures & Algorithms

Given a string, remove characters that occur continuously for a specified length. This removal process should be repeated until no more characters can be removed further.

Q3
Run-Length Encoding (String Compression)
Data Structures & AlgorithmsEasy

Convert a string like 'aaabbccc' to 'a3b2c3', where consecutive identical characters are replaced by the character followed by its count.

Q4
Max Path Sum in 2D Grid (Up/Right)
Data Structures & Algorithms

Given a 2D grid where each cell has some value, find the largest accumulated value you can get by starting from the bottom-left cell and ending at the top-right. You are only allowed to move up or right.

Q5
Binary Tree Zigzag Level Order Traversal
Data Structures & AlgorithmsMedium

Given the root of a binary tree, return the zigzag level order traversal of its nodes' values. (i.e., from left to right, then right to left for the next level and so on. Alternate between).

Q6
Best Time to Buy and Sell Stock (One Transaction)
Data Structures & AlgorithmsEasy

You are given an array prices where prices[i] is the price of a given stock on the i-th day. You want to maximize your profit by choosing a single day to buy one stock and choosing a different day in the future to sell that stock. Return the maximum profit you can achieve. If you cannot achieve any profit, return 0.

Q7
Minimum Insertions to Sort an Array
Data Structures & Algorithms

Given an unsorted array, determine the minimum number of insertions required to make the array sorted. This is a variation related to the longest increasing subsequence problem.

Q8
Gas Station Problem (Circular Tour)
Data Structures & AlgorithmsMedium

There are N gas stations along a circular route, where the amount of gas at station i is available[i]. You have a car with an unlimited gas tank and it costs required[i] of gas to travel from station i to station i + 1. You start the trip with an empty tank at one of the gas stations. Return the starting gas station's index if you can travel around the circuit once, otherwise return -1. If there exists a solution, it is guaranteed to be unique.

Q9
Implement LRU Cache
Data Structures & AlgorithmsMedium

Design and implement a Least Recently Used (LRU) cache. It should support get and put operations, both with O(1) average time complexity. Explain how to handle a cache miss.

Goldman Sachs | Associate | Bangalore, India | March, 2021 [Offer]
goldman sachs logo
Goldman Sachs
SDE Igurgaon, india3.5 yearsOffer
May 26, 202118 reads

Summary

I successfully navigated through multiple rounds of interviews at Goldman Sachs for an SDE1 role, receiving an offer after a week. The process covered a mix of Data Structures & Algorithms, System Design, and behavioral discussions.

Full Experience

I have 3.5 years of experience working at a mid-size US-based startup. My interview process for the SDE1 position at Goldman Sachs in Gurgaon, India, consisted of several rounds:

1. Online Assessment (~90mins)

  • This was a HackerRank round.
  • I don't recall the exact questions, but they were LeetCode Easy (string-based) and LeetCode Medium (stack-based).

2. DSA | Phone Interview (1hr)

This round focused on Data Structures and Algorithms.

3. DSA | Virtual F2F (1hr)

Another DSA round, followed by some Java-based questions.

4. DSA | Virtual F2F (1hr)

This round continued with DSA problems and some general work-related questions.

5. DSA + SD | Virtual F2F (1.5hr)

This was a mixed round, covering both Data Structures & Algorithms and System Design.

For the Alien Dictionary problem, I wrote incomplete code due to time constraints, but I was able to explain my approach and cover the edge cases to the interviewer.

6. DSA + SD - Virtual F2F (1hr)

This round again combined DSA and System Design. The interviewer asked for various approaches to solve the problem and we also discussed merging sorted lists online.

7. Hiring Manager - Virtual F2F (30mins)

This final round was non-technical. We discussed my ongoing projects, development lifecycle experiences, and my motivations for wanting to join Goldman Sachs.

I was pleased to receive an offer one week after completing my interviews.

Interview Questions (10)

Q1
Unique Paths
Data Structures & AlgorithmsMedium

A classic dynamic programming problem where you need to find the number of unique paths a robot can take to reach the bottom-right corner of a grid, starting from the top-left corner, only being able to move down or right.

Q2
Minimum Path Sum
Data Structures & AlgorithmsMedium

Given a m x n grid filled with non-negative numbers, find a path from top left to bottom right, which minimizes the sum of all numbers along its path. You can only move either down or right at any point in time.

Q3
House Robber
Data Structures & AlgorithmsMedium

You are a professional robber planning to rob houses along a street. Each house has a certain amount of money stashed, the only constraint stopping you from robbing each of them is that adjacent houses have security systems connected and it will automatically contact the police if two adjacent houses were broken into on the same night. Given an integer array nums representing the amount of money of each house, return the maximum amount of money you can rob tonight without alerting the police.

Q4
Group Anagrams
Data Structures & AlgorithmsMedium

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.

Q5
Design API Rate Limiter
System Design

Design an API rate limiter system. This involves discussing high-level design (HLD) aspects such as choosing appropriate data structures, synchronization mechanisms, and handling distributed environments.

Q6
Design Patterns and Java Code
Other

I was asked about the applications of Decorator, Dependency Injection, and other design patterns. The interviewer required me to write sample Java code for each pattern to demonstrate understanding.

Q7
Alien Dictionary
Data Structures & AlgorithmsHard

There is a new alien language which uses the English alphabet. However, the order among letters are unknown to you. You are given a list of words from the alien language's dictionary, where the words are sorted lexicographically by the rules of this new language. Deduce the order of the letters in this language.

Q8
Merge k Sorted Lists
Data Structures & AlgorithmsHard

Merge k sorted linked lists into one sorted linked list. I was asked to discuss various approaches to solve this problem, and we also explored a scenario for merging sorted lists online (stream processing).

Q9
Design Job Scheduler
System Design

Design a Job Scheduler using message queues. This involves high-level design (HLD) considerations, including how jobs are queued, processed, and distributed, and how message queues facilitate this process.

Q10
Behavioral Questions (Hiring Manager)
Behavioral

The hiring manager round involved discussions about my ongoing projects, development lifecycle experiences, and my motivations for wanting to join Goldman Sachs. This was a non-technical assessment of my fit with the team and company culture.

Goldman Sachs | Full time Analyst | Bangalore | Apr 2021 [Offer]
goldman sachs logo
Goldman Sachs
full time analystbangalore1.5 yearsOffer
May 23, 202114 reads

Summary

I successfully navigated the Goldman Sachs interview process for a Full Time Analyst role in Bangalore and ultimately received an offer. The experience included an online assessment and several technical rounds, culminating in a managerial discussion.

Full Experience

My Goldman Sachs Interview Journey

Hi, I recently cleared the Goldman Sachs interview for a Full Time Analyst position in Bangalore. My journey began in February 2021 when I received a call from their recruiter. I have about 1.5 years of experience.

Round 1: Online Assessment (HackerRank)

This round consisted of two medium-level LeetCode problems. While I don't recall the exact problems, one was based on priority queues, and the other was a dynamic programming problem.

Round 2: CoderPad Round

After a brief discussion about my past experience, the interviewer moved directly to CoderPad, a collaborative coding platform. I was given two questions:

  1. A problem similar to Shortest Path in Binary Matrix, but with some modifications.
  2. Another problem involved string manipulation. The key here was ensuring all test cases passed.

After about a month, the recruiter scheduled three technical rounds for me on the same day.

Round 3: Technical-1

This round started with introductions, and then I explained my current project. Following this, I was given an easy dynamic programming problem, which I completed quickly. The interviewer then presented a backtracking problem, and we only discussed the approach.

Round 4: Technical-2

Similar to the previous round, this one began with introductions and a discussion about one of my projects. The interviewer then gave me a problem on topological sorting, specifically Course Schedule. After solving that, we had a long discussion on a probability question.

Round 5: Technical-3

Following the usual introduction and project discussion, I was asked to solve a dynamic programming problem, Minimum Cost For Tickets. The second problem required me to find the k-th lexicographically ordered string for a given input string.

Round 6: Managerial (V.P.)

This round primarily involved discussions about my projects and some behavioral questions.

Final Verdict: I received an offer! The overall interview experience was very positive, as the interviewers were helpful and polite throughout the process.

Interview Questions (4)

Q1
Shortest Path in Binary Matrix (Modified)
Data Structures & AlgorithmsMedium

I was given a problem similar to 'Shortest Path in Binary Matrix' but with slight modifications. The goal was to find the shortest path from a starting cell to a target cell in a binary matrix, where 0 represents an open path and 1 represents a blocked path. The interviewer emphasized that all given test cases should pass.

Q2
Course Schedule
Data Structures & AlgorithmsMedium

I was asked a problem on topological sorting, specifically the 'Course Schedule' problem. The task was to determine if it's possible to finish all courses given a list of prerequisites.

Q3
Minimum Cost For Tickets
Data Structures & AlgorithmsMedium

I was presented with a dynamic programming problem, 'Minimum Cost For Tickets'. The problem involves finding the minimum cost to travel on certain days given different ticket options (1-day, 7-day, 30-day passes).

Q4
Kth Lexicographically Ordered String
Data Structures & Algorithms

The second problem was to find the k-th lexicographically ordered string that can be formed from a given input string. This typically involves permutations or combinations.

Goldman Sachs Associate | 3+ Years Experience | Offer
goldman sachs logo
Goldman Sachs
AssociateBangalore3 yearsOffer
February 17, 202119 reads

Summary

I successfully secured an offer for an Associate position at Goldman Sachs after completing a rigorous interview process spanning an online coding round and five subsequent technical and managerial interviews.

Full Experience

My interview process for the Associate role at Goldman Sachs was quite thorough, unfolding over approximately 2-2.5 months. It began with an online coding round on Hackerrank, where I tackled two easy coding questions within 120 minutes. After clearing this, my resume was shortlisted for further rounds.

Round 1 (Coderpad + Voice Call)

This round involved two easy-medium level questions on Coderpad. I had to write complete runnable code and pass all test cases.

  1. Minimum Distance Between Two Words with Middle Character Definition: I was given a string and two words within it, and I needed to find the minimum distance between them. The distance was uniquely defined as the number of characters between the middle characters of the two words. An existing brute-force implementation with logical bugs was provided, and my task was to identify and fix these bugs, then add new test cases and implement code for them.
  2. Minimum Path Sum: I was asked to solve the classic 'Minimum Path Sum' problem.

Rounds 2-6 (Zoom Video Call + Coderpad)

These rounds were conducted on the same day, each lasting about 60-70 minutes.

Round 2 (DSA)

After a quick introduction, we delved into data structures and algorithms.

  1. Array Difference (with Occurrences): I was given two unsorted arrays and asked to find (arr1 – arr2) and (arr2 – arr1). The difference was defined as all elements from the first array not present in the second, critically considering the number of occurrences. For example, if arr1 = [3, 5, 2, 7, 4, 2, 7] and arr2 = [1, 7, 5, 2, 2, 9], then arr1 - arr2 = [3, 7, 4] and arr2 - arr1 = [1, 7].
  2. H-Index: I had to calculate the h-index for a given array of citations.
  3. H-Index II: This was a follow-up, asking for the h-index from a sorted array of citations.
  4. H-Index from Data Stream: The next follow-up involved calculating the h-index from a continuous stream of citations after each new input.

Round 3 (DSA, Projects)

This round involved a detailed discussion about the projects I had worked on, including technologies and design patterns used.

  1. Balance a Binary Search Tree: I was asked to balance an imbalanced BST, returning a balanced version with the same node values.
  2. Maximum Number of Events That Can Be Attended: This problem involved finding the maximum number of events that could be attended given a list of events with start and end days.
  3. Numeric Puzzle: ABCD * 4 = DCBA: I was presented with a puzzle to find the values of A and D for a 4-digit number ABCD such that ABCD * 4 equals DCBA.

Round 4 (Java, Design)

This round began with an introduction and technical discussion about my most recent project.

  1. HashMap Internal Working: I had to explain the internal working mechanism of a HashMap.
  2. JVM Architecture: I discussed the architecture of the Java Virtual Machine.
  3. Java vs. Other OOP Languages: I explained how Java differs from other object-oriented programming languages.
  4. Java Garbage Collector Details: We had a detailed discussion on the Java Garbage Collector.
  5. Relational Database Design: I was asked to design a relational database and explain the data structures I would use in its implementation.

Round 5 (Hiring Manager)

This was a hiring manager round.

  1. Design a Garbage Collector: I was asked about how I would design a garbage collector if given the task.
  2. Wrapper Class in Java: I explained what a wrapper class is and why it is needed in Java.
  3. Type Erasure in Java: I also elaborated on type erasure in Java and its purpose.
  4. Reason for Leaving Current Organization: I discussed my reasons for wanting to leave my current role.
  5. Why Goldman Sachs?: I articulated my motivations for joining Goldman Sachs.
The interviewer also explained my potential role within the team. Overall, the interview experience was smooth and very well-arranged. It was a comprehensive process that led to an offer for the Associate position.

Interview Questions (20)

Q1
String Encoding-Decoding with Counts
Data Structures & AlgorithmsMedium

Given a string, encode and decode it. For example, input: "AABC", output: "A2B1C1". Decoded back to the original string. Follow up: What if the characters are numbers? "123" should output "112131". Follow up: What if the string is mixed with characters and numbers? "A1B2" should output "A111B121".

Q2
Minimum Distance Between Two Words with Middle Character Definition
Data Structures & AlgorithmsMedium

Given a string and two words (which occur in the given string), find the minimum distance between them. The distance is defined as the number of characters between the middle characters of the two words. I was provided with a brute-force implementation containing logical bugs, and my task was to identify and fix these bugs, add new test cases, and write code for them.

Q3
Minimum Path Sum
Data Structures & AlgorithmsMedium

Given an m x n grid filled with non-negative numbers, find a path from top left to bottom right which minimizes the sum of all numbers along its path. You can only move either down or right at any point in time.

Q4
Array Difference (with Occurrences)
Data Structures & AlgorithmsMedium

Given two unsorted arrays, arr1 and arr2, find the difference (arr1 - arr2) and (arr2 - arr1). The difference (A - B) is defined as all elements from array A that are not present in array B, considering the number of occurrences. For example, if arr1 = [3, 5, 2, 7, 4, 2, 7] and arr2 = [1, 7, 5, 2, 2, 9], then arr1 - arr2 = [3, 7, 4] and arr2 - arr1 = [1, 7].

Q5
H-Index
Data Structures & AlgorithmsMedium

Given an array of integers citations where citations[i] is the number of citations a researcher has had for their ith paper, return the researcher's h-index.

Q6
H-Index II
Data Structures & AlgorithmsMedium

Given an array of integers citations where citations[i] is the number of citations a researcher has had for their ith paper, return the researcher's h-index. Your algorithm should run in O(log n) time.

Q7
H-Index from Data Stream
Data Structures & AlgorithmsHard

Given a continuous stream of citations, calculate the h-index after each new input.

Q8
Balance a Binary Search Tree
Data Structures & AlgorithmsMedium

Given the root of a binary search tree, return a balanced binary search tree with the same node values. If there is more than one answer, return any of them.

Q9
Maximum Number of Events That Can Be Attended
Data Structures & AlgorithmsMedium

You are given an array of events where events[i] = [startDayi, endDayi]. Every event i can be attended on any day from startDayi to endDayi (inclusive). You can only attend one event at a time. Return the maximum number of events you can attend.

Q10
Numeric Puzzle: ABCD * 4 = DCBA
OtherEasy

Given a 4-digit number ABCD, where ABCD * 4 equals DCBA (the reversed number), find the values of digits A and D.

Q11
HashMap Internal Working
Other

Explain the internal working mechanism of a HashMap.

Q12
JVM Architecture
Other

Describe the architecture of the Java Virtual Machine (JVM).

Q13
Java vs. Other OOP Languages
Other

Discuss the key differences between Java and other object-oriented programming languages.

Q14
Java Garbage Collector Details
Other

Provide a detailed discussion on the Java Garbage Collector.

Q15
Relational Database Design
System Design

How would you design a relational database, and which data structures would you use in its implementation?

Q16
Design a Garbage Collector
System Design

If tasked with designing a garbage collector, how would you approach its design?

Q17
Wrapper Class in Java
Other

Explain what a wrapper class is and why it is needed in Java.

Q18
Type Erasure in Java
Other

Explain what type erasure is in Java and its purpose.

Q19
Reason for Leaving Current Organization
Behavioral

What are your reasons for seeking to leave your current organization?

Q20
Why Goldman Sachs?
Behavioral

Why are you interested in joining Goldman Sachs?

Goldman Sachs | Associate SWE | Dallas, TX | Dec 2020 [Offer]
goldman sachs logo
Goldman Sachs
Associate SWEDallas, TX3 yearsOffer
December 22, 202043 reads

Summary

I interviewed for an Associate SWE role at Goldman Sachs in Dallas, TX, in December 2020. I successfully navigated phone and on-site rounds, ultimately receiving an offer. However, I decided to reject the offer in favor of another opportunity with a better work-life balance.

Full Experience

Phone Screen (1 hour)

My phone screen was conducted via Coderpad and lasted one hour. It included two coding questions and some behavioral questions.

  • The first coding question was a simpler version of the High Five problem, where I had to process a list of [Student name, Grade] and return the highest average.
  • I didn't get to finish the second coding question, as we needed to allocate time for behavioral questions and my own questions for the interviewer.
  • For behavioral questions, I was asked: "How would you deal with a teammate who doesn't do much while working with you on a story, but takes all the credit?"

Virtual On-site (3 x 45-minute rounds)

The virtual on-site consisted of three 45-minute rounds.

System Design Round

This round focused on system design and distributed systems concepts.

  • I was tasked with designing a system for students registering for classes.
  • We also discussed Kafka, specifically "What is it?" and "How to handle a producer that is working too quickly for the consumer?"

SDLC Round

This round was more of a conversational style, aiming to understand my experience with software development processes.

  • The interviewer asked about my experience with Agile methodologies.
  • We discussed my previous SDLC experiences.
  • I was asked what I had done to improve my team's processes.
  • Another question involved my approach to debugging a bug found by QA. This round felt more like a dialogue to gauge my practical experience rather than seeking definitive right or wrong answers.

Coding Round

The final round was a coding assessment.

  • I was given two coding questions.
  • One of them involved an in-place array sort.
  • The interviewers initially requested pseudocode but frequently asked for specific sections to be written in actual code.

After the interviews, I received an offer of 120k base + 20k bonus. Initially, they mentioned the offer could be either 85k+20k (Analyst) or 100k+20k (Associate). My Associate offer was a counter to another offer I had. I ultimately rejected the Goldman Sachs offer due to concerns about the poor Work-Life Balance, opting for a lower offer elsewhere that promised a better WLB.

Interview Questions (9)

Q1
Calculate Highest Average Grade
Data Structures & Algorithms

Given a list of [Student name, Grade], return the highest average. This is described as a simpler version of LeetCode's High Five problem.

Q2
Handling Underperforming Teammate
Behavioral

How would you deal with a teammate who doesn't contribute much while working with you on a story but takes all the credit?

Q3
Design Class Registration System
System Design

Design a system for students registering for classes.

Q4
Kafka Concepts and Backpressure
System Design

Explain what Kafka is and how to handle a producer that is working too quickly for the consumer (backpressure).

Q5
Agile Experience
Behavioral

What is your experience with Agile?

Q6
Previous SDLC Experience
Behavioral

What was your previous Software Development Life Cycle (SDLC) experience?

Q7
Improving Team Process
Behavioral

What have you done to improve your team's process?

Q8
Debugging a QA-Found Bug
Behavioral

How would you go about debugging a bug found by Quality Assurance (QA)?

Q9
In-Place Array Sort
Data Structures & Algorithms

A coding question asking to implement an in-place array sort. The interviewer primarily sought pseudocode but frequently asked for specific parts to be written as actual code.

Goldman Sachs | SDE(Analyst) | Bangalore | [Offer]
goldman sachs logo
Goldman Sachs
SDE (Analyst)Bangalore1.5 yearsOffer
November 13, 202021 reads

Summary

I interviewed for an SDE (Analyst) role at Goldman Sachs in Bangalore. After a lengthy 5-6 month process involving 7 rounds, which included technical coding, discussion, and CS fundamentals, I successfully received an offer.

Full Experience

My journey began with a referral from a friend at Goldman Sachs. With 1.5 years of experience at a customer-based company and a B.Tech + M.S. in CS from a Tier-1 college, I was applying for an SDE (Analyst) position. The entire interview process was quite extensive, stretching over 5-6 months and comprising 7 distinct rounds, mostly conducted over Zoom.

Round 1: HackerRank (1.5 hrs)

This was an online coding round with two questions. I quickly solved both within 15-20 minutes:
  • An easy mathematical formula-based problem (too vague to extract).
  • A medium DP-based problem to find the total increasing subsequences of a given size 'k'.

Round 2: Coderpad + Telephonic (1 hr)

This round also had two questions, and I cleared both with all test cases within the allotted time:
  • Maximum Water Trap: I solved this using a stack, though I later learned there was an easier two-pointer approach.
  • Maximum Tree Size in a Forest: Given a set of disjoint graphs, I had to find the graph with the maximum number of nodes. I used BFS on all nodes while keeping track of visited ones.
We also discussed work-life and other aspects of Goldman Sachs.

Round 3: Face2Face over Zoom (1 hr)

Two interviewers asked a total of four questions. I wasn't asked to code but had thorough discussions on each, including complexities and relevant data structures:
  • Sorting with Limited APIs: Sort an array using only two provided APIs: one to get the index of the maximum element, and another to reverse the array from index 0 to `i`.
  • O(1) Min in Stream: Implement a data structure to get the minimum element in O(1) time, allowing push and pop operations. I used a stack of pairs to track the minimum.
  • K Stacks in One Array: Create 'k' stacks using a single array of a specific size. This took some time and hints to find the best solution.
  • Tree Validation: Check if a given structure is a valid tree, including checks for back-edges and cycles.
I felt this round went 'good', maybe a bit below due to the third question.

Round 4: Face2Face over Zoom (1 hr)

Again, two interviewers. After a brief intro about their team and my work, they asked three questions. I wasn't asked to write code but was confident I could if needed:
  • Limited Size Transaction Queue: A variation of a limited-size queue to process transactions within a time limit. I used a normal queue approach, and while a circular queue was hinted at, my solution was satisfactory.
  • LRU Cache: The problem was posed differently but through discussion, it was identified as a standard LRU cache design problem.
  • Search in Rotated Sorted Array: Search for an element in a sorted but rotated array. I explained the standard binary search approach with tweaks for rotation and convinced the interviewer with dry runs and test cases.
This round went very well, making me positive about proceeding further.

There was a long wait of 3 months after this round.

Round 5: Face2Face over Zoom (1 hr)

Two interviewers, starting with brief introductions. This round involved coding questions followed by CS fundamentals:
  • O(1) Insert, Remove, GetRandom: Design a data structure for O(1) insert, remove, and `getRandom()`. I used a map to store values and their indices in an array, and `rand()%size_of_array` for random access. I coded this part.
  • First Unique Character (with Multithreading Follow-up): Find the first unique character in a string. I solved both the simple and multithreaded (discussion only) approaches.
After the coding, the other interviewer delved into various CS subjects:
  • Types of storage in C++.
  • `Integer` vs `int` in Java.
  • Understanding memory leaks and their occurrence (stack or heap).
  • TCP vs UDP.
  • Debuggers and their usefulness.
  • Garbage collection.
We also had an in-depth discussion about my projects. Overall, this round was good, though I wasn't highly confident in some of the CS questions. The interviewers were very friendly and helpful.

Round 6: Face2Face over Zoom (1 hr)

This round was with two interviewers from London and New York. After discussing my work and tech stack, they asked why I was transitioning from a research profile to an SDE/Analyst role. We covered two main questions, and I was asked to code one:
  • Unique Paths (with Diagonal Follow-up): Calculate unique paths from top-left to bottom-right, allowing down/right movement. I discussed DP with O(m*n) and space-optimized O(n) solutions. The follow-up extended to allowing diagonal-down movement, which I also approached with standard and space-optimized methods.
  • XOR of All Bits of a Number: Find the XOR of all bits of a number. I presented an O(n) approach (n: number of bits). The interviewer challenged me to optimize it, hinting at an O(log n) solution which I couldn't come up with. The discussion on my tree approach for this question seemed to confuse the interviewer, and I later realized it was still O(n). There's a trick to this one that I hadn't encountered before.
They also shared insights about the global team and the analyst role's expectations.

Round 7: Special Offline Exercise (3 hrs)

This was a take-home assignment given to be solved and submitted within three hours. It focused on evaluating my OOP knowledge, code quality, test case writing, handling edge cases, and choice of optimized data structures. I also had to provide a README and descriptions of different code parts. This was a general assessment, not a specific question to extract.

Overall, it was a very tiring and stretched interview process, but receiving the offer made it all feel worthwhile.

Interview Questions (21)

Q1
Total Increasing Subsequences of Size K
Data Structures & AlgorithmsMedium

Find the total number of increasing subsequences of a given size 'k' in an array.

Q2
Trapping Rain Water
Data Structures & Algorithms

Given n non-negative integers representing an elevation map where the width of each bar is 1, compute how much water it can trap after raining.

Q3
Maximum Tree Size in a Forest
Data Structures & Algorithms

Given a set of disjoint graphs (a forest), find the graph with the maximum number of nodes. Return the size of this maximum graph.

Q4
Sort Array with Max Index and Reverse APIs
Data Structures & Algorithms

Given an array and two specific APIs: 1. getMaxIndex() which returns the index of the maximum element in the array, and 2. reverse(i) which reverses the array from index 0 to i. Sort the array using only these provided APIs.

Q5
Min Stack in O(1)
Data Structures & Algorithms

Design a data structure that supports push, pop, and getMin operations, all in O(1) time. The getMin operation should retrieve the minimum element currently in the stack.

Q6
Implement K Stacks in a Single Array
Data Structures & Algorithms

Implement 'k' stacks using a single, fixed-size array efficiently.

Q7
Validate a Tree
Data Structures & Algorithms

Determine if a given graph structure is a valid tree. This involves checking for properties such as connectivity, absence of cycles (e.g., no back-edges), and ensuring there are N-1 edges for N nodes if it's connected.

Q8
Limited Size Transaction Queue with Time Limit
Data Structures & Algorithms

Design a queue that has a limited capacity and is used to process transactions within a specific time limit. The problem implicitly involves managing transactions that might expire or need prioritization based on time.

Q9
LRU Cache Design
System Design

Design and implement a Least Recently Used (LRU) cache. The problem was presented in a somewhat abstract way initially, but through discussion, it was clarified to be a classic LRU cache design problem.

Q10
Search in Rotated Sorted Array
Data Structures & Algorithms

Search for a target element in a sorted array that has been rotated at an unknown pivot point. The array remains sorted in two halves.

Q11
Data Structure for O(1) Insert, Remove, GetRandom
Data Structures & Algorithms

Design a data structure that supports the following operations in average O(1) time: insert(val), remove(val), and getRandom() (which returns a random element from the current set).

Q12
First Unique Character in a String (with Multithreading Follow-up)
Data Structures & Algorithms

Find the index of the first non-repeating character in a string. The follow-up involved discussing how to handle a very long string using multithreading to optimize the search.

Q13
C++ Storage Types
Other

Discuss the different types of storage classes in C++ (e.g., automatic, static, extern, register), their scopes, lifetimes, and linkage.

Q14
Integer vs int in Java
Other

Explain the fundamental differences between the Integer wrapper class and the int primitive type in Java, including their memory usage, autoboxing/unboxing, and nullability.

Q15
What is a Memory Leak?
Other

Define what a memory leak is in the context of programming and system resources.

Q16
Memory Leak Location (Stack vs Heap)
Other

Clarify where memory leaks typically occur: in the stack or in the heap memory segment, and explain why.

Q17
TCP vs UDP
Other

Compare and contrast the Transmission Control Protocol (TCP) and User Datagram Protocol (UDP), highlighting their key differences in reliability, connection-orientation, speed, and use cases.

Q18
Debuggers and Their Utility
Other

Explain what debuggers are, how they work, and their importance and utility in the software development and troubleshooting process.

Q19
Garbage Collection
Other

Describe the concept of garbage collection in programming languages, its purpose, and how it helps manage memory automatically.

Q20
Unique Paths (with Diagonal Movement Follow-up)
Data Structures & Algorithms

Calculate the number of unique paths from the top-left corner to the bottom-right corner of a grid, initially allowing only down and right movements. The follow-up extended this to also allow diagonally down movement, requiring both standard and space-optimized DP approaches.

Q21
XOR of All Bits of a Number
Data Structures & Algorithms

Find the XOR sum of all the individual bits of a given number. Initially, I discussed an O(n) complexity approach where 'n' is the number of bits. The interviewer then asked for an optimized solution, hinting at O(log n) complexity.

Goldman Sachs | Software Engineer (Analyst) | Bangalore, India | August-September 2020 | Selected
goldman sachs logo
Goldman Sachs
Software Engineer (Analyst)Bangalore, India2 yearsOffer
October 1, 202029 reads

Summary

I was interviewed at Goldman Sachs for a Software Engineer (Analyst) role in Bangalore, India, and successfully received an offer after a comprehensive six-round interview process that included coding, system design, and behavioral questions.

Full Experience

I secured an interview opportunity at Goldman Sachs through a referral, holding two years of experience as a Software Engineer in an MNC.

Round 1: Hackerrank Coding Round (2 Hours)

The HR team contacted me to outline the interview process. I received a HackerRank test link via email and was given three days to complete it. This two-hour assessment featured two coding questions, both ranging from easy to medium difficulty. One involved a matrix problem, and the other was a well-known Dynamic Programming question. Having encountered these problems previously, I managed to solve both.

Round 2: Coder Pad Round (1 Hour)

After clearing the HackerRank round, HR scheduled a CoderPad session. This was a one-hour live coding round, where I was expected to write code in front of the interviewer, with Java as the default language. The questions were again LeetCode easy-medium level, and I quickly solved them as I had seen them multiple times before.

Round 3: Video Conference Round (1 Hour)

HR informed me about the subsequent three video conference rounds, which were scheduled for a weekend, giving me ten days to prepare. The interviews were conducted via Zoom, with links to both Zoom and CoderPad shared in advance. This round had two interviewers who were very friendly. We started with introductions, and then they posed two easy-medium level coding questions. I had to explain my solution, time, and space complexities, and write clean, production-level code. The interview concluded with me asking about their experiences at Goldman Sachs.

Round 4: Video Conference Round (1 Hour 15 Min)

This round, led by a VP and an associate-level interviewer, focused heavily on Java, Spring Boot, and my project experience. I answered questions on project details, design choices, the internal workings of HashMap, Spring-specific scenarios, Java Streams, lambda expressions, and garbage collection mechanisms. I ended the interview by asking about their professional journeys at Goldman Sachs.

Round 5: Video Conference Round (1 Hour)

The interviewers in this round were very congenial. We began with a casual discussion about working from home before diving into core Java and coding questions. This round was quite intensive, involving detailed discussions on data structures, multithreading scenarios, and database concepts.

Round 6: Hiring Manager Round (30 Min)

After receiving positive feedback, HR advanced my candidature to the Hiring Manager. This thirty-minute round included introductions from both sides, questions about my motivation for leaving my current role, challenges faced in my projects, technologies I've worked with, and how I keep up-to-date with new tech. I utilized the opportunity to ask about his experiences and my potential roles and responsibilities at GS. He advised me to always give my best and continue learning new things.

A week later, HR confirmed my selection and requested documents for compensation details.

Interview Questions (28)

Q1
Decode Ways
Data Structures & AlgorithmsMedium

Given a coded message as a string of digits, I had to return the number of ways it can be decoded. Each digit corresponds to a letter (A=1, B=2, ..., Z=26).

Q2
Positional Elements in a Matrix
Data Structures & AlgorithmsEasy

I was asked to find the number of positional elements in a given matrix. A positional element is defined as an element that is either the minimum or maximum in its row or its column.

Q3
First Non-Repeating Character in a String
Data Structures & AlgorithmsEasy

Given a string, I needed to find and return the first non-repeating character. A HashMap approach was suggested and accepted.

Q4
Maximum Path Sum in a Grid (O(1) Space)
Data Structures & AlgorithmsMedium

I was asked to find the maximum path sum from a source index (n-1,0) to a destination index (0,m-1) in a grid. This is a standard dynamic programming problem, and I was specifically asked to solve it using O(1) extra space, which I achieved by modifying the input matrix itself.

Q5
Next Greater Permutation
Data Structures & AlgorithmsMedium

Given a number represented as a string, I had to find and return the next lexicographically greater permutation of its digits. For example, if the input is '12345', the output should be '12354'.

Q6
Minimum Absolute Difference Between Two Arrays
Data Structures & AlgorithmsEasy

Given two arrays, I needed to find two elements, one from each array, such that their absolute difference is minimized.

Q7
Project Explanation
Behavioral

I had to explain my project in detail.

Q8
Architectural Design Choices
System Design

I was asked to justify specific design choices in my project, explaining why a particular module was implemented in one way over another.

Q9
Internal Working of HashMap
Data Structures & Algorithms

I was questioned on the internal working mechanisms of Java's HashMap, including collision resolution, resizing, and performance characteristics, along with follow-up questions.

Q10
Spring Component Scanning
Other

A Spring-based question was posed: 'What happens when we place our component classes in a package different from the one containing the @SpringBootApplication annotation?'

Q11
Runtime Dependency Switching with Spring
Other

I was asked how to switch a dependency at runtime using annotations. Specifically, if Class A depends on Class B and Class C, and initially uses Class B for data fetching, how can Class A be configured to use Class C instead of Class B at runtime, solely using annotations?

Q12
Java Streams and Lambda Expressions
Other

I was asked questions related to Java Streams API and lambda expressions, focusing on common operations such as map, filter, and forEach.

Q13
Java Garbage Collector
Other

Questions about the Java Garbage Collector were asked, including its purpose, how it's typically invoked, and the implications of explicitly calling it from a program.

Q14
Set vs. List & Set Implementations
Data Structures & Algorithms

I was asked to differentiate between Set and List interfaces in Java, discuss various types of Set implementations (e.g., HashSet, TreeSet, LinkedHashSet), and explain their internal workings.

Q15
First Non-Repeating Character in Large String (Single Traversal)
Data Structures & AlgorithmsMedium

Given an extremely large string, I had to find the first non-repeating character in a single traversal. My approach involved using a HashMap (frequency map) to store characters and their first indices.

Q16
First Non-Repeating Character in Extremely Large String (Multithreaded)
Data Structures & AlgorithmsHard

A modification to the previous question: for an extremely large string, find the first non-repeating character using multi-threading. Initially, I suggested synchronized blocks and semaphores, but the interviewer sought an approach that avoids sequential bottlenecks. I then proposed using a ConcurrentHashMap where locks apply only to internal segments, which was accepted.

Q17
First Non-Repeating Character (Multithreaded, No Shared Resources)
Data Structures & AlgorithmsHard

Further modification to the non-repeating character problem: solve it multithreaded without using any shared resources. My answer involved using Callable tasks instead of Runnable, where each task processes a segment of the string and returns its local frequency map as a Future object. These individual maps would then be processed to find the overall first non-repeating character.

Q18
Words by Increasing Frequency
Data Structures & AlgorithmsMedium

Given a string containing words, I needed to print these words in increasing order of their frequency.

Q19
Remove 3 Consecutive Identical Elements from Array
Data Structures & AlgorithmsMedium

Given an array, I was asked to write a function that removes any sequences of three or more consecutive identical elements. For example, Input: 1 2 2 3 3 3 2 5, Output: 1 5. I solved this using a stack approach.

Q20
Generate Customer Transaction Report from Sorted Lists
Data Structures & AlgorithmsEasy

Given two sorted lists, a Transaction List and a Customer List (both sorted by Customer ID), I needed to write a function to generate a report showing Customer ID, customer name, and the total amount spent by each customer, using a single traversal.

Q21
SQL Query for Customer Transaction Report
OtherEasy

As a follow-up to the previous question, if Transaction and Customer data were in SQL tables instead of lists, I had to write an SQL query to generate the same report (Customer ID, customer name, total amount spent by each customer).

Q22
Database Performance Improvement (Indexes)
System DesignEasy

A follow-up to the SQL query question, asking how to improve its performance. I suggested using indexes. The interviewer then asked about types of indexes, to which I replied with clustered indexes for primary keys and non-clustered indexes for non-primary keys, which satisfied him.

Q23
Self-Introduction
Behavioral

I was asked to give a brief introduction about myself.

Q24
Reason for Leaving Current Company
Behavioral

I was asked about my motivations for seeking a new opportunity and why I wanted to leave my current company.

Q25
Challenges Faced in Current Project
Behavioral

The interviewer inquired about the challenges I encountered in my current project.

Q26
Technologies Worked On
Behavioral

I was asked to elaborate on the technologies I have experience with.

Q27
Staying Updated with Technologies
Behavioral

The interviewer asked about my methods for staying current with new technologies and industry trends.

Q28
Candidate Questions for Interviewer
Behavioral

I was given an opportunity to ask questions to the Hiring Manager.

Preparation Tips

LeetCode was an invaluable resource for my interview preparation. I utilized a premium subscription, focusing on mock interviews for companies like Amazon and Microsoft, and found the company-specific question sets particularly helpful. I dedicated 3-4 months to preparation during the COVID-19 pandemic, solving 372 LeetCode questions, primarily focusing on Medium and Hard difficulty levels. Additionally, reading other LeetCode interview experiences helped me identify frequently asked questions for various companies. I also meticulously prepared notes on my resume projects and work experiences, and practiced scenario-based questions.

Tips for the Interview:

  • Thoroughly understand all applications and projects you've worked on, end-to-end.
  • Only mention projects and technologies on your resume that you are confident discussing in depth.
  • Be prepared for enhancement questions, such as how a design could be improved.
  • Communicate your thought process clearly during the interview, even if you're struggling to find a solution.
  • Conclude the interview by asking the interviewers about their experiences at the company.
  • Never speak negatively about your current company or manager.
Goldman Sachs | Engineering | Summer Analyst | India | August 2020 [Offer]
goldman sachs logo
Goldman Sachs
Summer AnalystIndiaOffer
August 23, 202020 reads

Summary

I interviewed for a Summer Analyst position at Goldman Sachs in August 2020. After an online assessment, I had two technical interviews focusing on data structures, algorithms, and project discussions. I successfully received an offer.

Full Experience

I interviewed for a Summer Analyst position at Goldman Sachs in August 2020. I am currently a student at an IIT in India, and this was an on-campus opportunity.

Round 1: Online Assessment Test

The online assessment had 5 mandatory sections and lasted 2 hours 15 minutes. It included:

  • Coding section: 2 programming questions (30 mins)
  • Computer Science MCQs: 7 questions (20 mins)
  • Quantitative Aptitude MCQs: 8 questions (25 mins)
  • Advanced Programming: 1 programming question (45 mins)
  • Subjective section: 2 questions (15 mins)

Each MCQ earned 5 marks for a correct answer and -2 for an incorrect one. To be shortlisted, I needed to clear the cutoff in at least three sections, including a CGPA consideration. I performed well in both multiple-choice sections and solved one question in the coding section. The subjective section included questions about what inspires me to complete a project and how I would handle a teammate having problems on a project. I'm fairly certain I cleared the cutoff in both MCQs and likely the subjective section.

Round 2: Technical Interview 1

This round started with a brief introduction, after which the interviewer asked me to describe one of my projects. The discussion, lasting about 10-15 minutes, focused more on my inspiration and the practical application of the project rather than deep technical details. He seemed really impressed.

Next, he asked me about data structures and algorithms I found useful or elegant. I mentioned segment trees for range queries, giving the example of finding the Lowest Common Ancestor (LCA) in a binary tree. This led to a specific problem related to LCA.

I presented the Euler traversal approach combined with a segment tree, which allows O(N) preprocessing and O(logN) query time for each LCA. He asked me to implement the solution and explain the process with a dry run using an example binary tree. I wrote the DFS code and explained how the euler, depth, and first_time arrays would be populated, which satisfied him.


void dfs(int k,int d)
{	
	first_time[k]=timer;
	euler[timer++]=k;
	depth[k]=d;
	vis[k]=1;
for(int i=0;i<adj[k].size();i++)
{
	if(!vis[adj[k][i]])
	{
		dfs(adj[k][i],d+1);
		euler[timer++]=k;
	}
}

}

I then explained how I would build the segment tree to find the node with the minimum depth in any given segment, making each LCA query (of a and b) a simple query on the segment {first_time[a], first_time[b]}. The interviewer was really impressed but surprisingly asked for further optimization. I suggested using a sparse table instead of a segment tree, trading off preprocessing time for O(1) query time (O(N logN) preprocessing). He still pushed for more optimization, which I found challenging after reaching O(1) query time.

Round 3: Technical Interview 2

This round also began with a 10-15 minute discussion on the same project, covering its functionality and similar points as the previous interview.

Following the project discussion, he posed two more questions related to number manipulation and scheduling.

For the 'next smallest number' problem, I proposed a solution involving a queue. For the 'minimum platforms' problem, I initially suggested an O(N logN) solution using two pointers after sorting. When prompted for a data structure, I adapted it to use a double queue.

Finally, I received the offer!

Interview Questions (3)

Q1
LCA of K Nodes in a Binary Tree
Data Structures & Algorithms

Given k nodes in a binary tree, find their lowest common ancestor (LCA).

Q2
Next Permutation (Next Smallest Number with Same Digits)
Data Structures & Algorithms

Given a number, find out the next smallest number formed by the same digits, greater than the original number.

Q3
Minimum Platforms for Train Station
Data Structures & Algorithms

Given the schedule of a train station (the arrival and departure time of several trains), find the minimum number of platforms required at the station.

Preparation Tips

My preparation involved a strong focus on data structures and algorithms. I practiced problem-solving, which helped me not only develop solutions but also articulate my thought process clearly during the interviews. Additionally, I spent time thoroughly understanding and being able to discuss my personal projects, especially their inspiration, practical applications, and high-level design.

Goldman sachs Internship interview experience-2020
goldman sachs logo
Goldman Sachs
InternshipRejected
August 23, 202019 reads

Summary

I interviewed for a Software Engineering Internship at Goldman Sachs in 2020. The process included an online assessment, followed by two technical interviews where I discussed projects and solved various coding and logic problems. Ultimately, I was rejected.

Full Experience

As a pre-final year student from IIT(ISM) Dhanbad, I want to share my Goldman Sachs internship interview experience from 2020.

First Round: Online Test

This round consisted of two easy coding questions, one hard coding question, several aptitude questions, and CS fundamentals questions. There were also two situation-based questions. The total time allotted was 2 hours and 15 minutes.

Second Round: Technical Interview

This was a technical interview where I first introduced myself and discussed my projects in detail. Following that, the interviewer asked a specific coding question related to array rotations and finding maximum elements.

Third Round: Technical Interview

The third round was another technical interview packed with various questions. I was asked a probability question, a classic hat puzzle, another coding problem involving minimizing array sum through operations, and a logic puzzle about finding a heavier ball using a balance scale, which was extended to a larger number of balls.

Verdict

I was ultimately rejected. I believe this was due to not fully solving the coding question in the third round and failing to provide the correct answer for the extended heavier ball puzzle with 26 balls.

Interview Questions (5)

Q1
Find Max Element Index After Rotations
Data Structures & Algorithms

I am given an array arr[] and another array rotate[] I have to return another array whose index i stores the index of the position of the maximum element of the arr after it is left rotated rotate[i] number of times.

Q2
Probability of Exactly 2 Heads
Other

What is the probability of getting exactly 2 heads if 5 unbiased coins are tossed simultaneously.

Q3
Hat Puzzle (Staircase)
Other

There is a staircase at which 4 people are standing say 1 2 3 4 all are facing in such a way that they are moving downstairs and are in the order 1 2 3 4 (4 at the top). Now, there is a thief who has a gun and is pointing towards them and is sideways. So, they cannot see the thief and also they can only see the persons who are in front of them (they can not move their heads or mutter anything among them). The thief asked them a question and said if they will solve it he will let them free otherwise kill all of them. Assume there is a virtual wall between 3 and 4 so that 4 can not see any of the persons in front of him. The thief had 2 green and 2 red hats. He placed one hat on top of every person and asked if anyone of them can answer correctly about which colour hat they are wearing. Note that if any of them gives a wrong answer the thief will kill all of them.

Q4
Minimize Array Sum by Halving Elements K Times
Data Structures & Algorithms

I was given an arr and I have to perform max k operations and return the minimum value of sum of the array elements possible. In each operation you can select any element of the arr and replace it with the ceil value when divided by 2. Constraints:

  1. 1 <= arr.length <= 10^5
  2. 1 <= arr[i] <= 10^4
  3. 0 <= k <= 10^7

Q5
Heavier Ball Puzzle (Balance Scale)
Other

I am given 8 identical balls. One of them is defective and is heavier than others. You have a balance. Everytime you use the balance it costs 1 coin. What is the minimum cost to figure out which among the 8 is the heavier ball. (I answered it then the interviewer asked me to calculate the value for 26 balls).

Goldman Sachs | Associate(SDE) - Entry Level | Bangalore | April 2020 [REJECT]
goldman sachs logo
Goldman Sachs
associate(sde) - entry levelbangalore1.6 yearsRejected
June 6, 202022 reads

Summary

I was interviewed for an Associate (SDE) position at Goldman Sachs in Bangalore. After clearing an online assessment, I went through a Coder Pad round and two virtual interview rounds, tackling various LeetCode-style questions. Despite feeling confident in my performance, I was ultimately rejected.

Full Experience

A recruiter reached out to me on LinkedIn, and after clearing the Online Assessment, my interview was scheduled within a week.

Coder Pad Round (1 hour)

This round felt easy as I had practiced similar questions before. For those unfamiliar, a Coder Pad round involves live coding on an online editor/compiler, where you can modify test cases, compile, and run your code. The pressure can be quite high, especially when your code doesn't work on the first attempt. I was asked two medium LeetCode questions, which I believe can be found in the company tag links online.

After successfully clearing the first round, two back-to-back virtual interview rounds were scheduled a week later. They provided ample time to prepare for the subsequent rounds after each previous one.

Virtual Interview Round 1 (45 mins)

I faced two interviewers in this round. After a brief introduction about myself, they proceeded to ask the following questions:

Virtual Interview Round 2 (45 mins)

Again, there were two interviewers. Following a thorough discussion about my projects, they began asking coding questions:
  • Given an unsorted array, arrange the elements in such a way that the elements at odd index should be less than the adjacent elements at even index.
  • Given a sorted array and a number k, find out how many max elements we can create by distributing this value of k.

I felt my interviews went quite well. I answered all the questions with optimal complexity and logic. I was even approached for a fourth round, but unfortunately, it never happened as I was rejected before that, and they didn't provide a proper explanation for the decision.

Interview Questions (4)

Q1
Linked List Cycle
Data Structures & AlgorithmsEasy

Given head, the head of a linked list, determine if the linked list has a cycle in it.
There is a cycle in a linked list if there is some node in the list that can be reached again by continuously following the next pointers. Internally, pos is used to denote the index of the node that tail's next pointer is connected to. Note that pos is not passed as a parameter.
Return true if there is a cycle in the linked list. Otherwise, return false.

Q2
Increasing Subsequences
Data Structures & AlgorithmsMedium

Given an integer array nums, return all the different possible increasing subsequences of the given array with at least two elements. You may return the answer in any order.
The given array may contain duplicates, and two equal integers should also be considered an increasing subsequence.

Q3
Arrange Array: Odd Index Less Than Even Index
Data Structures & Algorithms

Given an unsorted array, arrange the elements in such a way that the elements at odd index should be less than the adjacent elements at even index.

Q4
Max Elements from Sorted Array with K
Data Structures & Algorithms

Given a sorted array and a number k, find out how many max elements we can create by distributing this value of k.

Preparation Tips

I prepared by solving quality questions and focusing on finding optimal time complexity solutions, especially for problems commonly asked by Goldman Sachs. Having prior experience with similar problems helped me perform well in the coding rounds. My advice for others is to get all possible time complexities in mind while processing an approach, as that will significantly help.

Goldman Sachs | Data Analyst | Interview Experience | Dec 2020 [Offer]
goldman sachs logo
Goldman Sachs
Data AnalystOffer
December 16, 201918 reads

Summary

I successfully interviewed for the Data Analyst role at Goldman Sachs in December 2020, ultimately receiving an offer after three comprehensive rounds that covered my projects, data structures and algorithms, and system design.

Full Experience

Round 1: Technical Discussion - Projects

The first round kicked off with a standard 'Tell me about yourself' and discussions around my resume, specifically addressing my lack of internships. I confidently highlighted my 'mini-torrent' and 'wikipedia search engine' projects. We dove deep into 'mini-torrent', where I explained its step-by-step construction, architectural details like handling slow trackers (active/passive mode with two trackers), and hash calculation using SHA1 for both chunks and complete files.

Next, we moved to my 'wikipedia search engine'. The interviewer presented a scenario: how to manage repeated search requests served by multiple random servers. I proposed a caching approach and was asked to detail its implementation with appropriate data structures and optimizations, specifically explaining LRU with memory considerations. I felt confident in my explanations throughout this round.

Round 2: Competitive Programming - Data Structures & Algorithms

This round was purely focused on competitive programming. After a brief 'tell me about yourself', I was given my first problem:

  1. Find Duplicate in Array (N+1 size, 1 to N values): Given an array of n+1 size, with values from 1 to n (inclusive), where some values are repeated, find any one repeated value. I discussed various approaches, but the interviewer was pushing for the optimal solution using the slow and fast pointer technique, which I initially struggled to articulate.
  2. Minimum Rating in Streaming Data (Top N/3): The second scenario involved a website with a rating system where ratings arrive in a streaming fashion and can be very large. The goal was to display only the top N/3 ratings and identify the minimum rating among those displayed at any point in time. My initial thoughts drifted to a max heap, then a vector, but after a hint from the interviewer to consider heap data structures, I correctly pivoted to a min-heap and proposed an efficient solution.

For every competitive programming question, I was required to write code.

Round 3: System Design & Conceptual

The final round started with a light-hearted question about my interview experience. I again brought up my 'mini-torrent' project, but seeing the interviewer's lack of interest, I switched to my 'wikipedia search engine', which immediately piqued his interest. During my explanation, he interrupted with two scenario-based questions related to its architecture:

  1. Handling Natural Language Phrases in Search Engine: The interviewer asked how my search engine would handle natural language processing data. After some clarification, as he himself struggled to explain NLP, I understood he wanted to know how to search for corresponding or related documents when a user provides a phrase as input. I successfully explained my solution.
  2. Distributed Inverted Indexing with K-way Merge: Given a very large dataset across multiple servers, with the ability to perform K-way merge, I was asked to propose a solution for building an inverted index. I suggested implementing K-way merge sort on individual data segments on each server, followed by merging all sorted data from all servers to build the inverted index, which is a standard approach.
  3. Autocomplete Suggestion (Next Word Prediction): The last question was about implementing an autocomplete feature: if a user types 'Goldman', how would my system suggest 'Sachs' as the next word? I provided a solution, acknowledging it might not be the most optimal but served as a valid starting point.

I concluded the round by declining the offer to ask any further questions, as my doubts were already cleared in previous rounds.

Interview Questions (5)

Q1
Find Duplicate in Array (N+1 size, 1 to N values)
Data Structures & AlgorithmsMedium

Given an array of n+1 size, starting index is from 1 and given values from 1 to n only. Some values can be repeated so give me any one value which is repeated.

Q2
Minimum Rating in Streaming Data (Top N/3)
Data Structures & AlgorithmsMedium

You have a rating system on your website where ratings can be in any range, potentially very large. Ratings are coming in streaming mode, and you want to show only N/3 ratings on your website. Determine the minimum rating displayed on the website at any point in time.

Q3
Handling Natural Language Phrases in Search Engine
System Design

If a user provides natural language processing data (i.e., input in a phrase) in your search engine, how would you give relevant results to them? The interviewer was specifically asking how to search for corresponding or related documents when the user input is a natural language phrase.

Q4
Distributed Inverted Indexing with K-way Merge
System Design

Given a very large dataset, and assuming you have two or more servers where you can perform a K-way merge operation to consolidate all data onto a single server, describe your solution to build an inverted index.

Q5
Autocomplete Suggestion (Next Word Prediction)
System Design

If a user has typed 'Goldman', how would you design a system to suggest 'Sachs' as the next word?

Have a Goldman Sachs Interview Experience to Share?

Help other candidates by sharing your interview experience. Your insights could make the difference for someone preparing for their dream job at Goldman Sachs.