Goldman Sachs Interview Questions

Here are the top 50 Goldman Sachs interview questions if you wish to make a career at Goldman Sachs. Yes! MindMajix content team has curated these Goldman Sachs interview questions and answers from various computer fundamentals and programming languages. This blog also packs the Goldman Sachs interview process, tips to crack interviews, and FAQS. Once you learn all these Goldman Sachs interview questions and answers thoroughly, cracking your Goldman Sachs interview will no longer be a big deal.

Goldman Sachs is one of the most famous American investment companies. Being a pioneer in the investment sector, Goldman Sachs is spread across major cities across the globe. The company offers its clients various financing, investing, and advisory solutions. This company is named one of the ‘best companies to work’ for employees because of its high compensation schemes and business principles.

If you want to make a career at Goldman Sachs, you must go through various interview rounds before nailing a job. MindMajix offers this blog to help aspirants. This blog details the multiple rounds of the interview process in addition to the top 50 Goldman Sachs interview questions and answers.

Goldman Sachs Interview Questions - Table of Content

Top 10 Frequently Asked Goldman Sachs Interview Questions

  1. What do you mean by type conversion in Python?
  2. How can we copy objects in Python?
  3. What do you mean by garbage collection in Java?
  4. Explain the internal architecture of the JVM. 
  5. List a few advantages of external JavaScript.
  6. Differentiate the ‘let’ and the ‘var’ keyword.
  7. Consider Java defines a string class to define an array of elements.
  8. How will you empty the given array?
  9. What is precisely financial modeling?
  10. Distinguish free cash flow and Cash flow.

Goldman Sachs Interview Process

You must go through three interview process rounds at Goldman Sachs. It includes an online assessment test, technical interview, and HR interview.

Let’s have a look at the rounds one by one in detail.

1. Online Assessment Test

This test contains questions from different sections:

Quantitative Aptitude Section: You must answer quantitative questions to prove your numerical reasoning and computational ability. The questions will cover the topics such as profit and loss, ratios, averages, probability, etc.

  • Verbal Section: This section will contain questions to test your comprehension ability. You will be asked to correct sentences, fill in the blanks, etc.
  • Reasoning Section: This section will include questions to test your diagrammatic and logical reasoning. Also, it will have questions about data arrangements, algorithms, data interpretation, and so on.
  • Technical Section: This section will have questions about computer programming and fundamentals. This section will mainly include questions from data types, operating systems, data structures, DBMS, abstract classes, interfaces, OOPs concepts, etc.

Once the online assessment is over, you will get the results within three week

2. Technical Interview

You must go through at least two rounds of face-to-face technical interviews. But, the number of rounds will be incremented based on your performance on the initial rounds. You must be thorough in technical topics such as data structures, operating systems, algorithms, computer networks, database management systems, etc.

Moreover, you must be familiar with programming languages such as C++, JavaScript, Java7, Java8, Python2, Scala, or Python3. You must answer questions about your previous projects, interns, and work experiences. Simply put, much technical stuff will be discussed in these rounds.

3. HR Interview

In this round, you will be mostly shot with behavioral questions. Interviewers will try to understand your attitude and curiosity about new trends. The interviewers will test your personality traits and evaluate your strengths from all angles. Besides, you might be asked questions regarding your willingness to relocate, your goals, your reason for interest in getting a job at Goldman Sachs, and more

Goldman Sachs Technical Interview Questions and Answers

Goldman Sachs Python Interview Questions

1. Mention the critical features of Python.

Following is a list of critical features of Python.

  • It is an interpreted language.
  • It follows OOPs concepts.
  • It is a dynamically-typed language.
  • It is open-source software.
  • It is easy to write codes in Python
  • It is highly portable
  • It comes with a volume of libraries

2. What is the use of the zip ( ) function?

The zip ( ) function returns an iterator by aggregating two or more iterables. The iterables are typically taken as arguments in the zip ( ) function. It is essential to note that the resulting iterator helps to create dictionaries.

3. What do you mean by type conversion in Python?

Implicit type conversion and explicit type conversion are the two types of type conversion. Type conversion is the process of converting an object data type into another data type.

The Python interpreter performs the implicit type conversion automatically. When it comes to explicit conversion, the conversion is done with the help of predefined functions.Explicit conversion is also known as typecasting.

If you want to enrich your career and become a professional then enroll in "Business Analyst Training". This course will help you to achieve excellence in this domain.

4. List the applications of Python.

Jotted down are the critical areas where we use Python widely.

  • High-level web, gaming, and software development
  • Data Science
  • Artificial intelligence and machine learning
  • Web scraping applications
  • CAD and embedded applications
  • Desktop GUIs
  • Audio and video applications
  • Scientific and numeric computing
  • Business applications

[Related Article: Artificial Intelligence vs Machine Learning]

5. How will you generate random numbers in Python?

We use the random module to generate random numbers. 

The below graphic shows the other random generators used for generating random numbers.

random numbers in Python

6. Differentiate Split ( ), Subn ( ), and Sub ( ) methods of the ‘re’ module in Python.

The ‘re’ module of Python provides three methods to modify strings. The methods are listed as follows:

  • Split ( ) method
  • Subn ( ) method
  • Sub ( ) method

We use the ‘split ( )’ method to split a given string into a list based on the regex pattern matches.

We use the ‘subn ( )' method to replace all the matching substrings with a regex pattern. It also returns a new string denoting the number of replacements done.

We use the ‘sub ( )’ method to find the strings that match the regex pattern. The matched strings are usually replaced with different strings.

7. How will you add elements into an array in Python?

We can add elements to an array using the following three methods.

  • append ( ) method: This method adds an element at the end of an array.
  • insert ( ) method: This method inserts an element before the given index of an array.
  • extend ( ) method: This method adds an iterable or a list at the end of an array.

8. How can we copy objects in Python?

In Python, we use the '= 'operator for creating copies of objects. The main thing is that this operator doesn't make any new object, but it creates a new variable.

It is possible to create copies using copy module in Python. There are two ways to make copies using the copy module, as listed below.

  • Deep Copy: It creates new objects. And it recursively adds copies of nested objects present in the actual elements.
  • Shallow Copy: It also creates a new object. This object stores the reference of the actual elements. Besides, it doesn't make copies of nested objects.

9. Create Python code for the Fibonacci series using recursion.


 Python code


 Python code result

10. Write a Python program a reverse a string.


 Python program


 Python program result

Goldman Sachs Java Interview Questions

11. Briefly describe the hashCode ( ) method in Java.

We use the hashCode ( ) method to assign unique values to objects. This particular value is known as the hash code value. It is created by the JVM when creating Java objects. A hash code value is typically an integer and has a four-byte length. Note that a hash value doesn’t change until the respective object change.

The hash values help to store the objects in Java collections such as HashMap, HashSet, and HashTable.

12. What do you mean by the final keyword in Java?

The final keyword in Java may be a method, class, or variable. In its basic form, it is a non-access modifier. We can prevent users from changing a method, variable, or class with the final keyword.

For instance, once we declare a variable as a final variable, no one can change that variable. It means that we cannot reinitialize a final variable with another value. Similarly, we cannot override a method if we declare the method as a final method. Besides, we cannot extend a class if we declare a class as a final class.

MindMajix Youtube Channel

13. What do you mean by garbage collection in Java?

Garbage collection is Java's automatic memory management, which helps replace unused objects automatically. Every time the JVM runs, it generates a heap of objects in which many of the objects will no longer be required. Java's garbage collector deletes all these unused objects, frees up the memory, and optimizes the performance.

14. What is the significance of static classes in Java?

A static class is essentially a nested class. But it doesn’t require the reference of outer classes. A static class can only access the static members of its outer class. Besides, we can create a static nested class without creating the instance of its outer class.

Moreover, a static class can have many static classes. We can create many static blocks as well as methods inside a static class.

The syntax of a static class is given below:

 static class

15. What is the need to use a collection framework in Java?

The collection framework provides many benefits to programmers. Here are some of them.

  • It provides a consistent API
  • It increases execution speed
  • It enhances code quality
  • It simplifies programming.

16. Differentiate StringBuilder and StringBuffer classes in Java.

StringBuilder ClassStringBuffer Class
It is not synchronized. So many threads can call this class at a time.It is synchronized, so many threads cannot call this class simultaneously.
It is not thread-safe.As it is synchronized, it is thread-safe.
It is faster than StringBuffer classes. This is because there is no preliminary checks are done for multiple threads.It is slower than StringBuilder classes.

17. Explain the internal architecture of the JVM.

The JVM refers to Java Virtual Machine with which we can run Java applications. Essentially, JVM is a runtime engine as well as a Java Runtime Environment (JRE) component.

architecture of the JVM

The JVM has three main parts: ClassLoader, memory, and the execution engine. Here, the execution engine plays a key role. This is because the engine collects data from memory devices, scans code line by line, and lastly executes the codes.

18. Why char [ ] is preferred over string for handling passwords or sensitive data?

Below are the reasons why we prefer a char array over a string.

  • Strings are essentially immutable. So we cannot overwrite a password. Instead, we need to create a new password. On the other hand, the char array allows overwriting.
  • There are many chances that passwords could be printed on logs or in insecure locations, unknowingly. But the char array avoids this sort of incident.

19. How does exception propagation occur in Java?

It occurs when an exception is thrown from the top of the stack. If the exception is missed, then the exception is thrown from the preceding call stack. If this exception is also missed, it further goes down to the call stack. This process continues until any one of the exceptions is caught or the lowest call in the stack is reached

20. Create a Java code to count unique rectangles in N*N Chessboard.


Java code


Java code result

Goldman Sachs JavaScript Interview Questions

21. What is hoisting in JavaScript?

It is a process that moves all the declared classes, variables, and functions to the top of the current scope before executing them. It doesn’t matter where the classes, variables, and functions are declared but invariably moved to the top of the scope. Note that the scope can be a global or local one.

The main thing about hoisting is that it allows calling functions before writing them in JavaScript programs. JavaScript hoists only declarations. So it doesn’t hoist initializations.

[Related Article: JavaScript Interview Questions]

22. What do you mean by an immediately invoked function in JavaScript?

This function is also known as IIFE. It is executed soon after it is defined. In other words, a function runs only when it is invoked. Otherwise, the function declaration is returned.

23. What do you understand by self-invoking function?

A self-invoking function is initiated or invoked automatically without making any request. It is invoked soon after it is defined. If a function is followed by ( ), it will be executed automatically. It is essential to note that we cannot self-invoke a function declaration.

A self-invoking function is also known as a self-executing function. It supports initializing tasks without creating global variables. Also, it is an unknown or anonymous function.

24. List a few advantages of external JavaScript.

External JavaScript is a file written separately. These files will typically come up with the .js extension.

Some of the crucial advantages of external JavaScript are listed below.

  • It allows developers to work with HTML along with JS files smoothly
  • It provides enhanced code readability.
  • It allows reusing codes.

25. Briefly describe closures in JavaScript.

In closures, an inner function has any time access to the variables of its outer function. Accessing the variables can be done even after the outer function has returned.

The main thing about closures is that the inner function doesn’t keep a copy of the outer function's variables. But at the same time, it references the outer variables. Note that closure is applicable in multiple levels of inner functions.

26. Compare Server-side JavaScript and Client-side JavaScript.

Server-side JavaScriptClient-side JavaScript
It makes server communication during execution.It doesn’t make server communication.
It runs on remote machines.It runs on local machines.
It is used in the backend.It is used in the front end.
It is slower than client-side JavaScript.It is faster than server-side JavaScript.
Python, PHP, and Java are some examples of this type.CSS, HTML, and JavaScript are some examples of this type.

27. Differentiate the ‘let’ and the ‘var’ keyword.

‘Let’ KeywordVar’ Keyword
Variables defined with this keyword have a block scope.Variables defined with this keyword have function scope.
It is not allowed with this keyword.Hoisting is permitted with this keyword.
It is a feature of ES6.It is a feature of ECMAScript1.
We can declare a variable only once.We can declare a variable more than once.
Variables declared with this keyword cannot be re-declared but can be updatedVariables declared with this keyword can be re-declared. Also, they can be updated in the same scope.

28. Why is JavaScript known as a dynamically typed language?

The type of a variable is checked only at the run time. Not just that, we can even create new variables at the run time. That’s why we name JavaScript as the dynamically typed language.

29. How exec ( ) method is different from the test ( ) method?

The exec method will return the specified match if it exists. Otherwise, it will produce a NULL value.

On the other hand, the test ( ) method returns a Boolean value. The method returns ‘true’ if the specified match exists. If not, the method will return ‘false’.

30. Write a program to find the first non-repeating element in an array


element in an array


element in an array result

Goldman Sachs Coderpad Interview Questions

31. Consider the below Java code. It includes a static variable, a class, and a public method. Calculate the number of bites taken for each apple.


Java code apple


Java code apple result

32. Consider Java defines a string class to define an array of elements. Take the below Java code. Is it possible to change a string in the compile time once it is created?


string class


No. It is not possible to change a string once it is initialized. This is because the string is immutable. However, if we need to change a string, we need to recreate the string.

33. Consider the below Python code. The program work as expected but is slow. Can you make modifications in the code so that it executes faster? Note that you shouldn’t change the statistical distribution.


Python code

34. Take the below question and answer it.


Boolean code


35. Take the below Java code and answer it.


below Java code

36. Consider the below code. It may seem like a quick sort algorithm. But, it is not quick sort. Can you identify the right one?


quick sort algorithm

37. Consider the below code. Assume what would be the output of the code.


output of the code


The output will be [ ] since the given array has no tenth value.

38. What will be the result of the following code?


code var words



39. How will you empty the given array?


empty the given array


empty the given array code


empty the given array result

40. How will you create duplicates for the given array?


create duplicates


create duplicates code

Goldman Sachs financial analyst Interview Questions

41. What is precisely financial modeling?

We make financial modeling to estimate the valuation of a business. It is the numerical representation of a company's operations. Not only that, we can compare the performance of companies using their financial models effectively. As a whole, financial modeling simplifies the decision-making process of companies.

42. List the evaluation metrics you can use to analyze a company's stock.

We can use the following evaluation metrics to analyze a company’s stock.

evaluation metrics

  • Price-to-Earnings ratio (P/E Ratio): This value helps investors estimate the market value of a company's stock compared to the company’s earnings.
  • The Debt-to-Equity ratio (D/E ratio): This value allows investors to see how a company finances its assets.
  • Price-to-Book ratio (P/B ratio): This value helps to know how a company's stock is valued by comparing it with the net worth of the company.
  • Price-to-Growth (PEG) ratio: It is similar to the P/E ratio but takes ‘earnings growth’ into account for calculating the PEG value.

43. What do you mean by expense model?

Mainly, this budget is presented simply and understandably. It is a sophisticated budget that includes all fixed as well as variable costs. Moreover, it provides an accurate forecast of profit or loss.

44. What do you understand by adjusting journal entries?

It is an entry made in the general ledger of a company. It usually occurs at the end of the accounting period. The entry can be an unrecognized income or expense made during that period.

Some transactions may start at one accounting period and end at another. That's why we use adjusting journal entries to record the overlapping transactions correctly. Further, we can use this type of entry to correct the mistakes made in the earlier accounting period.

45. Define Capital Structure.

A capital structure is a specific combination of debt as well as equity of a company. It is a way of allocating funds to all operations as well as the growth of a company. It clearly indicates the financial riskiness of a company.

46. Compare the balance sheet and P&L statement.

Balance SheetP&L Statement
It shows liabilities, assets, and shareholder equity at a point in time.It summarizes company costs, revenues, and expenses for a while.
It is beneficial for investors to estimate the financial health of a company.It is helpful for accountants to monitor and assess the accuracy of transactions.
We prepare this sheet after preparing the PL statement.We prepare this statement before creating a balance sheet.

47. What is precisely NPV, and why do we use it?

NPV stands for Net Present Value. This formula is used explicitly in investment banking. NPV value helps to estimate whether an investment is worth it throughout its lifetime. In other words, this value helps to assess whether an investment will yield profit in the long run. If the NPV value of an investment is positive, then its rate of return will undoubtedly be higher than the discount rate.

By calculating the NPV, companies can strongly decide on their capital allocation. Besides, calculating the NPV allows them to make concrete decisions on investments.

48. Distinguish free cash flow and Cash flow.

Free cash flowCash flow
It is the difference between capital expenditure and operating cash flows.It is the sum of investing, operating,  and financing cash flows
It is the cash left over after a company pays all its operating expenses as well as capital expenditures.It indicates the net cash in addition to cash equivalents being transferred.
It indicates the ability of a company to generate cash despite all its expenses in addition to investmentsPositive cash flow shows that a company's liquid assets are rising positively
We can assess the financial health of a company with free cash flow.We can assess the liquidity of a company with cash flow.

49. When does a purchase become capitalized rather than expenses?

When the cost spent for purchase is consumed or expires in a year or within a year, then it is known as an expense. Conversely, if the cost spent for a purchase will make an economic value beyond a year, it is labeled as capitalized.

To put it simply, the costs that provide long-lasting benefits are capitalized. But the costs that provide short-term benefits are expensed.

50. Why do we calculate the asset turnover ratio?

We calculate the asset turnover ratio to determine how well a company utilizes all its resources to generate income. In other words, the high asset turnover ratio indicates that the company's assets are effectively used.

Investors carefully look at the asset turnover ratio of a company to decide whether to invest in the company.

Goldman Sachs Leadership Principles

Below are the key leadership principles of Goldman Sachs. Please go through the principles which will help you ace the interview in the best manner possible.

1. Encouraging Collaboration

The leadership fosters collaboration at all levels - Whether at the employees' or clients' levels doesn't matter. They embrace collaboration to drive excellence in business operations. As a part of it, they have built an inclusive environment to work inside and outside the company.

2. Insisting Effective Communication

Goldman Sachs always focuses on precise and accurate communication among employees and clients to avoid confusion. The company strictly ensures that communications are made through proper channels like company voice mail, email, etc., and no other private communication channels, like WeChat, WhatsApp, etc., are allowed.

3. Preventing Discrimination

The leaders of Goldman Sachs ensure a safe and conducive environment for all employees and clients, regardless of race, ethnicity, and religion. They ensure everyone is equally treated and prevent harassment or discrimination – on or off campuses.

4. Ensuring Diversity

Goldman Sachs leadership encourages a diverse workforce, including employees from various cultures, backgrounds, and experiences.

Goldman Sachs FAQs

1. Why are you interested in Goldman Sachs?

At Goldman Sachs, we can find many opportunities to learn and grow. This is because the company offers robust finance solutions to various sectors in a wonderful way. The business principles are great at Goldman Sachs.

2. How should I prepare for Goldman Sachs interviews?

It would help if you prepared quantitative aptitude questions, including reasoning, pictorial, and verbal abilities. You must be an expert in any one of the modern programming languages. At the same time, you must be familiar with other programming languages.

3. How many interview rounds must I go through at Goldman Sachs?

There are totally three rounds that you have to go through at Goldman Sachs.

4. In which way can I crack the Goldman Sachs interview?

If you go through the Goldman Sachs interview questions and answers along with the interview tips that we provided in the blog, you will ace the interview easily. Additionally, equip yourself with programming in popular languages. MindMajix blog page to learn about modern programming languages.

5. Is the Goldman Sachs interview tough to crack?

The degree of toughness depends on the degree of preparation. If you prepare well, the interview is going to be easy. Conversely, it will undoubtedly be challenging if you don't prepare well.

Tips to clear the Goldman Sachs interview

Following are the tips that will be extremely helpful to clear your Goldman Sachs interview.

Tip #1: Research Goldman Sachs

Before attending the interview, you must complete research about Goldman Sachs. Since this company has been in the finance industry since the 19th century, you must conduct in-depth research about its vision, principles, core values, clients, achievements, organization structure, work culture, business journey, technology use, and many others.

Tip #2: Be accurate with your Resume

Professionally build your resume, including all your qualifications, technical background, certifications, skills, expertise, etc. Add facts and figures to impress your interviewers. Be honest in the information provided in the resume. Briskly answer all the questions that arise from your resume information.

Tip #3: Do a Personal Review

Analyze your strengths and weaknesses and list them carefully. Identify your strengths that are relevant to the job role. Plan how to exhibit your strengths during the interview. For example, if you have good leadership skills, you can brief your experiences to interviewers as to how you led a team or group effectively. Similarly, identify the methods to convert your weaknesses into strengths. For example, determine the resources for improving your mathematics ability if you struggle with mathematics.

Tip #4: Practice Coding

The technical rounds of the Goldman Sachs interview deal with algorithms and coding. So you must thoroughly code in modern languages and write codes quickly. Simply put, you must elevate yourself from a beginner to a confident coder.


 Well! We hope this blog helped prepare you for the Goldman Sachs interview. The top 40 Goldman Sachs interview questions and answers, Interview process, interview tips, and FAQs might have helped to understand the interview process and prepare yourself thoroughly. However, prepare more to attend the interview with confidence. You can join "Business Analyst Training" and get certification in modern programming languages like Python, C++, Java, etc. Eventually, it will help to nail your Goldman Sachs interview effortlessly.

Course Schedule
Business Analyst TrainingJul 27 to Aug 11View Details
Business Analyst TrainingJul 30 to Aug 14View Details
Business Analyst TrainingAug 03 to Aug 18View Details
Business Analyst TrainingAug 06 to Aug 21View Details
Last updated: 15 Jun 2023
About Author


Madhuri is a Senior Content Creator at MindMajix. She has written about a range of different topics on various technologies, which include, Splunk, Tensorflow, Selenium, and CEH. She spends most of her time researching on technology, and startups. Connect with her via LinkedIn and Twitter .

read less